Files
AI-on-the-edge-device/code
jomjol 2a7f3b33a3 Extend InfluxDBv1 with individual topic names (#2319)
* Implement individual influx topic

* Update interface_influxdb.cpp

* Update interface_influxdb.cpp

* Update FieldName

* analogROI: Activate save button after ROI creation (#2326)

* Migration of PlatformIO 5.2.0 to 6.1.0 (resp. ESP IDF from 4.4.2 to 5.0.1) (#2305)

* Migration to PlatformIO 6.1.0

* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!

* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.

* cleanup

* fix leading NaN (#2310)

* Migration to PlatformIO 6.1.0

* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!

* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.

* cleanup

* Task watchdog has new config name

* Fix return value check. It must be something else than ESP_FAIL, but it does not need to be ESP_OK!

* add missing strucures to work around new RMTMEM restriction (untested)

---------

Co-authored-by: CaCO3 <caco@ruinelli.ch>

* Keep MainFlowTask alive to handle reboot (#2325)

* Shared PSRAM memory (#2285)

* enable PSRAM logging

* add extra functions for psram shared memroy handling

* CImageBasis objects still should used dynamic memory (eg. rawImage), haw ever tmpImage must be placed inside the shared memory

* Place all STBI allocs inside the shared memory

* The models are placed in the shared PSRAM reagion and must be allocated through the dedicated functions

* .

* renaming

* fix cast warning

* add flag to switch STBI PSRAM usage

* improve PSRAM shared handling

* reserve shared PSRAM as early as possible

* init logging eralier so we can use it in PSRAM shared alloc

* move Wifi_LWIP, BSS_SEG and MQTT Outbox into PSRAM to ffree internal memory

* Check if model fits into reserved shared memory

* Update code/components/jomjol_tfliteclass/CTfLiteClass.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_flowcontroll/ClassFlowControll.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_image_proc/CImageBasis.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* Update code/components/jomjol_helper/psram.cpp

* .

* .

* .

* .

* Korrektur Merge Conflict in main.cpp

---------

Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>

* fix PSRAM init return value check

* Extend incl. indiv. Measurement

* Implement UX

* Update ClassFlowInfluxDBv2.cpp

* Implement individual influx topic

* Update interface_influxdb.cpp

* Update interface_influxdb.cpp

* Update FieldName

* Extend incl. indiv. Measurement

* Implement UX

* Update ClassFlowInfluxDBv2.cpp

* Update main.cpp

---------

Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
2023-04-20 22:00:13 +02:00
..
2022-09-25 08:49:47 +02:00
2023-04-19 21:17:41 +02:00
2020-11-20 19:34:55 +01:00
2023-03-12 22:52:30 +01:00
2023-01-27 21:25:58 +01:00
2023-01-27 21:25:58 +01:00
2020-11-20 19:34:55 +01:00
2022-10-25 13:19:26 +02:00
2023-04-19 21:17:41 +02:00

Build

Preparations

git clone https://github.com/jomjol/AI-on-the-edge-device.git
cd AI-on-the-edge-device
git checkout rolling
git submodule update --init

Build and Flash within terminal

See further down to build it within an IDE.

Compile

cd code
platformio run --environment esp32cam

Upload

pio run --target upload --upload-port /dev/ttyUSB0

Alternatively you also can set the UART device in platformio.ini, eg. upload_port = /dev/ttyUSB0

Monitor UART Log

pio device monitor -p /dev/ttyUSB0

Build and Flash with Visual Code IDE

  • Download and install VS Code

  • Install the VS Code platform io plugin

    • Check for error messages, maybe you need to manually add some python libraries
      • e.g. in my Ubuntu a python3-env was missing: sudo apt-get install python3-venv
  • git clone this project

    • in Linux:

      git clone https://github.com/jomjol/AI-on-the-edge-device.git
      cd AI-on-the-edge-device
      git checkout rolling
      git submodule update --init
      
  • in VS code, open the AI-on-the-edge-device/code

    • from terminal: cd AI-on-the-edge-device/code && code .
  • open a pio terminal (click on the terminal sign in the bottom menu bar)

  • make sure you are in the code directory

  • To build, type platformio run --environment esp32cam

    • or use the graphical interface:
    • the build artifacts are stored in code/.pio/build/esp32cam/
  • Connect the device and type pio device monitor. There you will see your device and can copy the name to the next instruction

  • Add upload_port = you_device_port to the platformio.ini file

  • make sure an sd card with the contents of the sd_card folder is inserted and you have changed the wifi details

  • pio run --target erase to erase the flash

  • pio run --target upload this will upload the bootloader.bin, partitions.bin,firmware.bin from the code/.pio/build/esp32cam/ folder.

  • pio device monitor to observe the logs via uart