- 23 Aug, 2020 1 commit
-
-
Philip Gladstone authored
* Change struct to use integers. This is slightly more complex as we have to deal with Unsigned 32-bit integers (that aren't lua integers) * Use int64 in struct rather than double. * Fix sjson to do the right things in LUA5.3 with integers and floats
-
- 22 Aug, 2020 1 commit
-
-
Terry Ellison authored
-
- 11 Aug, 2020 1 commit
-
-
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.)
-
- 08 Aug, 2020 1 commit
-
-
Philip Gladstone authored
-
- 30 Jun, 2020 1 commit
-
-
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.
-
- 20 Jun, 2020 1 commit
-
-
Nathaniel Wesley Filardo authored
Otherwise we might truncate precision with small floats and that's unlikely to work out well for anyone.
-
- 17 Jun, 2020 1 commit
-
-
vsky authored
-
- 16 Jun, 2020 1 commit
-
-
Terry Ellison authored
-
- 12 Jun, 2020 1 commit
-
-
Firenox89 authored
-
- 10 Jun, 2020 2 commits
-
-
Nathaniel Wesley Filardo authored
It has long been superseded by the rfswitch module
-
Nathaniel Wesley Filardo authored
It's not clear that this ever worked, AFAICT nobody uses it, and it's an old version of the sqlite3 engine at this point. Absent a maintainer, let's just get rid of it.
-
- 09 Jun, 2020 29 commits
-
-
Gregor Hartmann authored
-
Nathaniel Wesley Filardo authored
-
Terry Ellison authored
-
Gregor Hartmann authored
Original sources by @anod221
-
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
-
ecrips authored
Correct typo in Lua export from updateDispla() to updateDisplay()
-
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
-
firenox89 authored
-
Gregor Hartmann authored
-
Andreas Müller authored
* BMP085 pressure sensor: fix temperature value data type the data type for t (U_T) should be long according to the BMP085 datasheet (rev. 1.2, section 3.5). values over 32767 can indeed occur, and in my case lead to a wrong value for the temperature (and consequently also pressure). note: this problem only occurs above a certain temperature (exact value depends on the calibration, but I assume somewhere around 26°C). * BMP085 pressure sensor: adapt data types and calculation this adapts the data types and calculation to be consistent with the datasheet (rev. 1.2, section 3.5). while I did not notice any issues, using the wrong data types could trigger edge cases.
-
Nathaniel Wesley Filardo authored
-
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).
-
Nathaniel Wesley Filardo authored
-
Nathaniel Wesley Filardo authored
-
Nathaniel Wesley Filardo authored
Seems more polite than quietly accepting other types as nil.
-
Nathaniel Wesley Filardo authored
-
Nathaniel Wesley Filardo authored
-
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
-
Nathaniel Wesley Filardo authored
* mqtt: expose "connfail" callback via :on() This makes it just like all the other callbacks in the module and is a revision of behavior called out in https://github.com/nodemcu/nodemcu-firmware/pull/2967 * mqtt: clarify when puback callback fires * mqtt: Don't reference stack buffers from the heap The confusingly-named "mqtt_connection_t" object is just a triple of - a serialized mqtt message pointer and length - a buffer pointer (to which the above can be written) - a message identifier The last of these must be passed around the mqtt state machine, but the first two are very local and the buffer is always sourced from the C stack. Unfortunately, because the entire structure is persisted in the heap, some callers assume that they can always use the structure without reinitialization (see mqtt_socket_close), which will trash the C stack. Sever the pairing between message id and local state, punt the local state entirely out of the heap, and rename things to be less confusing.
-
Nathaniel Wesley Filardo authored
Reserved words are always reserved in Lua, so let's not have people typing net["if"]...
-
galjonsfigur authored
-
Gregor Hartmann authored
-
M.K authored
-
Nikolay Fiykov authored
-
galjonsfigur authored
-
Lukáš Voborský authored
-
galjonsfigur authored
-
Nathaniel Wesley Filardo authored
* Remove app/include/netif/wlan_lwip_if.h This file appears to be unused in our tree. * New `net.if.info` call to show LwIP information This is a generalization of `wifi.sta`'s and `wifi.ap`'s `getip` and `getmac` calls. I don't propose to deprecate those, but perhaps we should, in the documentation, point users at this function instead. The direct motivation is to permit continued use of DHCP-provided NTP servers in a future where https://github.com/nodemcu/nodemcu-firmware/pull/2819 has landed, now that https://github.com/nodemcu/nodemcu-firmware/pull/2709 is in the tree. But rather than exposing just that information, a more general interface seems useful.
-
Marcel Stör authored
-