This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Tanmatsu: software

    Work in progress

    The software for Tanmatsu is currently under active development. On this page we will regulary post updates on our progress. Don’t want to miss out on any updates? Join our Discord or Telegram groups.

    Device drivers

    The invisible though crucial part of all software running on Tanmatsu. These ESP-IDF components provide the building blocks for interfacing with the hardware on the Tanmatsu mainboard.

    ComponentStatusRepository
    MIPI DSI displayPublishedesp32-component-mipi-dsi-abstraction
    CoprocessorIn progressesp32-component-tanmatsu-coprocessor
    ES8156 audio DACIn progressesp32-component-es8156
    BMI270 IMUProof of conceptesp32-component-bmi270

    MIPI DSI display

    The Tanmatsu has a MIPI DSI display with a ST7701 controller. Espressif provides a driver for this controller, we added the correct initialization commands and configuration for the display on the Tanmatsu and packaged these in a component. In addition to the configuration of the Tanmatsu display the display included with the Espressif ESP32-P4 devkit is also supported by this component, allowing for easy switching between Tanmatsu hardware and the ESP32-P4 devkit.

    Coprocessor

    This driver component manages communication with the coprocessor firmware via I2C and exposes functions for accessing all coprocessor functionality.

    ES8156 audio DAC

    This driver component allows for configuring the ES8156 audio DAC via I2C.

    BMI270 IMU

    This driver component wraps the Bosch SDK for the BMI270 IMU, implementing communication via I2C for the ESP32-P4.

    In circuit programming

    These components are as invisible during normal use as they are useful when you need them. To do initial hardware bringup and to update the firmware of the coprocessor and the radio Tanmatsu needs a way to reprogram these chips from the ESP32-P4 application processor.

    ComponentStatusRepository
    RVSWD for CH32V203Publishedesp32-component-rvswd
    ESPTOOL² for ESP32-C6Proof of concept

    Tools

    The BSP (Board Support Package) wraps the driver components to provide an easy way to integrate board support for Tanmatsu (and other devices) into ESP-IDF projects.

    AppFS allows for dynamically installing and running ESP32 firmware from a special flash partition. This mechanism allows for installing and running apps directly from the Tanmatsu launcher.

    The LVGL BSP interface is a component providing the glue needed to use the LVGL graphics stack component provided by Espressif with the BSP component, mapping the keyboard buttons and correctly configuring the display and display rotation.

    ComponentStatusRepository
    BSPIn progressesp32-component-badge-bsp
    AppFSPublishedesp32-component-appfs
    LVGL BSP interfaceIn progress