nodemcu-firmware/app
Johny Mattsson f3e2a3afd9 Initial pass at switching to RTOS SDK.
This compiles, links, and starts the RTOS without crashing and burning.

Lua environment does not yet start due to the different task architecture.

Known pain points:

  - task implementation needs to be rewritten for RTOS (next up on my TODO)

  - secure espconn does not exist, all secure espconn stuff has been #if 0'd

  - lwip now built from within the RTOS SDK, but does not appear to include
    MDNS support. Investigation needed.

  - there is no access to FRC1 NMI, not sure if we ever actually used that
    however. Also #if 0'd out for now.

  - new timing constraints introduced by the RTOS, all use of ets_delay_us()
    and os_delay_us() needs to be reviewed (the tsl2561 driver in particular).

  - even more confusion with ets_ vs os_ vs c_ vs non-prefixed versions.
    In the long run everything should be switched to non-prefixed versions.

  - system_set_os_print() not available, needs to be reimplemented

  - all the RTOS rodata is loaded into RAM, as it apparently uses some
    constants while the flash isn't mapped, so our exception handler can't
    work its magic. This should be narrowed down to the minimum possible
    at some point.

  - with each task having its own stack in RTOS, we probably need change
    flash-page buffers from the stack to the heap in a bunch of places.
    A single, shared, page buffer *might* be possible if we limit ourselves
    to running NodeMCU in a single task.

  - there's a ton of junk in the sdk-overrides now; over time the core code
    should be updated to not need those shims
2016-05-24 16:05:02 +10:00
..
cjson Fixed broken linear growth allocation in cjson. 2015-07-31 13:17:05 +10:00
coap Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
crypto Added crypto.fhash function for hashing files 2016-02-05 22:19:00 +00:00
dhtlib Changed os_intr_xxx to ets_intr_xxx. 2015-10-12 13:26:04 +11:00
driver Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
http Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
include Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
json source file first commit, folder structure refact 2014-12-22 19:35:05 +08:00
libc Take 2: Add regular sends to mdns. Check for (some) buffer overflows. Make it handle unicast 2016-04-03 14:10:52 -04:00
lua Remove unusedcode 2016-03-20 12:54:16 -04:00
modules Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
mqtt Initial version of unsubscribe 2016-03-20 18:44:06 -04:00
net Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
platform Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
smart Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
spiffs Limit file.open() names to 31 char max C string format. See #1112 2016-03-04 01:46:35 +00:00
task Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
tsl2561 Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00
u8glib enable -std=gnu11 for u8glib and ucglib dir 2016-03-22 22:26:36 +01:00
ucglib enable -std=gnu11 for u8glib and ucglib dir 2016-03-22 22:26:36 +01:00
user Rework ADC mode setting approach (#1285) 2016-05-18 21:45:15 +02:00
.gitignore seperate user_config.h to speed-up compile when modules disabled/enabled 2015-03-06 11:59:04 +08:00
Makefile Initial pass at switching to RTOS SDK. 2016-05-24 16:05:02 +10:00