summaryrefslogtreecommitdiff
path: root/esp8266/Makefile
AgeCommit message (Collapse)Author
2016-10-16esp8266, stmhal, unix: MAKE_FROZEN is consistently defined in mkenv.mk.Paul Sokolovsky
2016-10-07esp8266: Add FLASH_MODE,FLASH_SIZE options for make deploy target.dmanso
Added options to make deploy so it can be used for ESP8266 boards with other flash configurations. For example NodeMCU DEVKIT V1.0 can now use: $ make FLASH_MODE=dio FLASH_SIZE=32m deploy
2016-09-29lib/interrupt_char: Factor out typical Ctrl+C handling from esp8266 port.Paul Sokolovsky
Utility functions for keyboard interrupt handling, to be reused across (baremetal) ports.
2016-09-17py: Move frozen modules rules from esp8266 port for reuse across ports.Paul Sokolovsky
A port now just needs to define FROZEN_DIR var and add $(BUILD)/frozen.c to SRC_C to support frozen modules.
2016-09-17esp8266/Makefile: Rename SCRIPTDIR to FROZEN_DIR for consistency.Paul Sokolovsky
With FROZEN_MPY_DIR.
2016-09-05unix,stmhal,esp8266: When find'ing frozen files follow symbolic links.Damien George
It's useful to be able to use symbolic links to add files and directories to the set of scripts to be frozen.
2016-09-05py: Add MICROPY_USE_INTERNAL_PRINTF option, defaults to enabled.Delio Brignoli
This new config option allows to control whether MicroPython uses its own internal printf or not (if not, an external one should be linked in). Accompanying this new option is the inclusion of lib/utils/printf.c in the core list of source files, so that ports no longer need to include it themselves.
2016-09-04esp8266/modmachine: Simplify SPI class implementation multiplexing.Paul Sokolovsky
modpybhspi now does the needed multiplexing, calling out to modpybspi (bitbanging SPI) for suitable peripheral ID's. modmachinespi (previous multiplexer class) thus not needed and removed. modpybhspi also updated to following standard SPI peripheral naming: SPI0 is used for FlashROM and thus not supported so far. SPI1 is available for users, and thus needs to be instantiated as: spi = machine.SPI(1, ...)
2016-08-31unix,stmhal,esp8266: When find'ing frozen files don't use extra slash.Damien George
This extra forward slash for the starting-point directory is unnecessary and leads to additional slashes on Max OS X which mean that the frozen files cannot be imported. Fixes #2374.
2016-08-28esp8266/modmachinewdt: Implement machine.WDT class.Paul Sokolovsky
2016-08-19esp8266/modmachinespi: Add a factory method for SoftSPI/HSPIRadomir Dopieralski
2016-08-19esp8266/modpybhspi: Add a HSPI module for hardware SPI supportRadomir Dopieralski
This module uses ESP8266's SPI hardware, which allows much higher speeds. It uses a library from https://github.com/MetalPhreak/ESP8266_SPI_Driver
2016-07-31esp8266: Enable btree module.Paul Sokolovsky
2016-07-16esp8266: Cache Xtensa-built libaxtls.a in local build dir.Paul Sokolovsky
Allows to build the library variant for other archs in parallel.
2016-07-13esp8266: Select axTLS for SSL implementation, following recent refactor.Paul Sokolovsky
2016-06-29esp8266: Enable frozen bytecode, with scripts in modules/ subdir.Damien George
To start with, the critical scripts _boot.py and flashbdev.py are frozen to improve performance and reduce RAM consumption. Saves about 1000 bytes of heap RAM for a bare boot with filesystem.
2016-06-12esp8266/Makefile: Enable --verify option for esptool.py write_flash.Paul Sokolovsky
Based on my experience, there's rather non-zero chance to have an image be flashed incorrectly. As --verify option is now works well in teh latest esptool.py, enable it by default.
2016-05-27esp8266/Makefile: Document "disable" value for UART_OS.Paul Sokolovsky
2016-05-26esp8266: Enable DHT C-level driver.Damien George
Exposed as esp.dht_readinto. Probably should go somewhere less port-specific.
2016-05-19esp8266: Add APA102 serial individually controllable LEDs support.misterdanb
APA102 is a new "smart LED", similar to WS2812 aka "Neopixel".
2016-05-02esp8266/Makefile: Be sure to pass cross-compiling AR when building axtls.Paul Sokolovsky
Fixes build under MacOSX.
2016-04-29esp8266/help: Implement help() builtin.Paul Sokolovsky
2016-04-28esp8266: Set suitable values for axtls's RT_MAX_PLAIN_LENGTH & RT_EXTRA.Paul Sokolovsky
2016-04-28esp8266: Move pyb.info() function to esp module and remove pyb module.Damien George
All functionality of the pyb module is available in other modules, like time, machine and os. The only outstanding function, info(), is (temporarily) moved to the esp module and the pyb module is removed.
2016-04-28esp8266/Makefile: Enable "ussl" module.Paul Sokolovsky
axTLS should be built first using "make axtls".
2016-04-28esp8266/Makefile: Support linking with axTLS built from source.Paul Sokolovsky
2016-04-27esp8266/axtls_helpers: Helper/wrapper functions for axTLS.Paul Sokolovsky
2016-04-27esp8266/Makefile: Override abort() when building axtls.Paul Sokolovsky
abort() is a special function known to compiler as no-return.
2016-04-27esp8266/Makefile: Add target to build axTLS.Paul Sokolovsky
2016-04-25py: Move call_function_*_protected() functions to py/ for reuse.Paul Sokolovsky
They almost certainly needed by any C code which calls Python callbacks.
2016-04-16esp8266: Adapt port to use new auto-qstr generation.Damien George
2016-04-15esp8266: Enable input() builtin.Paul Sokolovsky
2016-04-14esp8266: Separate 1-wire timing funcs from Python module to save iRAM.Damien George
esponewire.c contains low-level timing-critical functions that go in iRAM. modonewire.c contains Python wrapper code.
2016-04-14esp8266: Add hard IRQ callbacks for pin change on GPIO0-15.Damien George
2016-04-12esp8266: Switch from using custom I2C driver to generic extmod one.Damien George
2016-04-06esp8266: Add initial implementation of machine.UART.Damien George
Currently UART(0) and UART(1) are exposed and only uart.write works.
2016-04-03esp8266: Switch back to flashing combined firmware (single file).Paul Sokolovsky
With gap between segments minimized, there's not much padding to flash, so no big speed overhead.
2016-04-03esp8266: Minimize gap between Inst/DataRAM segments and FlashROM segment.Paul Sokolovsky
With .rodata being in FlashROM now, gap can be much smaller now. InstRAM can be max 32K, and with segment headers, that already makes it more than 32K. Then there's some .data still, and the next Flash page boundary is 0x9000. That figure should be more or less future-proof. TODO: Refactor makeimg to take FlashROM segment offset from file name.
2016-04-03esp8266: Move .rodata where it belongs with -mforce-l32 help.Paul Sokolovsky
2016-03-29esp8266: Let esp8266 "os" messages go to standard (REPL) UART.Paul Sokolovsky
That's definitely helpful for debugging.
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: Enable FatFs support.Paul Sokolovsky
2016-03-26esp8266: Add esp.neopixel_write function to bit-bang WS2812 data.Damien George
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-24esp8266: Add onewire helper functions as C module.Damien George
Includes functions to read and write bits and bytes.
2016-03-24esp8266: Add basic I2C driver, with init and writeto methods.Damien George
Tested and working with SSD1306 I2C display.
2016-03-17esp8266: Store frozen modules in FlashROM.Paul Sokolovsky
Requires special lexer to access their contents.
2016-03-12esp8266: Switch to lwIP built from source.Paul Sokolovsky
Using https://github.com/pfalcon/esp-open-lwip project.
2016-03-11esp8266: Rejig Makefile so extmod/modlwip.o is placed under build/.Damien George