Damien George
87c6250b4c
|
10 years ago | |
---|---|---|
.. | ||
Makefile | 10 years ago | |
README.md | 10 years ago | |
eagle.rom.addr.v6.ld | 10 years ago | |
esp8266.ld | 10 years ago | |
esp_mphal.c | 10 years ago | |
esp_mphal.h | 10 years ago | |
etshal.h | 10 years ago | |
gccollect.c | 10 years ago | |
gccollect.h | 10 years ago | |
gchelper.s | 10 years ago | |
main.c | 10 years ago | |
makeimg.py | 10 years ago | |
modesp.c | 10 years ago | |
modpyb.c | 10 years ago | |
modpyb.h | 10 years ago | |
modpybpin.c | 10 years ago | |
mpconfigport.h | 10 years ago | |
qstrdefsport.h | 10 years ago | |
strtoll.c | 10 years ago | |
uart.c | 10 years ago | |
uart.h | 10 years ago | |
uart_register.h | 10 years ago | |
user_config.h | 10 years ago |
README.md
Micro Python port to ESP8266
This is a port of Micro Python to the Espressif ESP8266 wifi module.
Currently implemented features include:
- REPL (Python prompt) over UART0.
- 24k heap RAM available for Python code.
- Garbage collector, exceptions.
- Unicode support.
- Builtin modules: gc, array, collections, io, struct, sys.
- C long-long type used as bignum implementation (gives 64 signed ints).
Note that floating-point numbers are not supported.
On the TODO list:
- Wifi support.
- GPIO support.
- Internal filesystem using the flash.
- ...
Build instructions
The tool chain required for the build is the OpenSource ESP SDK, which can be
found at https://github.com/pfalcon/esp-open-sdk. Clone this repository and
run make
in its directory to build and install the SDK locally.
Then, to build Micro Python for the ESP8266, just run:
$ make
This should produce binary images in the build/
subdirectory. To flash them
to your ESP8266, use:
$ make deploy
This will use the esptool.py
script to download the images. You must have
your ESP module in the bootloader, and connected to a serial port on your PC.
The default serial port is /dev/ttyACM0
. To specify another, use, eg:
$ make PORT=/dev/ttyUSB0 deploy
The images that are built are:
firmware.elf-0x00000.bin
: to be flashed at 0x00000firmware.elf-0x10000.bin
: to be flashed at 0x10000
There is also a combined image, made up of the above 2 binary files with the appropriate padding:
firmware-combined.bin
: to be flashed at 0x00000