The application code should be portable, since it's all hooking into OpenBookDevice and calls to the hardware at a lower level. But we'll need work to port some of our underlying uses of the Arduino library to Zephyr. Namely:
• Refactoring Babel to talk to the SPI Flash using Zephyr's SPI calls instead of Arduino's
• Refactoring out Adafruit_GFX and replacing it with Zephyr's native framebuffer
• Refactoring the MicroSD stuff to use Zephyr's native SDIO
It comes with a usable driver for our GDEW042T2 display.
WIP device tree for the Pi Pico book: openbook_pico.zip
It can be placed in zephyr/boards/arm so far it's only been tested with the samples/drivers/display demo
Pi Pico:
west build -p always -b openbook_pico samples/drivers/display && cp build/zephyr/zephyr.uf2 /Volumes/RPI-RP2/
For the POSIX native executable (doesn't work on Windows or Mac):
west build -p always -b native_posix_64 samples/drivers/display && ./build/zephyr/zephyr.elf
What would be REALLY interesting is if we can get the SD card disk access hooked up with standard C file system calls. Letting us work with files using more standard C things like fopen, and potentially draw in a broader range of libraries to help with various things we want to do. SQLite for the book library / zip decompression for epub is the dream here.
The application code should be portable, since it's all hooking into OpenBookDevice and calls to the hardware at a lower level. But we'll need work to port some of our underlying uses of the Arduino library to Zephyr. Namely: • Refactoring Babel to talk to the SPI Flash using Zephyr's SPI calls instead of Arduino's • Refactoring out Adafruit_GFX and replacing it with Zephyr's native framebuffer • Refactoring the MicroSD stuff to use Zephyr's native SDIO It comes with a usable driver for our GDEW042T2 display.
WIP device tree for the Pi Pico book: openbook_pico.zip It can be placed in
zephyr/boards/arm
so far it's only been tested with thesamples/drivers/display
demoPi Pico:
west build -p always -b openbook_pico samples/drivers/display && cp build/zephyr/zephyr.uf2 /Volumes/RPI-RP2/
For the POSIX native executable (doesn't work on Windows or Mac):
west build -p always -b native_posix_64 samples/drivers/display && ./build/zephyr/zephyr.elf
What would be REALLY interesting is if we can get the SD card disk access hooked up with standard C file system calls. Letting us work with files using more standard C things like
fopen
, and potentially draw in a broader range of libraries to help with various things we want to do. SQLite for the book library / zip decompression for epub is the dream here.