Commit Graph

2346 Commits

Author SHA1 Message Date
Johan Ström 2d958750b5 Handle large/chunked/fragmented MQTT messages properly (#2571)
* MQTT: handle large/chunked/fragmented messages properly

If a message spans multiple TCP packets it must be buffered before
delivered to LUA. Prior code did not do this at all, so this "patch"
really adds proper handling of fragmented MQTT packets.
This could also occur if multiple small messages was sent in a
single TCP packet, and the last message did not completely fit in that
packet.

Introduces a new option to the mqtt.Client constructor:
max_publish_length which defaults to 1024

Introduces a new 'overflow' callback.

Fixes issue #2308 and proper fix for PR #2544.

* mqtt.md: clarified heap allocation

* mqtt: ensure ack is sent for overflowed publish

If QoS is used we should still acknowledge that we received it, or server might retransmit it later.
2018-11-30 22:12:46 +01:00
Natalia b77033f920 Always compile `app/crypto` folder (#2573) 2018-11-28 14:03:33 +01:00
Marcel Stör 95728196c7 Remove sudo:false
Fixes #2568
2018-11-26 21:26:39 +01:00
galjonsfigur d5aca39f48 Fix build problem with luac.cross when DEVELOPMENT_USE_GDB is used (#2569) 2018-11-23 18:02:07 +00:00
Carsten Elton Sørensen bb9a5977d3 Calling vol:umount() would fail (#2558)
The volume returned by file.mount() could not be unmounted, because vol:umount() would fail with a cryptic error about the uncallable nature of the volume userdata object. This was due to the wrong metatable name being used for setting up the volume structure. The correct name, as registered elsewhere in file.c, is now used, and vol:umount() is callable.
2018-11-16 21:37:18 +01:00
Johan Ström 33613be550 Increase MQTT recv buffer size to support MTU 1500 (#2308) (#2544)
Any TCP packet with more than 1024 bytes of payload was silently
dropped. With MTU of 1500 the TCP payload can be up to 1460 bytes
(1500 - 20(IP hdr) - 20(TCP hdr))
2018-11-13 23:43:24 +01:00
Arnim Läuger 46671928c0 establish delay as event to trigger flushing of spi buffer (#2517) 2018-11-13 13:18:03 +01:00
Arnim Läuger 4095c408e6 u8g2: include "large" fonts (#2531) 2018-11-09 23:14:51 +01:00
galjonsfigur 1c6894eb02 Fix documentation for gdbstub module. (#2549) 2018-11-08 21:00:37 +01:00
Adriano Melo f5e68157a1 Add examples to the "bit" module documentation (#2528) 2018-11-03 21:45:08 +01:00
Arnim Läuger 5767475766 re-rename ENABLE_TIMER_SUSPEND to TIMER_SUSPEND_ENABLE in user_config.h (#2520) 2018-10-28 23:07:59 +01:00
Arnim Läuger cbd19f895f
u8g2: include "large" fonts (#2531) 2018-10-24 22:48:50 +02:00
Natalia 0bdcb81526 u8g2 i2c multibus support (#2526)
* u8g2 support for more than only one i2c bus

* Removed unnecessary #include
2018-10-20 10:29:29 +02:00
Arnim Läuger 67567af959 Submodulify ucg and update to v1.5.2 (#2503)
* turn ucg into submodule
* update ucg to 1.5.2
* add license note to doc
* align docs with esp32
* move ucg hal into platform folder
adapt examples
2018-10-19 21:18:50 +01:00
Terry Ellison 5f67de8d48
Optimise ROTable accesses and interface (#2505)
-  Optimise ROTable accesses and interface

This includes some refinements to the ROTable cache which remove the linker cludges on the CROSS_COMPILE builds.  Also keyhole tweaks to some of the Lua VM code to implrove runtimes.

I also noticed some compile time warnings during the build; the change to uz_unzip.c doesn't impact the compiled code, but does remove the compiler warnings.
2018-10-13 17:14:33 +03:00
Marcel Stör ff44b2f015
Add note about GMT/UTC 2018-10-11 23:43:13 +01:00
Nathaniel Wesley Filardo 3c824d7a81 Cron fixes, part 2 (+) (#2515)
* Restore WRAPCC when building Lua
* Fix several parsing bugs
2018-10-10 17:36:00 +01:00
Nathaniel Wesley Filardo 8790924c31 Check os_realloc calls (#2513) 2018-10-09 21:58:03 +01:00
Arnim Läuger 509be837a8 Update u8g2 to v2.23.18 (#2500)
* Update u8g2 to v2.23.18
* serve wdt for long delays
2018-10-07 21:46:56 +01:00
Bruno Vernay c708828bbe Fix broken link to flashchips.h (#2499) 2018-09-30 20:28:43 +03:00
Terry Ellison 172fb276ca
Add compression to LFS images (#2448)
* Merge of LFS compress, optimize against current dev
* Fixes to LFS compress patch
2018-09-29 16:57:51 +03:00
Nathaniel Wesley Filardo 0e103a39dd Better fix for HTTP header decode (#2491)
See https://github.com/nodemcu/nodemcu-firmware/issues/2482
2018-09-21 11:57:52 +02:00
Marcel Stör 3661b8d5eb Merge branch 'dev' 2018-09-17 20:47:23 +02:00
Marcel Stör 21b77bd668 Remove dead link to fix RTD build 2018-09-17 20:33:44 +02:00
Terry Ellison c54fbcfe8e
Add Getting Started page (#2487) (#2490)
-  Added Marcel's Getting Started page
-  Added reference to getting-started.md
2018-09-17 17:55:11 +01:00
Marcel Stör 9d8246fe52 Add Getting Started page (#2487)
-  Added Marcel's Getting Started page
-  Added reference to getting-started.md
-  Incorporated review findings
2018-09-17 17:36:09 +01:00
Marcel Stör b41667b837
Master drop #2486
Dev -> Master Release 10
2018-09-15 21:46:13 +02:00
Nate Clark 0abb26170b Decode chunked responses case insensitve headers (#2483) 2018-09-12 16:28:46 +02:00
Philip Gladstone 91951051af Updated documentation for gpio.pulse (#2485) 2018-09-10 13:17:24 +02:00
Marcel Stör a8a243efcc Arggg, RTD went back to MkDocs < 1.x 2018-09-08 00:08:28 +02:00
Marcel Stör 186fcd7202 Minor MkDocs fixes for 1.x compliance 2018-09-08 00:03:35 +02:00
Natalia 3886d2c765 RC module documentation (#2473) 2018-09-02 16:37:09 +02:00
Terry Ellison 94abbe70cb
Fix #2430 node.input() not working (#2469) 2018-08-27 12:46:51 +01:00
Nathaniel Wesley Filardo 161c855580 lua_examples/telnet: small tweaks (#2455)
* Remove the old telnet.lua, which has been duplicated as
  simple_telnet.lua.

* Fix some typos and whitespace issues
2018-08-27 12:46:39 +01:00
TerryE 35a2c2676a Reword the Compiling Lua on your PC for Uploading section for LFS. 2018-08-27 01:09:26 +01:00
Terry Ellison add0938d81
LFS documentation and example updates (#2458)
Updates to LFS documentation and the LFS HTTP_OTA module before release to master
2018-08-22 11:09:04 +01:00
Marcel Stör f99f295d97 Revert "FAQ update for io.write clarification (#2463)"
This reverts commit f111162a6a.
2018-08-18 21:50:39 +02:00
Tim Godfrey fe40323ec4 FAQ update for io.write clarification (#2463) 2018-08-18 21:47:03 +02:00
Tim Godfrey f111162a6a FAQ update for io.write clarification (#2463) 2018-08-18 19:26:18 +02:00
Marcel Stör 470bad0d9d Enable MkDocs strict mode again 2018-08-17 21:48:35 +02:00
Gregor Hartmann 0a248cdfd7 Fix output filename of LFS image built in tools (#2459) 2018-08-15 10:48:23 +02:00
Gregor Hartmann 3fd4b4047f Mention GitHub Desktop (#2460) 2018-08-15 10:47:21 +02:00
Marcel Stör 4d87e89059 Fix Git spelling and add LFS 2018-08-13 14:56:21 +02:00
Gregor Hartmann 91656c3d76 create luac.cross.{integer|float} (#2450)
Use separate names for the integer and float  `luac.cross` binaries.  Also adds local/lua directory which is already supported by tools makefile to build LFS image.
2018-08-11 18:28:01 +01:00
Nathaniel Wesley Filardo a57fe552e8 app/lua/luac_cross: WRAPCC CC here, too (#2453)
Not that Lua takes very long to compile, but allowing for ccache here
should still help the builder(s) consume a little less time and power.
2018-08-11 13:50:12 +02:00
Nathaniel Wesley Filardo e896face0c LFS: small tweaks to docs and examples (#2454) 2018-08-11 13:48:46 +02:00
Nathaniel Wesley Filardo fd12be9966 file: list now takes optional pattern for filtering (#2452)
Thanks to @TerryE for many useful suggestions
2018-08-10 16:38:48 +01:00
Marcel Stör 5d7a46aec1 Add LFS chapter
Contributes to #2431
2018-08-06 21:40:07 +02:00
Marcel Stör 7d86fef598 Add LFS links
Contributes to #2431
2018-08-06 21:28:41 +02:00
Marcel Stör eb79f1e79a Improve documentation for wifi.monitor
Fixes #2433, #2434
2018-08-05 17:58:04 +02:00