summaryrefslogtreecommitdiff
path: root/esp8266
AgeCommit message (Collapse)Author
2016-06-03esp8266/modpybrtc: Handle RTC overflow.puuu
ESP-SDK system_get_rtc_time() returns uint32 and therefore overflow about every 7:45h. Let's write the last state of system_get_rtc_time() in RTC mem and use it to check for overflow. This commit require running pyb_rtc_get_us_since_2000() at least once within 7 hours to avoid overflow.
2016-06-01esp8266: Provide a dedicated variable to disable ets_loop_iter.Damien George
So ets_loop_iter is now only disabled when using machine.disable_irq.
2016-06-01esp8266/rtc: Set RTC user memory length to 0 on first boot.Damien George
So that RTC.memory() returns b'' on power up if it was never set. Fixes issue #2138.
2016-05-31esp8266/moduos.c: Add stat() to the module uos of esp8266.Robert HH
This implementation makes use of vfs.stat() and therefore has the same properties. Known issues for all ports: uos.stat(".") on the top level returns the error code 22, EINVAL. The same happens with uos.stat("dirname/") where dirname IS the name of a directory.
2016-05-31esp8266: Enable MICROPY_PY_IO_FILEIO to get compliant text/binary streams.Paul Sokolovsky
2016-05-31extmod/machine: Add MICROPY_PY_MACHINE_PULSE config for time_pulse_us.Damien George
Since not all ports that enable the machine module have the pin HAL functions.
2016-05-31esp8266/modmachine: Add machine.time_pulse_us function.Damien George
2016-05-30esp8266/scripts/ntptime: Allow to override NTP server.Paul Sokolovsky
This is not part of public API, variable name may change, or it can be replaced with a function.
2016-05-29esp8266/moduos: Add chdir() and getcwd() functions.Paul Sokolovsky
2016-05-29esp8266/uart: Properly initialise UART0 RXD pin in uart_config.Damien George
Tested and seems to work. See #1995.
2016-05-29esp8266/modnetwork: Allow to press ctrl-C while scan() is running.Damien George
Ctrl-C will raise a KeyboardInterrupt and stop the scan (although it will continue to run in the background, it won't report anything). If interrupted, and another scan() is started before the old one completes in the background, then the second scan will fail with an OSError.
2016-05-29esp8266/modnetwork: Protect scan() callback against memory errors.Damien George
scan() allocates memory so may cause an exception to be raised.
2016-05-29esp8266/modnetwork: scan() is only supported by STA when it's enabled.Damien George
2016-05-27esp8266/Makefile: Document "disable" value for UART_OS.Paul Sokolovsky
2016-05-26esp8266: Add dht.py script for high-level control of DHT11/DHT22 sensor.Damien George
TODO: should go in a more port-neutral place, like drivers/dht, but at the moment in relies on specific esp module.
2016-05-26esp8266: Enable DHT C-level driver.Damien George
Exposed as esp.dht_readinto. Probably should go somewhere less port-specific.
2016-05-26extmod/machine_i2c: Redo mp_hal_pin macros to use open_drain and od_low.Damien George
mp_hal_pin_config_od is renamed mp_hal_pin_open_drain, and mp_hal_pin_low is mp_hal_pin_od_low.
2016-05-26esp8266/modmachine: Add disable_irq and enable_irq functions.Damien George
2016-05-26esp8266/ets_alt_task: Don't run ets_loop_iter if irqs are disabled.Damien George
ets_loop_iter processes pending tasks, and tasks are considered lower priority than interrupts, so tasks shouldn't be processed if interrupts are disabled.
2016-05-26esp8266/xtirq: Add xtirq.h for controlling xtensa irqs.Damien George
2016-05-26esp8266/modpybspi: Configure pins when initialising an SPI object.Damien George
2016-05-26esp8266: Add mp_hal_pin_input() and mp_hal_pin_output() functions.Damien George
2016-05-24esp8266/esp_mphal: mp_uos_dupterm_deactivate() may raise exception.Paul Sokolovsky
So, keep call to it protected via NLR still.
2016-05-24esp8266/esp_mphal: Handle Ctrl+C from dupterm (e.g. WebREPL).Paul Sokolovsky
2016-05-24esp8266/esp_mphal: Fix NLR buffer leak in call_dupterm_read().Paul Sokolovsky
2016-05-24esp8266/scripts/port_diag: Dump network interface IP settings.Paul Sokolovsky
2016-05-22esp8266/main: Update _boot module loading for recent frozen modules refactors.Paul Sokolovsky
2016-05-22esp8266: Enable collections.OrderedDict.Paul Sokolovsky
2016-05-20extmod/moduos_dupterm: Dumpterm subsystem is responsible for closing stream.Paul Sokolovsky
Make dupterm subsystem close a term stream object when EOF or error occurs. There's no other party than dupterm itself in a better position to do this, and this is required to properly reclaim stream resources, especially if multiple dupterm sessions may be established (e.g. as networking connections).
2016-05-19esp8266: Add APA102 serial individually controllable LEDs support.misterdanb
APA102 is a new "smart LED", similar to WS2812 aka "Neopixel".
2016-05-19esp8266/README: Add a very first start section.Torwag
Adding a very first start section to get people going after flashing. I tried to condense it to a minimum to avoid as much as possible redundancy and bloating.
2016-05-17esp8266/scripts/webrepl_setup: Add max password length check.Paul Sokolovsky
modwebrepl truncates password to 9 chars, and that led people to confusion.
2016-05-17esp8266/scripts/webrepl_setup: Show password placeholder char.Paul Sokolovsky
That was the intent for the initial user setup, but didn't work before due to lwIP issues. Enable now that they're fixed.
2016-05-16esp8266/scripts/port_diag: Add network diagnostic output.Paul Sokolovsky
2016-05-16esp8266/moduos.c: Addition of the rename method to module uos.Robert HH
That one was missing in the module, even if it was available in the vfs object. The change consist of adding the name and preparing the call to the underlying vfs module, similar to what was already implemented e.g. for remove. Rename is useful by itself, or for instance for a safe file replace, consisting of the sequence: write to a temp file delete the original file rename the temp file to the original file's name
2016-05-12esp8266: Change to use internal errno's.Damien George
2016-05-10esp8266: Enable uerrno module, weak linked also as errno.Damien George
2016-05-10esp8266: Convert to use new MP_Exxx errno symbols.Damien George
These symbols are still defined in terms of the system Exxx symbols, and can be switched to internal numeric definitions at a later stage. Note that extmod/modlwip still uses many system Exxx symbols.
2016-05-10esp8266/help: Add "sta_if.active(True)" command.Paul Sokolovsky
As reported on the forum by Roberthh.
2016-05-10esp8266/mpconfigport: Reduce various parser-related allocation params.Paul Sokolovsky
This gives noticeable result for parsing simple input (modelled on 32-bit unix port): Before: >>> micropython.mem_total() 3360 >>> micropython.mem_total() 4472 After: >>> micropython.mem_total() 3072 >>> micropython.mem_total() 4052 However, effect on parsing large input is much less conclusive, e.g.: Before: >>> micropython.mem_total() 3376 >>> import pystone_lowmem >>> micropython.mem_total() 33006 delta=29630 After: >>> micropython.mem_total() 3091 >>> import pystone_lowmem >>> micropython.mem_total() 32509 delta=29418
2016-05-09esp8266/main: Bump heap size to 28K.Paul Sokolovsky
This is kind of compensation for 4K FatFs buffer size which is eaten away from it on FS mount. This should still leave enough of networking ("OS") heap.
2016-05-08esp8266/scripts/webrepl: Add start_foreground() method.Paul Sokolovsky
Starts WebREPL server in foreground and waits for (single) connection.
2016-05-07esp8266/scripts/webrepl: Add optional password argument to webrepl.start()Noah Rosamilia
This commit fixes issue #2045
2016-05-07esp8266/scripts/: Add fill() to NeoPixelMike Causer
2016-05-07esp8266/scripts/inisetup: Don't start WebREPL on boot in master branch.Paul Sokolovsky
It interferes with running testsuite. master branch should be optimized for development, so any features which interfere with that, would need to be disabled by default.
2016-05-05esp8266/scripts/: Remove use of pin.PULL_NONE.Paul Sokolovsky
This constant is no longer part of hardware API (replaced with just None), and is a default, so not needed in calls.
2016-05-03esp8266/main: Set sys.path to ["", "/", "/lib"].Paul Sokolovsky
2016-05-03esp8266: Shrink help text by a few lines, to fit in smaller windows.Damien George
2016-05-03esp8266/scripts/ntptime: Add simple NTP client.Paul Sokolovsky
.time() returns seconds since MicroPython epoch (2000-01-01 00:00UTC), .settime() sends current system time, assuming UTC timezone.
2016-05-03esp8266/modpybpin: Make pin.irq() methods take keyword args.Damien George