1. 13 Nov, 2020 1 commit
  2. 23 Oct, 2020 3 commits
    • Nathaniel Wesley Filardo's avatar
      pipe: comment and style fixes (NFC) · 045fc80c
      Nathaniel Wesley Filardo authored
      Reflow comments to 80 columns; fix some typos and other nits.
      045fc80c
    • Nathaniel Wesley Filardo's avatar
      pipe: fix unread buffer chunk management · 962991ed
      Nathaniel Wesley Filardo authored
      unread contained two subtle bugs:
      
       - it created a buffer chunk at pipe[1], when that position is reserved
         for the pipe reader function.  Because it shifted pipe[i] to
         pipe[i+1], including pipe[1], this was likely to manifest as the pipe
         later attempting to dequeue a function rather than a buffer chunk
         user datum.  Solve this by adjusting the loop bounds and creation
         index.
      
       - when it created a new buffer chunk, it left that chunk's ->start and
         ->end fields at 0, but would then exit the loop to do the tail fill,
         which was in turn assuming the exit condition of the loop when an
         existing chunk had room, namely that data had been moved to the right
         and so ->start > l.  Solve this by making new chunks empty but with
         ->start = ->end = LUAL_BUFFERSIZE.  It may be slightly better to
         instead try to leave room at both ends if the buffer was empty prior
         to this unread.
      
      FIXES: https://github.com/nodemcu/nodemcu-firmware/issues/3155
      962991ed
    • Lukáš Voborský's avatar
      wiegand Lua 5.3 fix · 734b02a7
      Lukáš Voborský authored
      734b02a7
  3. 19 Oct, 2020 1 commit
    • Cody Cutrer's avatar
      add wiegand module (#3203) · 63e1fcda
      Cody Cutrer authored
      * add wiegand module
      
      * minor tweaks to wiegand module
      
       * fix a whitespace error (tabs!!!!)
       * remove an unnecessary volatile qualifier
      63e1fcda
  4. 18 Oct, 2020 2 commits
  5. 13 Oct, 2020 1 commit
  6. 05 Oct, 2020 1 commit
  7. 29 Sep, 2020 1 commit
  8. 28 Sep, 2020 1 commit
  9. 27 Sep, 2020 7 commits
  10. 18 Sep, 2020 2 commits
  11. 15 Sep, 2020 1 commit
  12. 13 Sep, 2020 1 commit
  13. 08 Sep, 2020 1 commit
  14. 07 Sep, 2020 2 commits
  15. 05 Sep, 2020 1 commit
  16. 04 Sep, 2020 2 commits
    • vsky's avatar
      Fixes `net.ifinfo` failure · e28cf8d9
      vsky authored
      e28cf8d9
    • galjonsfigur's avatar
      SoftUART module fixes and code simplification (#3104) · e7620b06
      galjonsfigur authored
      * SoftUART fixes:
      
      - Simplify code by using lua_L* functions and using userdata properly
      - Fix some edge-cases
      - Add more examples to documentation
      
      * Don't de-register interrupt hook if there is more RX instances
      
      * More bug fixes and registering simplification with luaL_reref and unref2
      
      * Correct documentation of SoftUART module
      e7620b06
  17. 01 Sep, 2020 1 commit
  18. 30 Aug, 2020 1 commit
  19. 29 Aug, 2020 2 commits
  20. 23 Aug, 2020 1 commit
  21. 22 Aug, 2020 1 commit
  22. 11 Aug, 2020 1 commit
    • Caleb Mingle's avatar
      mqtt: fix connfail callback · e547c2a0
      Caleb Mingle authored
      I've not been able to get the mqtt `connfail` callback to work.
      
      I'm consistently receiving `method not supported` errors:
      ```
      application.lua:53: method not supported
      stack traceback:
              [C]: in function 'on'
              application.lua:53: in main chunk
              [C]: in function 'dofile'
              init.lua:18: in function <init.lua:6>
      ```
      
      Example code:
      ```
      function on_connection_failed(client, reason)
          print("mqtt connection failed: " .. reason)
      end
      
      m:on("connfail", on_connection_failed)
      ```
      
      I believed this to be caused by the incorrect length comparison for `connfail`
      that is updated here.
      
      Once I changed that, the error went away, however the callback was never called.
      
      I believe the callback was never called because of an incorrect assignment.
      
      However, I saw this somewhat confusing description in the docs so this
      assignment may be expected?
      > The second (failure) callback aliases with the "connfail" callback available through :on(). (The "offline" callback is only called after an already established connection becomes closed. If the connect() call fails to establish a connection, the callback passed to :connect() is called and nothing else.)
      e547c2a0
  23. 08 Aug, 2020 1 commit
  24. 30 Jun, 2020 1 commit
    • Datong Sun's avatar
      Fixed an regression that MQTT client timer is disarmed prematurely when · 95f5191c
      Datong Sun authored
      connecting to server.
      
      Inside af426d03, the `mqtt_socket_timer`
      function was modified so that instead of checking the presense of
      allocated `mud->pesp_conn` structure, `mud->connected` field was used
      on determining if the timer need to be disarmed.
      
      However, this is not entirely correct. If the TCP socket is actively
      connecting and haven't timed out yet, then `mud->connected` is also
      `false` and the timer will think the connection is broken and
      disarms itself. This has two consequences:
      
      * The connection timeout counter is no longer decremented and checked
      * After connection succeeds, keepalive heartbeat is no longer being
        sent (#3166). This is particularly noticeable in MQTT over TLS
        connections, because those usually takes longer than 1 second
        to finish and the timer would had chance to execute before connection
        is established
      
      This commit checks the presense of `pesp_conn->proto.tcp` pointer
      instead, which was allocated in the same place as the (old) `pesp_conn`
      struct, and according to my test indeed fixes the above issue.
      95f5191c
  25. 20 Jun, 2020 1 commit
  26. 17 Jun, 2020 1 commit
  27. 16 Jun, 2020 1 commit