summaryrefslogtreecommitdiffstatshomepage
path: root/esp8266
Commit message (Collapse)AuthorAge
* esp8266: Use m_new/m_renew/m_del funcs instead of private gc_xxx.Damien George2015-07-20
|
* esp8266: modesp: Update for gc_realloc() refactor.Paul Sokolovsky2015-07-19
| | | | TODO: Contributed code in modesp incorrectly uses private gc_* API.
* esp8266: Allow to easily override programming baudrate.Paul Sokolovsky2015-07-04
|
* esp8266: Make pyb.RTC a type, and pyb.RTC() constructs an RTC object.Damien George2015-06-22
| | | | | | | This is the standard way of doing things, one should construct a peripheral object (even if it's a singleton). See issue #1330.
* esp8266: Move status() from esp module to networkBill Owens2015-06-20
|
* esp8266: README: Typo fix.Paul Sokolovsky2015-06-19
|
* esp8266: Explicit warning that port is experimental and subject to change.Paul Sokolovsky2015-06-18
|
* ESP8266: Update the README.md to reflect what worksRadomir Dopieralski2015-06-18
|
* esp8266: Move scan from esp module to networkBill Owens2015-06-17
|
* esp8266: Changed esp_scan to keep the current WiFi operating mode but throw ↵Bill Owens2015-06-14
| | | | an exception if WiFi is in AP only mode
* esp8266: Move connect/disconnect from "esp" module to network.Paul Sokolovsky2015-06-12
|
* esp8266: Add skeleton "network" module.Paul Sokolovsky2015-06-12
| | | | | | | MicroPython "network" module interface requires it to contains classes to instantiate. But as we have a static network interace, make WLAN() "constructor" just return module itself, and just make all methods module-global functions.
* esp8266: esp_connect(): The function is now vararg.Paul Sokolovsky2015-06-12
| | | | Fixes regression from a previous commit.
* esp8266: Do not call espconn_create in constructor of esp.socket.Paul Sokolovsky2015-06-02
| | | | | | Turns out this is supposed to be called only for UDP connections. Patch by Josef Gajdusek.
* esp8266: Fix lost chars problem when block-xfering data (e.g., when pasting).Paul Sokolovsky2015-06-01
| | | | | | | | | | | | | Pasting more or less sizable text into ESP8266 REPL leads to random chars missing in the received input. Apparent cause is that using RTOS messages to pass individual chars one by one is to slow and leads to UART FIFO overflow. So, instead of passing chars one by one, use RTOS msg to signal that input data is available in FIFO, and then let task handler to read data directly from FIFO. With this change, lost chars problem is gone, but the pasted text is truncated after some position. At least 500 chars can be pasted reliably (at 115200 baud), but 1K never pastes completely.
* esp8266: Update to SDK version 1.1.0 (MIT-licensed).Josef Gajdusek2015-05-30
| | | | | | | | | 1. Updated linker script, now user app appears to contain exception vector table and oesn't work (faults) without it. 2. Commened out support for GPIO pulldown, which was removed in this SDK version without clear explanation, but apparently because it was released without proper validation, and now turns out it doesn't work as expected, or there's a different function there.
* esp8266: Add a bunch of miscellaneous methodsJosef Gajdusek2015-05-28
|
* esp8266: Add pyb.ADC classJosef Gajdusek2015-05-28
|
* esp8266: Enable setting CPU frequency to 160MHzJosef Gajdusek2015-05-28
|
* esp8266: Move initialization to system_init_done_cbJosef Gajdusek2015-05-26
| | | | | Initializing too early caused some of the API functions (wifi_*) to fail when called in main.py
* esp8266: Add uos moduleJosef Gajdusek2015-05-26
| | | | Currently implements only .uname()
* esp8266: Add configuration option for redirecting the built-in OS outputJosef Gajdusek2015-05-13
|
* esp8266: Actually use the decimal part of system_rtc_clock_cali_proc()Josef Gajdusek2015-05-13
|
* esp8266: Put more literal and text obj data in irom0_0_seg.Damien George2015-05-13
| | | | | | | With newer versions of esp_iot_sdk the iram1_0_seg started to overflow. Now it doesn't. Addresses issue #1254.
* esp8266: Add module weak links; link time to utime.Damien George2015-05-13
|
* esp8266: Add utime and pyb.RTCJosef Gajdusek2015-05-13
|
* esp8266: Update the linker scriptJosef Gajdusek2015-05-13
| | | | | Moved modesp.o to flash and increased size of the irom0_0_seg segment. The new value was taken from NodeMCU linker script.
* esp8266: Implement time functionsJosef Gajdusek2015-05-12
|
* esp8266: Add support for frozen modulesJosef Gajdusek2015-05-06
|
* esp8266: Add .onsent callback supportJosef Gajdusek2015-05-06
| | | | | The function passed to socket.onsent() gets called after data is succesfully sent by the socket.
* esp8266: Initialize socket->connlist to NULLJosef Gajdusek2015-05-06
| | | | This was causing crashes in .onconnect()
* esp8266: Fix garbage collector by hard-coding stack end address.Josef Gajdusek2015-05-06
| | | | | | | As user_init() is not a true main functions, the stack pointer captured within is not pointing at the base of the stack. This caused gc_collect being called with sp being higher than stack_end, causing integer overflow and crashing as gc tried to scan almost the entire address space.
* pyexec: Make raw REPL work with event-driven version of pyexec.Damien George2015-05-06
| | | | | | | esp8266 port now has working raw and friendly REPL, as well as working soft reset (CTRL-D at REPL, or raise SystemExit). tools/pyboard.py now works with esp8266 port.
* esp8266: Return CPU frequency in Hz.Damien George2015-05-05
|
* esp8266: Fix endian of address returned by esp.getaddrinfo()Josef Gajdusek2015-05-05
|
* esp8266: Add esp.socket class, with ESP-style socket functionality.Josef Gajdusek2015-05-04
| | | | | | | * UDP currently not supported * As there is no way (that I know of) the espconn_regist_connectcb() callback can recognize on which socket has the connection arrived, only one listening function at a time is supported
* esp8266: Export station status() constantsJosef Gajdusek2015-05-03
|
* py: Overhaul and simplify printf/pfenv mechanism.Damien George2015-04-16
| | | | | | | | | | | | | | | | | | | | | | Previous to this patch the printing mechanism was a bit of a tangled mess. This patch attempts to consolidate printing into one interface. All (non-debug) printing now uses the mp_print* family of functions, mainly mp_printf. All these functions take an mp_print_t structure as their first argument, and this structure defines the printing backend through the "print_strn" function of said structure. Printing from the uPy core can reach the platform-defined print code via two paths: either through mp_sys_stdout_obj (defined pert port) in conjunction with mp_stream_write; or through the mp_plat_print structure which uses the MP_PLAT_PRINT_STRN macro to define how string are printed on the platform. The former is only used when MICROPY_PY_IO is defined. With this new scheme printing is generally more efficient (less layers to go through, less arguments to pass), and, given an mp_print_t* structure, one can call mp_print_str for efficiency instead of mp_printf("%s", ...). Code size is also reduced by around 200 bytes on Thumb2 archs.
* string0.c: Move from stmhal/ to lib/.Paul Sokolovsky2015-04-05
|
* esp8266: Add basic pyb.Pin class; supports output mode only.Damien George2015-02-13
|
* stmhal: Make pybstdio usable by other ports, and use it.Damien George2015-02-13
| | | | | Now all ports can use pybstdio.c to provide sys.stdin/stdout/stderr, so long as they implement mp_hal_stdin_* and mp_hal_stdout_* functions.
* py: Protect mp_parse and mp_compile with nlr push/pop block.Damien George2015-02-07
| | | | | | | | | | To enable parsing constants more efficiently, mp_parse should be allowed to raise an exception, and mp_compile can already raise a MemoryError. So these functions need to be protected by an nlr push/pop block. This patch adds that feature in all places. This allows to simplify how mp_parse and mp_compile are called: they now raise an exception if they have an error and so explicit checking is not needed anymore.
* esp8266: modesp: Add status() function for connection status.Paul Sokolovsky2015-02-05
|
* esp8266: modesp: Add disconnect() function to disconnect from WiFi AP.Paul Sokolovsky2015-02-03
|
* esp8266: modesp: Add connect() function to connect to WiFi AP.Paul Sokolovsky2015-02-01
|
* esp8266: Add "reset" target to Makefile.Paul Sokolovsky2015-01-31
| | | | | Just always keep jumper in bootloader position. After flashing, uPy automatically executed. And to get back to bootloader, do "make reset".
* esp8266: Update ROM address map to vendor SDK 0.9.5.Paul Sokolovsky2015-01-31
|
* esp8266: Handle exceptions in callback.Paul Sokolovsky2015-01-25
|
* esp8266: Add "esp" module with esp8266-specific "cooperative" networking.Paul Sokolovsky2015-01-25
| | | | | So far implements .scan(lambda x: print(x)) function to scan for WiFi access points.
* esp8266: Add missing hard_reset qstr.Paul Sokolovsky2015-01-18
|