circuitpython/zephyr
Paul Sokolovsky b0feef7a57 zephyr/zephyr_getchar: Update for recent Zephyr refactor of console hooks.
uart_irq_input_hook_set() was renamed to uart_console_in_debug_hook_install()
and accepts different params.
2016-10-28 17:53:10 +03:00
..
src zephyr/zephyr_getchar: Update for recent Zephyr refactor of console hooks. 2016-10-28 17:53:10 +03:00
Kbuild zephyr: Initial Zephyr RTOS port, Zephyr part. 2016-10-10 01:35:24 +03:00
Makefile zephyr: Initial implementation of machine.Pin. 2016-10-27 00:47:26 +03:00
Makefile.zephyr zephyr: Switch to microkernel, required for network to work in background. 2016-10-10 01:41:38 +03:00
README.md zephyr: Add README. 2016-10-10 21:23:58 +03:00
help.c zephyr: Implement the help() function. 2016-10-12 19:31:39 +03:00
machine_pin.c zephyr: Initial implementation of machine.Pin. 2016-10-27 00:47:26 +03:00
main.c zephyr: Add copyright blurbs. 2016-10-12 22:51:17 +03:00
modmachine.c zephyr: Initial implementation of machine.Pin. 2016-10-27 00:47:26 +03:00
modmachine.h zephyr: Initial implementation of machine.Pin. 2016-10-27 00:47:26 +03:00
modutime.c zephyr: Implement utime module. 2016-10-22 20:15:26 +03:00
mpconfigport.h zephyr: Initial implementation of machine.Pin. 2016-10-27 00:47:26 +03:00
mphalport.h zephyr: Fix mp_hal_set_interrupt_char() declaration to be compatible. 2016-10-26 17:53:28 +03:00
prj.conf zephyr/zephyr_getchar: Update for recent Zephyr refactor of console hooks. 2016-10-28 17:53:10 +03:00
prj.mdef zephyr: Switch to microkernel, required for network to work in background. 2016-10-10 01:41:38 +03:00
uart_core.c zephyr: Add copyright blurbs. 2016-10-12 22:51:17 +03:00
z_config.mk zephyr/Makefile: Automatically derive target-specific CFLAGS. 2016-10-10 02:06:06 +03:00

README.md

MicroPython port to Zephyr RTOS

This is an initial port of MicroPython to Zephyr RTOS (http://zephyrproject.org).

The port integrates well with Zephyr build system, using the latest features which will be available in 1.6.0, and thus requires Zephyr master to build against. All boards supported by Zephyr should be supported (but not all were tested).

At this time, only basic interactive prompt (REPL) over UART connection is supported. Over time, bindings for various Zephyr subsystems may be added.

Building

Follow to Zephyr web site for Getting Started instruction of installing Zephyr SDK, getting Zephyr source code, and setting up development environment. (Direct link: https://www.zephyrproject.org/doc/getting_started/getting_started.html). You may want to build Zephyr's own sample applications to make sure your setup is correct.

To build MicroPython port, in the port subdirectory (zephyr/), run:

make BOARD=<board>

If you don't specify BOARD, the default is qemu_x86 (x86 target running in QEMU emulator). Consult Zephyr documentation above for the list of supported boards.

Running

To run the resulting application in QEMU (for BOARDs like qemu_x86, qemu_cortex_m3):

make qemu

For deploying/flashing the application on a real board, follow Zephyr documentation for a given board.