summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* py/emitglue: Move typedef of mp_raw_code_t from .c to .h file.Damien George2016-04-13
| | | | It's needed by frozen bytecode.
* tests: Skip async tests for native emitter.Damien George2016-04-13
|
* tests: Add .exp files for async tests, so they can run with Python 3.4.Damien George2016-04-13
|
* ports: Disable async/await on bare-arm, minimal, pic16bit, cc3200.Damien George2016-04-13
| | | | It costs 1188 bytes of code on Thumb 2 archs.
* tests: Add 6 tests for async await/for/with.Damien George2016-04-13
|
* py: Fix constant folding and inline-asm to work with new async grammar.Damien George2016-04-13
|
* py: add async/await/async for/async with syntaxpohmelie2016-04-13
| | | | | | | | They are sugar for marking function as generator, "yield from" and pep492 python "semantically equivalents" respectively. @dpgeorge was the original author of this patch, but @pohmelie made changes to implement `async for` and `async with`.
* esp8266/esp_mphal: call_dupterm_read(): Fix order of deactivating on EOF.Paul Sokolovsky2016-04-13
| | | | First deactivate, then print diagnostic message.
* esp8266/esp_mphal: Don't swallow exceptions in dupterm's read()/write().Paul Sokolovsky2016-04-13
| | | | | | | The idea is that if dupterm object can handle exceptions, it will handle them itself. Otherwise, object state can be compromised and it's better to terminate dupterm session. For example, disconnected socket will keep throwing exceptions and dump messages about that.
* extmod/moduos_dupterm: Don't swallow exceptions in dupterm's read()/write().Paul Sokolovsky2016-04-13
| | | | | | | The idea is that if dupterm object can handle exceptions, it will handle them itself. Otherwise, object state can be compromised and it's better to terminate dupterm session. For example, disconnected socket will keep throwing exceptions and dump messages about that.
* lib/utils/printf: Rework overriding printer of DEBUG_printf().Paul Sokolovsky2016-04-13
| | | | | By default it uses mp_plat_print, but a port may override it to another value with MICROPY_DEBUG_PRINTER_DEST.
* stmhal: Properly handle RTS/CTS flow control for buf/unbuf transfers.Peter Hinch2016-04-13
| | | | Fixes issues #1912 and #1913. UART documentation is also updated.
* esp8266: In callback helpers, pop nlr_buf on successful call.Damien George2016-04-13
| | | | | | | nlr_pop must be called if no exception was raised. Also, return value of these callback helpers is made void because ther is (currently) no use for it.
* py/modbuiltins: __repl_print__: Add comment about setting "_" special var.Paul Sokolovsky2016-04-13
|
* extmod/machine_i2c: Implement I2C memory reading/writing.Damien George2016-04-12
|
* extmod/machine_i2c: Fix I2C reading by sending ack/nack at end of byte.Damien George2016-04-12
|
* drivers: Add SSD1306 OLED driver, with I2C and SPI interfaces.Damien George2016-04-12
|
* esp8266: Enable framebuf module.Damien George2016-04-12
|
* esp8266: Switch from using custom I2C driver to generic extmod one.Damien George2016-04-12
|
* esp8266: Implement basic C-level pin HAL.Damien George2016-04-12
|
* esp8266: Protect modpyb.h header file from multiple inclusions.Damien George2016-04-12
| | | | Also include py/obj.h so the header is self contained.
* stmhal: Enable framebuf module.Damien George2016-04-12
|
* stmhal: Use new generic I2C object in machine module.Damien George2016-04-12
|
* stmhal: Implement basic C-level pin HAL.Damien George2016-04-12
|
* extmod: Add generic machine.I2C class, with bit-bang I2C.Damien George2016-04-12
| | | | Should work on any machine that provides the correct pin functions.
* extmod: Add initial framebuf module.Damien George2016-04-12
|
* esp8266/scripts/inisetup.py: Use "-" in AP ESSID instead of space.Damien George2016-04-12
|
* esp8266/scripts/inisetup.py: Set WPA/WPA2 AP mode with a predefined password.Paul Sokolovsky2016-04-12
|
* esp8266: Add Python modules for initial configuration.Paul Sokolovsky2016-04-12
| | | | | | | | | Main entry point is _boot.py which checks whether FAT FS in flash mountable, and if so, mounts it. Otherwise, it checks if flash is empty, and if so, performs initial module setup: makes FAT FS, configures default AP name, etc. As a last option, if flash is not empty, and could not be mounted, it means filesystem corruption, and warning message with instructions is printed in an infinite loop.
* esp8266/scripts/main.py: Remove stale file.Paul Sokolovsky2016-04-12
|
* esp8266/modnetwork: .config(): Add "password" param (W/O).Paul Sokolovsky2016-04-12
|
* esp8266/modnetwork: .config(): Add "authmode" param.Paul Sokolovsky2016-04-12
|
* esp8266/modnetwork: .config(): Check interface whose config is requested.Paul Sokolovsky2016-04-12
|
* unix: Build with MICROPY_PY_UHASHLIB_SHA1 if already building with axTLS.Paul Sokolovsky2016-04-11
|
* esp8266: Enable websocket module.Paul Sokolovsky2016-04-11
|
* docs: Bump version to 1.7.v1.7Damien George2016-04-11
|
* extmod/modwebsocket: write(): Support write size beyond 125 bytes.Paul Sokolovsky2016-04-11
|
* extmod/modlwip: Fix for loss of data in unaccepted incoming sockets.Paul Sokolovsky2016-04-11
| | | | | | | | | When lwIP creates a incoming connection socket of a listen socket, it sets its recv callback to one which discards incoming data. We set proper callback only in accept() call, when we allocate Python-level socket where we can queue incoming data. So, in lwIP accept callback be sure to set recv callback to one which tells lwIP to not discard incoming data.
* esp8266/modesp: Add freemem() and meminfo() functions.Paul Sokolovsky2016-04-11
| | | | | They call into vendor SDK functions system_get_free_heap_size() and system_print_meminfo() respectively.
* esp8266/main: mp_builtin_open(): Implement, using vfs_proxy_call().Paul Sokolovsky2016-04-10
|
* py/stream: Move uPy func obj wrappers to below their respective funcs.Damien George2016-04-10
|
* py/stream: Simplify arg extraction logic for stream_ioctl.Damien George2016-04-10
| | | | | | | Saves 16 bytes of code. Also, use mp_obj_get_int_truncated to allow integers as big as a machine word to be passed as the value.
* esp8266: Implement multistage bootstrap sequence.Damien George2016-04-10
| | | | | | | | | | | | | Upon start-up, _boot module is executed from frozen files to do early initialization, e.g. create and mount the flash filesystem. Then "boot.py" is executed if it exists in the filesystem. Finally, "main.py" is executed if exists to allow start-on-boot user applications. This allows a user to make a custom boot file or startup application without recompiling the firmware, while letting to do early initialization in Python code. Based on RFC https://github.com/micropython/micropython/issues/1955.
* extmod/modwebsocket.h: Split websocket-related defines for reuse.Paul Sokolovsky2016-04-10
|
* py/stream: ioctl(): Properly support 2-arg form.Paul Sokolovsky2016-04-10
|
* py/stream: Fix signed comparison issue.Paul Sokolovsky2016-04-10
|
* extmod/modwebsocket: Implement MP_STREAM_SET_DATA_OPTS ioctl.Paul Sokolovsky2016-04-10
| | | | Allows to set fragment type (txt/bin/etc.) for output records.
* extmod/modwebsocket: Allow to get type of last read data using ioctl().Paul Sokolovsky2016-04-10
|
* py/stream: Add Python-level ioctl() method.Paul Sokolovsky2016-04-10
| | | | | | | Will call underlying C virtual methods of stream interface. This isn't intended to be added to every stream object (it's not in CPython), but is convenient way to expose extra operation on Python side without adding bunch of Python-level methods.
* py/stream.h: Add bigger inventory of stream ioctl's.Paul Sokolovsky2016-04-10
|