1. 06 Jan, 2021 1 commit
  2. 05 Jan, 2021 1 commit
    • Nathaniel Wesley Filardo's avatar
      First round of MQTT fixes (#3360) · c695a451
      Nathaniel Wesley Filardo authored
      * mqtt: remove concept of connection timeout
      
      Just rely on the network stack to tell us when things have gone south.
      
      * mqtt: remove write-only mqtt_state.port field
      
      * mqtt: drop useless conditional
      
      * mqtt: decouple message sent flag from timer
      
      * mqtt: reconnect callback does not need to hang up
      
      The network stack has certainly done that for us at this point.
      Similarly, since we're about to call mqtt_socket_disconnected, don't
      bother unregistering the timer here, either.
      
      * mqtt: don't tick once per second
      
      Set the timer for the duration of the wait and cancel it on the other side.
      
      * mqtt: defer message queue destruction to _disconnect
      
      We're going to want to publish a disconnect message for real, so doing
      this in _close does no one any favors
      
      * mqtt: miscellaneous cleanups
      
      No functional change intended
      
      * mqtt: close() should send disconnect message for real
      
      This means waiting for _sent() to fire again before telling the network
      stack to disconnect.
      
      * mqtt: tidy connect and dns
      
      - Push the self-ref to after all allocations and error returns
      
      - Don't try to extract IPv4 from the domain string ourselves, let the
        resolver, since it can
      
      - Don't try to connect to localhost.  That can't possibly work.
      
      * mqtt: common up some callback invocations
      
      * mqtt: don't retransmit messages on timeout
      
      There's no point in retransmitting messages on timeout; the network
      stack will be trying to do it for us anyway.
      
      * mqtt: remove unnecessary NULL udata checks
      
      * mqtt: hold strings in Lua, not C
      
      Eliminates a host of C-side allocations.
      
      While here, move the rest of the mqtt_connect_info structure out to its
      own thing, and pack some flags using a bitfield.
      
      * mqtt: mqtt_socket_on use lua_checkoption
      
      * mqtt: slightly augment debug messages
      
      These changes have made some debugging ever so slightly easier.
      c695a451
  3. 29 Dec, 2020 1 commit
  4. 27 Dec, 2020 1 commit
  5. 16 Dec, 2020 1 commit
  6. 25 Nov, 2020 1 commit
  7. 07 Nov, 2020 8 commits
  8. 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
  9. 18 Oct, 2020 1 commit
  10. 05 Oct, 2020 1 commit
  11. 04 Oct, 2020 1 commit
  12. 28 Sep, 2020 1 commit
  13. 18 Sep, 2020 2 commits
  14. 15 Sep, 2020 1 commit
  15. 05 Sep, 2020 1 commit
  16. 04 Sep, 2020 1 commit
    • 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. 29 Aug, 2020 2 commits
  18. 22 Aug, 2020 2 commits
  19. 08 Aug, 2020 1 commit
  20. 10 Jun, 2020 2 commits
  21. 09 Jun, 2020 9 commits
    • Gregor Hartmann's avatar
      Deprecate RC module (#3137) · 7c53cc76
      Gregor Hartmann authored
      7c53cc76
    • Nathaniel Wesley Filardo's avatar
      a04b085d
    • Lukáš Voborský's avatar
      net_info module - ping function (#2854) · 7a77d764
      Lukáš Voborský authored
      * Net_info module exposing ping function initial commit
      * Ping as a part of net module
      * Sent callback implemented
      * Add NET_PING_ENABLE macro
      
      Authored-by: vsky <blue205@centrum.cz> with support from TerryE
      7a77d764
    • Terry Ellison's avatar
      Squashed updates do get Lua51 and Lua53 working (#3075) · bbeb09b6
      Terry Ellison authored
      -  Lots of minor but nasty bugfixes to get all tests to run clean
      -  core lua and test suite fixes to allow luac -F to run cleanly against test suite
      -  next tranch to get LFS working
      -  luac.cross -a options plus fixes from feedback
      -  UART fixes and lua.c merge
      -  commit of wip prior to rebaselining against current dev
      -  more tweaks
      bbeb09b6
    • Gregor Hartmann's avatar
    • Nathaniel Wesley Filardo's avatar
      net.dns: don't calloc a single int · efa786da
      Nathaniel Wesley Filardo authored
      Removes yet another unchecked allocation point in our C libraries.
      
      While here, fix potential reference leaks on error paths
      
      Also while here, remove some stale documentation.  There can be as many
      DNS requests in flight as LwIP has room for in its table
      (DNS_TABLE_SIZE, which defaults to 4).
      efa786da
    • Nathaniel Wesley Filardo's avatar
      file: raise error on .on() with non-function/nil · a7f85644
      Nathaniel Wesley Filardo authored
      Seems more polite than quietly accepting other types as nil.
      a7f85644
    • Nathaniel Wesley Filardo's avatar
      Networking rampage and accumulated fixes (#3060) · af426d03
      Nathaniel Wesley Filardo authored
      * espconn: remove unused espconn code, take 1
      
      This is the easiest part of https://github.com/nodemcu/nodemcu-firmware/issues/3004 .
      It removes a bunch of functions that were never called in our tree.
      
      * espconn: De-orbit espconn_gethostbyname
      
      Further work on https://github.com/nodemcu/nodemcu-firmware/issues/3004
      
      While here, remove `mqtt`'s charming DNS-retry logic (which is neither
      shared with nor duplicated in other modules) and update its :connect()
      return value behavior and documentation.
      
      * espconn: remove scary global pktinfo
      
      A write-only global!  How about that.
      
      * net: remove deprecated methods
      
      All the TLS stuff moved over there a long time ago, and
      net_createUDPSocket should just do what it says on the tin.
      
      * espconn_secure: remove ESPCONN_SERVER support
      
      We can barely function as a TLS client; being a TLS server seems like a
      real stretch.  This code was never called from Lua anyway.
      
      * espconn_secure: more code removal
      
      * espconn_secure: simplify ssl options structure
      
      There is nothing "ssl_packet" about this structure.  Get rid of the
      terrifying "pbuffer" pointer.
      
      Squash two structure types together and eliminate an unused field.
      
      * espconn_secure: refactor mbedtls_msg_info_load
      
      Split out espconn_mbedtls_parse, which we can use as part of our effort
      towards addressing https://github.com/nodemcu/nodemcu-firmware/issues/3032
      
      * espconn_secure: introduce TLS cert/key callbacks
      
      The new feature part of https://github.com/nodemcu/nodemcu-firmware/issues/3032
      Subsequent work will remove the old mechanism.
      
      * tls: add deprecation warnings
      
      * luacheck: net.ifinfo is a thing now
      
      * tls: remove use of espconn->reverse
      
      * mqtt: stop using espconn->reverse
      
      Instead, just place the espconn structure itself at the top of the user
      data.  This enlarges the structure somewhat but removes one more layer
      of dynamic heap usage and NULL checks.
      
      While here, simplify the code a bit.
      
      * mqtt: remove redundant pointer to connect_info
      
      Everywhere we have the mqtt_state_t we also have the lmqtt_userdata.
      
      * mqtt: doc fixes
      
      * mqtt: note bug
      
      * tls: allow :on(...,nil) to unregister a callback
      af426d03
    • Marcel Stör's avatar
      Fix connect() params in example · 8835512f
      Marcel Stör authored
      8835512f