aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-30py/ringbuf.h: Add reusable ring buffer class.Paul Sokolovsky
Features inline get/put operations for the highest performance. Locking is not part of implementation, operation should be wrapped with locking externally as needed.
2016-03-30docs: network: esp8266: .scan() is now synchronous and returns result list.Paul Sokolovsky
2016-03-30docs: network: esp8266: status is WLAN object method.Paul Sokolovsky
2016-03-30esp8266: Support synchronous wifi scanning.Damien George
That is: aps = if0.scan() TODO: make sure that returned list has tuple with values in "standard" order (whatever that standard is).
2016-03-29py/parsenum: Use pow function to apply exponent to decimal number.Damien George
Pow is already a dependency when compiling with floats, so may as well use it here to reduce code size and speed up the conversion for most cases.
2016-03-29py/formatfloat: Fix further cases of buffer overflow in formatting.Damien George
Includes extensive test cases to catch hopefully all cases where buffer might overflow.
2016-03-29py/formatfloat: Fix case of float format where leading digit was "10".Damien George
When taking the logarithm of the float to determine the exponent, there are some edge cases that finish the log loop too large. Eg for an input value of 1e32-epsilon, this is actually less than 1e32 from the log-loop table and finishes as 10.0e31 when it should be 1.0e32. It is thus rendered as :e32 (: comes after 9 in ascii). There was the same problem with numbers less than 1.
2016-03-29esp8266: Reduce heap size for now to avoid random segfaults on WiFi connect.Paul Sokolovsky
2016-03-29esp8266: Let esp8266 "os" messages go to standard (REPL) UART.Paul Sokolovsky
That's definitely helpful for debugging.
2016-03-29esp8266/esp_mphal: Add support for debug UART-only output.Paul Sokolovsky
Helpful when debugging dupterm support (because otherwise all output is spooled to dupterm too). To use: mp_printf(&mp_debug_print, "...");
2016-03-29esp8266: Enable uos.dupterm() method.Paul Sokolovsky
2016-03-29esp8266: Add basic support for duplicating REPL output.Paul Sokolovsky
2016-03-29esp8266: Implement os.urandom function.Damien George
Uses what is suspected to be a hardware random number generator.
2016-03-28esp8266: Allow to build without FatFs support again.Paul Sokolovsky
2016-03-28esp8266: Support importing modules from filesystem.Paul Sokolovsky
2016-03-28docs: Correct pin interrupt example code for the WiPy.danicampora
2016-03-28esp8266: Zero out fs_user_mount state on (soft) reset.Damien George
Otherwise device stays mounted on soft reset and leads to corruption (since block device object is now gone).
2016-03-28esp8266/moduos: Add os.remove(), proxying to VFS object.Paul Sokolovsky
2016-03-28esp8266/moduos: Factor out VFS method proxy helper.Paul Sokolovsky
2016-03-28esp8266/moduos: Add listdir() proxy for MP_STATE_PORT(fs_user_mount)[0].Paul Sokolovsky
I.e. os.listdir(...) will redirect to MP_STATE_PORT(fs_user_mount)[0].listdir(...).
2016-03-28esp8266/moduos: Use mp_rom_map_elem_t for static const dictionary.Damien George
2016-03-28esp8266: deploy: Use --flash_size=8m option to esptool.py.Paul Sokolovsky
Most esp8266 modules have at least 1MB (8Mbit) of flash. If not set, vendor functions allow to access only first 512K.
2016-03-27esp8266/esp8266.ld: Put FatFs to FlashROM.Paul Sokolovsky
2016-03-27esp8266: Enable FatFs support.Paul Sokolovsky
2016-03-27esp8266/README: Update for the current status of the port.Paul Sokolovsky
2016-03-27esp8266/modesp: flash_read(): Accept buffer to read to as a second argument.Paul Sokolovsky
2016-03-27esp8266/modesp: flash_write(): Writes in multiples of 4 bytes.Paul Sokolovsky
2016-03-27esp8266: Set up UART handling task soon into init process.Paul Sokolovsky
Otherwise, events may be posted to non-initialized task, which leads to segfaults.
2016-03-27extmod/vfs_fat_diskio: Actually support sectors != 512 with Python blockdevs.Paul Sokolovsky
2016-03-27unix/unix_mphal: Hack to make uos.dupterm() actually work.Paul Sokolovsky
See https://github.com/micropython/micropython/issues/1736 for the list of complications. This workaround instead of duplicating REPL to another stream, switches to it, because read(STDIN) we use otherwise is blocking call, so it and custom REPL stream can't be used together.
2016-03-27py/stream: Fix stupid thinko with variable naming/shadowing.Paul Sokolovsky
2016-03-27docs/esp8266: esp.mac() replaced with network.WLAN.mac().Paul Sokolovsky
2016-03-27docs/esp8266: esp.wifi_mode() replaced with network.WLAN.active().Paul Sokolovsky
2016-03-27docs/esp8266: phy_mode() moved to network module.Paul Sokolovsky
2016-03-26esp8266: Put modpybi2c.o to FlashROM.Paul Sokolovsky
2016-03-26esp8266/tests: Add neopixel.py test.Damien George
2016-03-26esp8266: Add esp.neopixel_write function to bit-bang WS2812 data.Damien George
2016-03-26esp8266: Link ADC class into machine module.Damien George
2016-03-26esp8266: Put utils.o to FlashROM.Paul Sokolovsky
2016-03-26esp8266: Put lexerstr32.o into FlashROM.Paul Sokolovsky
2016-03-26esp8266/esppwm.c: Fix IRQ handler prototype.Paul Sokolovsky
2016-03-26esp8266: Add PWM support.Damien George
PWM implementation uses a timer and interrupts (FRC1), taken from Espressif's/NodeMCU's implementation and adapted for our use. 8 channels are supported, on pins 0, 2, 4, 5, 12, 13, 14, 15. Usage: import machine pwm0 = machine.PWM(machine.Pin(0)) pwm0.freq(1000) pwm0.duty(500) Frequency is shared (ie the same) for all channels. Frequency is between 1 and 1000. Duty is between 0 and 1023.
2016-03-25esp8266: Implement software SPI class.Damien George
Supports speeds up to 500k baud, polarity=0/1, phase=0/1, and using any pins. Only supports MSB output at the moment.
2016-03-25extmod/modlwip: lwip_socket_setsockopt: Handle option value properly.Paul Sokolovsky
2016-03-25extmod/modlwip: Add lwip->POSIX error map for lwIP 1.4.0.Paul Sokolovsky
Between 1.4.0 and 1.4.1, lwIP errors were renumbered.
2016-03-25extmod/modlwip: lwip_tcp_send: Handle properly send buffer full condition.Paul Sokolovsky
Per POSIX http://pubs.opengroup.org/onlinepubs/9699919799/functions/send.html : "If space is not available at the sending socket to hold the message to be transmitted, and the socket file descriptor does not have O_NONBLOCK set, send() shall block until space is available. If space is not available at the sending socket to hold the message to be transmitted, and the socket file descriptor does have O_NONBLOCK set, send() shall fail [with EAGAIN]."
2016-03-25extmod/modlwip: Implement setsocketopt(SO_REUSEADDR).Paul Sokolovsky
2016-03-25docs/esp8266/quickref: Add note about GPIO16.Paul Sokolovsky
2016-03-25docs/esp8266/quickref: Note that timers supported are virtual ones.Paul Sokolovsky
2016-03-25docs/esp: Remove getaddrinfo(), now in socket module as expected.Paul Sokolovsky