Skip to content

ikstream/esp32-core

 
 

Repository files navigation

LifeSensor -- Esp32-core

ESP32 firmware for the lifesensor project.

Components

See components/README.md for an overview of features.

Project flavors

This repository features multiple idf projects for different purposes.

lifesensor
main project
lifesensor_test
unit tests of components

Build & Flash & Run

  • via Docker
    1. Choose flavor
      • i.e. cd lifesensor
    2. Building
      • make build
        1. creates idf docker image if needed
        2. starts idf docker container to build project
    3. Choosing device
      • make dev
        • configures which serial port to use
    4. Flashing
      • make flash
        1. creates idf docker image if needed
        2. starts idf docker container to flash project to connected ESP via specified device by make dev
    5. Monitoring
      • make monitor
        1. creates idf docker image if needed
        2. starts idf docker container to connect to ESP via specified device by make dev
  • via local esd-idf toolchain
    1. Choose flavor
      • i.e. cd lifesensor
    2. Building
      • idf.py build
    3. Flashing
      • idf.py flash -p <device>
    4. Monitoring
      • idf.py monitor -p <device>

Simulating with qemu

Important: Qemu port of the xtensa architecture is in active development, each docker image creation builds with latest version, mileage may vary!

  • via Docker
    • simple execution
      1. Choose flavor
        • i.e. cd lifesensor
      2. Building
        • make build
          1. creates idf docker image if needed
          2. starts idf docker container to build project
      3. Start qemu
        • make qemu
          1. creates qemu docker image if needed
          2. starts qemu docker container to simulate project
    • with gdb
      1. Choose flavor
        • i.e. cd lifesensor
      2. Building
        • make build
          1. creates docker docker image if needed
          2. starts qemu docker container to simulate project
      3. Start qemu and wait for gdb connection
        • make qemu-gdb
          1. creates qemu docker image if needed
          2. starts qemu docker container to simulate project
      4. Start gdb and connect to qemu in second terminal
        • make gdb-qemu
          1. starts idf docker container to run gdb

Contributing

See CONTRIBUTING.md

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 47.6%
  • Makefile 36.9%
  • CMake 7.4%
  • Dockerfile 5.8%
  • Assembly 2.3%