aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-04-13py/emitglue: Move typedef of mp_raw_code_t from .c to .h file.Damien George
It's needed by frozen bytecode.
2016-04-13tests: Skip async tests for native emitter.Damien George
2016-04-13tests: Add .exp files for async tests, so they can run with Python 3.4.Damien George
2016-04-13ports: Disable async/await on bare-arm, minimal, pic16bit, cc3200.Damien George
It costs 1188 bytes of code on Thumb 2 archs.
2016-04-13tests: Add 6 tests for async await/for/with.Damien George
2016-04-13py: Fix constant folding and inline-asm to work with new async grammar.Damien George
2016-04-13py: add async/await/async for/async with syntaxpohmelie
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`.
2016-04-13esp8266/esp_mphal: call_dupterm_read(): Fix order of deactivating on EOF.Paul Sokolovsky
First deactivate, then print diagnostic message.
2016-04-13esp8266/esp_mphal: Don't swallow exceptions in dupterm's read()/write().Paul Sokolovsky
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.
2016-04-13extmod/moduos_dupterm: Don't swallow exceptions in dupterm's read()/write().Paul Sokolovsky
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.
2016-04-13lib/utils/printf: Rework overriding printer of DEBUG_printf().Paul Sokolovsky
By default it uses mp_plat_print, but a port may override it to another value with MICROPY_DEBUG_PRINTER_DEST.
2016-04-13stmhal: Properly handle RTS/CTS flow control for buf/unbuf transfers.Peter Hinch
Fixes issues #1912 and #1913. UART documentation is also updated.
2016-04-13esp8266: In callback helpers, pop nlr_buf on successful call.Damien George
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.
2016-04-13py/modbuiltins: __repl_print__: Add comment about setting "_" special var.Paul Sokolovsky
2016-04-12extmod/machine_i2c: Implement I2C memory reading/writing.Damien George
2016-04-12extmod/machine_i2c: Fix I2C reading by sending ack/nack at end of byte.Damien George
2016-04-12drivers: Add SSD1306 OLED driver, with I2C and SPI interfaces.Damien George
2016-04-12esp8266: Enable framebuf module.Damien George
2016-04-12esp8266: Switch from using custom I2C driver to generic extmod one.Damien George
2016-04-12esp8266: Implement basic C-level pin HAL.Damien George
2016-04-12esp8266: Protect modpyb.h header file from multiple inclusions.Damien George
Also include py/obj.h so the header is self contained.
2016-04-12stmhal: Enable framebuf module.Damien George
2016-04-12stmhal: Use new generic I2C object in machine module.Damien George
2016-04-12stmhal: Implement basic C-level pin HAL.Damien George
2016-04-12extmod: Add generic machine.I2C class, with bit-bang I2C.Damien George
Should work on any machine that provides the correct pin functions.
2016-04-12extmod: Add initial framebuf module.Damien George
2016-04-12esp8266/scripts/inisetup.py: Use "-" in AP ESSID instead of space.Damien George
2016-04-12esp8266/scripts/inisetup.py: Set WPA/WPA2 AP mode with a predefined password.Paul Sokolovsky
2016-04-12esp8266: Add Python modules for initial configuration.Paul Sokolovsky
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.
2016-04-12esp8266/scripts/main.py: Remove stale file.Paul Sokolovsky
2016-04-12esp8266/modnetwork: .config(): Add "password" param (W/O).Paul Sokolovsky
2016-04-12esp8266/modnetwork: .config(): Add "authmode" param.Paul Sokolovsky
2016-04-12esp8266/modnetwork: .config(): Check interface whose config is requested.Paul Sokolovsky
2016-04-11unix: Build with MICROPY_PY_UHASHLIB_SHA1 if already building with axTLS.Paul Sokolovsky
2016-04-11esp8266: Enable websocket module.Paul Sokolovsky
2016-04-11docs: Bump version to 1.7.Damien George
2016-04-11extmod/modwebsocket: write(): Support write size beyond 125 bytes.Paul Sokolovsky
2016-04-11extmod/modlwip: Fix for loss of data in unaccepted incoming sockets.Paul Sokolovsky
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.
2016-04-11esp8266/modesp: Add freemem() and meminfo() functions.Paul Sokolovsky
They call into vendor SDK functions system_get_free_heap_size() and system_print_meminfo() respectively.
2016-04-10esp8266/main: mp_builtin_open(): Implement, using vfs_proxy_call().Paul Sokolovsky
2016-04-10py/stream: Move uPy func obj wrappers to below their respective funcs.Damien George
2016-04-10py/stream: Simplify arg extraction logic for stream_ioctl.Damien George
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.
2016-04-10esp8266: Implement multistage bootstrap sequence.Damien George
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.
2016-04-10extmod/modwebsocket.h: Split websocket-related defines for reuse.Paul Sokolovsky
2016-04-10py/stream: ioctl(): Properly support 2-arg form.Paul Sokolovsky
2016-04-10py/stream: Fix signed comparison issue.Paul Sokolovsky
2016-04-10extmod/modwebsocket: Implement MP_STREAM_SET_DATA_OPTS ioctl.Paul Sokolovsky
Allows to set fragment type (txt/bin/etc.) for output records.
2016-04-10extmod/modwebsocket: Allow to get type of last read data using ioctl().Paul Sokolovsky
2016-04-10py/stream: Add Python-level ioctl() method.Paul Sokolovsky
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.
2016-04-10py/stream.h: Add bigger inventory of stream ioctl's.Paul Sokolovsky