summaryrefslogtreecommitdiffstatshomepage
path: root/esp8266/uart.c
Commit message (Collapse)AuthorAge
* esp8266/uart: Add support for polling uart device.marc hoffman2017-02-03
|
* lib/interrupt_char: Factor out typical Ctrl+C handling from esp8266 port.Paul Sokolovsky2016-09-29
| | | | | Utility functions for keyboard interrupt handling, to be reused across (baremetal) ports.
* esp8266/modpybuart: allow setting baudrate and other paramsRadomir Dopieralski2016-06-30
|
* esp8266/uart: Properly initialise UART0 RXD pin in uart_config.Damien George2016-05-29
| | | | Tested and seems to work. See #1995.
* esp8266/uart: Remove obsolete UART rx buffering code.Damien George2016-04-21
| | | | It's now completely replaced by the ringbuf implementation.
* esp8266: Add uart_rx_wait and uart_rx_char functions.Damien George2016-04-21
|
* esp8266: Make destination for vendor OS debug output soft-configurable.Damien George2016-04-06
| | | | | Use esp.osdebug(None) to disable, or esp.osdebug(uart_id) to send output to a UART.
* esp8266/uart: Get ctrl-C working now that event-based REPL is disabled.Damien George2016-04-01
|
* esp8266/uart: Comment out old, unused rx buffering code.Damien George2016-04-01
| | | | | | | This was originally used for non-event based REPL processing. Then it was unused when event-based processing was activated. But now that event based is disabled, and non-event based is back, there has been new ring buffer code to process the chars.
* esp8266: Support dedicated REPL loop (aka pull-style).Paul Sokolovsky2016-04-01
| | | | | | | | Event-driven loop (push-style) is still supported and default (controlled by MICROPY_REPL_EVENT_DRIVEN setting, as expected). Dedicated loop worked even without adding ets_loop_iter(), though that needs to be revisited later.
* esp8266: Disallow recursive calls to REPL.Paul Sokolovsky2016-04-01
| | | | | | | | | Before this change, if REPL blocked executing some code, it was possible to still input new statememts and excuting them, all leading to weird, and portentially dangerous interaction. TODO: Current implementation may have issues processing input accumulated while REPL was blocked.
* esp8266: Switch back to accumulating input data via ring buffer.Paul Sokolovsky2016-03-30
| | | | | | | | But now it's generic ring buffer implemented via ringbuf.h, and is intended for any type of input, including dupterm's, not just UART. The general process work like this: an interrupt-driven input source puts data into input_buf, and then signals new data available via call to mp_hal_signal_input().
* esp8266: Let esp8266 "os" messages go to standard (REPL) UART.Paul Sokolovsky2016-03-29
| | | | That's definitely helpful for debugging.
* esp8266/uart: Add uart_flush() function.Paul Sokolovsky2016-03-05
|
* esp8266: Support raising KeyboardInterrupt on Ctrl+C.Paul Sokolovsky2016-03-05
|
* lib/pyexec: Move header pyexec.h from stmhal directory.Damien George2015-11-09
|
* 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: Add configuration option for redirecting the built-in OS outputJosef Gajdusek2015-05-13
|
* 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: Implement task-based, event-driven interface with UART.Paul Sokolovsky2015-01-16
| | | | | | This enables proper interfacing with underlying OS - MicroPython doesn't run the main loop, OS does, MicroPython just gets called when some event takes place.
* esp8266: New port of Micro Python to ESP8266 wifi module.Damien George2014-11-27