Commit Graph

220 Commits

Author SHA1 Message Date
Johny Mattsson 4a47813e20 Reduced SPIFFS cache, freeing ~0.5k RAM.
Also made the cache on/off configurable via user_config.h. Uncached writes
are not a very good idea, but for read-only deployments a further ~0.5k RAM
can be gained by disabling the cache.

Tweaked the file.read() workhorse to read large chunks at a time rather
than use getc(), to compensate for potential unavailability of cache.
2015-07-31 18:15:18 +10:00
Vowstar 00e1e6bcbe Merge pull request #572 from devsaurus/dev
Upgrade u8g module and add display bindings
2015-07-26 22:55:52 +08:00
devsaurus f4f62fb255 fix display table construction 2015-07-21 20:37:44 +02:00
devsaurus 6fd106afac added more displays:
sh1106_128x64_i2c
    ssd1306_64x48_i2c
    ssd1309_128x64_i2c
    ssd1327_96x96_gr_i2c
    uc1611_dogm240_i2c
    uc1611_dogxl240_i2c
    ld7032_60x32_hw_spi
    pcd8544_84x48_hw_spi
    pcf8812_96x65_hw_spi
    sh1106_128x64_hw_spi
    ssd1306_64x48_hw_spi
    ssd1309_128x64_hw_spi
    ssd1322_nhd31oled_bw_hw_spi
    ssd1322_nhd31oled_gr_hw_spi
    ssd1325_nhd27oled_bw_hw_spi
    ssd1325_nhd27oled_gr_hw_spi
    ssd1327_96x96_gr_hw_spi
    ssd1351_128x128_332_hw_spi
    ssd1351_128x128gh_332_hw_spi
    ssd1351_128x128_hicolor_hw_spi
    ssd1351_128x128gh_hicolor_hw_spi
    ssd1353_160x128_332_hw_spi
    ssd1353_160x128_hicolor_hw_spi
    st7565_64128n_hw_spi
    st7565_dogm128_hw_spi
    st7565_dogm132_hw_spi
    st7565_lm6059_hw_spi
    st7565_lm6063_hw_spi
    st7565_nhd_c12832_hw_spi
    st7565_nhd_c12864_hw_spi
    uc1601_c128032_hw_spi
    uc1608_240x128_hw_spi
    uc1608_240x64_hw_spi
    uc1610_dogxl160_bw_hw_spi
    uc1610_dogxl160_gr_hw_spi
    uc1611_dogm240_hw_spi
    uc1611_dogxl240_hw_spi
    uc1701_dogs102_hw_spi
    uc1701_mini12864_hw_spi
2015-07-20 23:11:13 +02:00
devsaurus b837726013 simplify device/display macros 2015-07-20 22:07:59 +02:00
devsaurus 8bd3d7d2bf introduce lua_api_name parameter when building the display table
keeps the API as before and gets rid of hw_spi vs sw_spi topics
2015-07-19 21:57:14 +02:00
Johny Mattsson 8d68ad7e15 Updated SPIFFS to 0.3.2, plus alignment fix. 2015-07-17 13:40:55 +10:00
devsaurus 1bc156e4d1 move display constructors into template-based functions
+ uniform generaration
+ addition of further displays
- slight unneccesary heap allocation when display drivers are included but not used
2015-07-16 23:23:43 +02:00
devsaurus 02d473dab0 revert local changes to u8glib 2015-07-16 21:31:00 +02:00
Vowstar 239008d5b9 Merge pull request #553 from nodemcu/dev096
Merge Dev096 to Dev
2015-07-14 15:02:37 +08:00
dnc40085 0020c1d167 added code to check if in softap mode before continuing event monitor
callback
2015-07-13 22:12:16 -07:00
dnc40085 be79d1d3b6 added wifi station event monitor 2015-07-13 21:13:26 -07:00
Konrad Beckmann 6538d22d1f Improved ws2812 implementation
- Fixes the "first led problem" (#534 #487).
- Adds support for 160MHz mode.
- Optimized timings. Time to write pixels is reduced by about 25%
  This is useful when having a large amount of chained LEDs (>500).
2015-07-12 13:43:33 +02:00
Vowstar 98b2bffa75 Merge pull request #545 from DiUS/rtc
RTC and advanced timekeeping
2015-07-11 12:17:51 +08:00
Johny Mattsson dd38a0a0e6 Imported reworked rtctime support. 2015-07-10 16:16:25 +10:00
Johny Mattsson 09410d55c6 Added SNTP module, for easy time sync.
Integrates with the rtctime component if it's available.
2015-07-10 15:12:31 +10:00
Johny Mattsson 67e72c45df Imported RTC FIFO component + added Lua interface.
The rtcfifo module uses RTC memory to store sensor samples across deep-sleeps,
making it possible to batch up samples for less frequent uploads. This
component uses 9 RTC memory slots for control, and a variable number of
slots for sample storage (see rtcfifo.prepare() on how to control the
size/location of the latter).

When used together with the rtctime module, it also exposes the convenience
function rtcfifo.dsleep_until_sample() which can be used to easily take
readings on a regular basis without having to manually take into account
time spent awake to get an accurate sleep time.

The format used for storing samples is quite dense, and allows for 16 bits
of data in a fixed point format (per sample).
2015-07-10 15:12:31 +10:00
Johny Mattsson 2187424928 Imported RTC+sleep timekeeping from an internal DiUS project.
Added Lua module rtctime to interface with it.

This keeps as accurate time as is possible on the ESP8266, including across
deep sleeps (provided rtctime.dsleep() is used rather than node.dsleep()).
Intended to be used together with NTP for high accuracy time keeping. The
API is via rtctime.{get,set}timeofday(), working from Unix epoch.

Note that 160MHz CPU clock is not currently supported by the rtctime code,
as it is only aware of the 52MHz boot clock and the regular 80Mhz default
clock.

See rtctime.h for detailed info on how this all works.
2015-07-10 15:12:31 +10:00
Johny Mattsson 1a613effeb Imported RTC access from a DiUS internal project.
Added Lua access module named "rtcmem" for read/write of RTC user module.
2015-07-10 15:10:15 +10:00
Johny Mattsson 6ad2666182 Declare wifi.ap.getconfig() in the right map. 2015-07-10 14:01:38 +10:00
vowstar 67d785ffec Restore default data and init data before system restore. 2015-07-04 04:27:59 +08:00
vowstar 89aaf475d0 Add node.restore().
If NodeMCU can't connect Wi-Fi, please use it.
After reboot, all will be OK.
RESTORE ITEMS:
wifi_station_set_auto_connect, wifi_set_phy_mode, wifi_softap_set_config,  wifi_station_set_config, wifi_set_opmode.
2015-07-04 03:54:22 +08:00
vowstar 2224f24dad Merge branch 'dev096' of https://github.com/nodemcu/nodemcu-firmware into dev 2015-07-04 02:31:15 +08:00
vowstar 638bf7b023 Merge branch 'dev' of https://github.com/nodemcu/nodemcu-firmware into dev 2015-07-04 02:28:31 +08:00
vowstar fb0e4722b8 Fix and support Wi-Fi smart link (esp-touch and air-kiss).
Espressif open-source android and iOs APP,
See also https://github.com/espressifapp
Note: Must use ESP-TOUCH-V021 in espressif app history.
2015-07-04 02:27:51 +08:00
Konrad Beckmann 3d3c2431b3 Added WS2801 support 2015-07-02 00:50:26 +02:00
Vowstar 125d2173d6 Merge pull request #519 from md5crypt/tmr_module
rewrote the timer module from scratch
2015-06-30 15:50:08 +08:00
Luna 2691383696 added tmr.interval 2015-06-29 23:15:30 +02:00
Luna c1d2eb413b rewrote the timer module from scratch 2015-06-29 21:19:24 +02:00
Vowstar aa710d1f53 Merge pull request #513 from NodeUSB/dev096
update 433MHz transmission comment, add static ICACHE_FLASH_ATTR flag
2015-06-28 14:55:07 +08:00
Mike Wen 66ca7f6aca update 433MHz transmission comment, add static ICACHE_FLASH_ATTR flag 2015-06-27 18:14:24 -04:00
Mike Wen cf72a3203d update 433MHz transmission doc, add static ICACHE_FLASH_ATTR flag 2015-06-27 14:42:39 -04:00
vowstar 663158e4ab added wifi.ap.getconfig() by @md5crypt https://github.com/nodemcu/nodemcu-firmware/pull/500/files#diff-81824fe90d00138d98b6e9f0d7d8c7dcL1458. 2015-06-27 12:30:36 +08:00
vowstar a32df17579 Fixed net.dns.getdnsserver() by @md5crypt. 2015-06-27 12:26:24 +08:00
Johny Mattsson 7bd10e8a17 Added node.bootreason() to inspect boot cause. 2015-06-27 12:34:03 +10:00
devsaurus 277c6d0116 move u8g progmem constants to new .rodata sections
this simplifies the overall memory handling based on the irom support by @jmattsson
2015-06-25 00:38:11 +02:00
Luna 5ca807d7a1 fixed net.dns.getdnsserver() and added wifi.ap.getconfig() 2015-06-24 22:38:37 +02:00
MarsTechHAN 04c03b00ae @jorgempy We change the API of DNS callback format back
Make the net api universe  Callback Format -> function(conn,ip)
2015-06-20 19:10:01 +08:00
Vowstar 90ca92ca6e Revert "Merge dev to dev096" 2015-06-20 01:50:29 +08:00
vowstar 3430e5f826 Add __attribute__((optimize("O2"))) to ws2812 module. 2015-06-20 01:40:45 +08:00
vowstar 87341547d7 Update DHTlib, supported DHT11 or DHTxx automatic detection.
Using @MarsTechHAN 's method.
New usage:
status, temp, humi, tempdec, humidec = dht.read( id )
print( dht.read( id ) )
= dht.read( id )
2015-06-18 20:53:52 +08:00
vowstar af56aea1e8 Update dhtlib api, support both integer and float version. 2015-06-18 17:19:55 +08:00
vowstar 899935e60b Add DHT Lua Module for interfacing with the DHTxx sensors (xx = 11-21-22-33-44). 2015-06-18 16:31:40 +08:00
Mike Wen 7df0a45b07 add 433MHz transmission 2015-06-11 18:05:27 -04:00
Mike Wen a8622795a7 add 433MHz transmission 2015-06-11 18:05:18 -04:00
Vowstar 8044014f96 Merge pull request #471 from nodemcu/dev
Merge dev into dev096
2015-06-08 14:04:28 +08:00
cal 9dc71cfec0 Trying to fix
Problem with multiple MQTT subscriptions #459
	https://github.com/nodemcu/nodemcu-firmware/issues/459

Fix possible wrong buffer pointer increment.
2015-06-07 12:45:55 +02:00
Vowstar ef4e6fa95f Merge pull request #467 from DiUS/newcrypto
Crypto module improvements
2015-06-05 13:01:38 +08:00
Johny Mattsson 7867fd083c Move crypto things to irom0.text segment.
This releases 1168 bytes back to the heap.
2015-06-05 13:03:08 +10:00
cal fdcb982351 Trying to fix
Problem with multiple MQTT subscriptions #459
	https://github.com/nodemcu/nodemcu-firmware/issues/459

Fix possible wrong buffer pointer increment.
2015-06-04 11:46:20 +02:00