Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Demo implementation for ESP32S3 #38

Open
wants to merge 23 commits into
base: main
Choose a base branch
from
Open

Demo implementation for ESP32S3 #38

wants to merge 23 commits into from

Conversation

PaulaScharf
Copy link
Member

@PaulaScharf PaulaScharf commented Nov 11, 2024

Added a new folder "sensebox-bike-atrai-esp32s3" to house the implementation. Check out the README of that folder for some performance tests on an Adafruit Feather ESP32S3.

The implementation is covering the following:

  • Distancesensor + classification
  • Accelerationsensor + classification
  • BLE
  • Display
  • RGBLED
  • Dustsensor
  • Humiditysensor
  • Batterysensor

I was able to connect to the device with the currently used senseBox:bike app and record measurements.
The ToF should run on its own core, because at the moment it is the bottleneck and needs to have the highest possible frequency it can get.

Other open issues:

  • sending more than one value in a buffer through one characteristic is done differently and needs to be handled accordingly in the app
  • atleast one of the sensors doesnt send data if all sensors are connected and running
  • the ToF and the acceleration sensor should loop in a regular interval

@PaulaScharf
Copy link
Member Author

Do not set the taskDelay to 0. It will impact the loop time of the other sensors somehow

@PaulaScharf
Copy link
Member Author

I finally managed to successfully run two edgeImpulses. I had to create a new class specifically for combining the distance and acceleration sensor in a single file. Otherwise I would get a "multiple definition" error.
For some reason it is also important to include the multi impulse library in the cpp instead of the header. I dont know why.
Some tests with the full setup with all sensors have to be done now.

@PaulaScharf
Copy link
Member Author

PaulaScharf commented Mar 19, 2025

the edge impulse implementation works now with all sensors. The interval for the two ToFs is not completely stable (sometimes it loops every 117ms, other times every 96ms or 66ms). Not sure why.
The acceleration sensor interval is stable at 43ms. The other sensors roughly every 1000ms.
I occasionally have issues when I turn on the display, so I can recommend leaving it off

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant