Commit Graph

101 Commits

Author SHA1 Message Date
Peter Barker ab4614dd98 AP_HAL_ESP32: stop making python python3
this isn't something we should be doing to people's environments
2024-12-17 09:19:20 +11:00
Rhys Mainwaring 5b935a3838 AP_HAL_ESP32: update cmake minimum version
- The ESP32 API guide states the cmake version must be 3.16 or greater.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-15 08:55:04 -06:00
Rhys Mainwaring d1cbf30286 AP_HAL_ESP32: add targets to measure static memory sizes
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-12 23:16:48 -06:00
Rhys Mainwaring eecac5eead AP_HAL_ESP32: reduce sdcard mount config max_files
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-12 22:54:18 -06:00
Rhys Mainwaring 3c561e215f AP_HAL_ESP32: set default cpu frequency to 240MHz
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-10 10:32:47 +11:00
Thomas Watson a14fb9ab28 AP_HAL_ESP32: regenerate sdkconfig after sdkconfig.defaults change
Ensures the sdkconfig does not get out of date as updates are made to
the defaults. The sdkconfig can still be manually changed for testing.
2024-12-10 10:32:47 +11:00
Thomas Watson 535f6875a8 AP_HAL_ESP32: move generated sdkconfig to build folder
Ensures it gets cleaned with `./waf clean`. Users will hopefully delete
and not be confused by the old one as it will now show up as an
untracked file.
2024-12-10 10:32:47 +11:00
Rhys Mainwaring 85f8ae8aa3 AP_HAL_ESP32: disable define of HAL_ESP32_RCIN on esp32empty
- RMTSigReader issue with rmt(legacy): RMT RX BUFFER FULL

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-23 21:50:51 -06:00
Rhys Mainwaring 7c1af5a1a9 AP_HAL_ESP32: format scheduler stack declarations
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-23 13:43:05 -06:00
David Buzz f10333e787 AP_HAL_ESP32: sneak the scheduler Stack Sizes values down to smaller but still ok-we-hope values.
WARN - may cause crashes!
2024-11-23 13:43:05 -06:00
Thomas Watson 5398f1a499 AP_HAL_ESP32: move scheduler stats display behind SCHEDDEBUG
It takes ~100ms and causes noticeable control glitches.
2024-11-22 12:20:52 -06:00
Andrew Tridgell d90d46c02d AP_HAL_ESP32: removed heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell de49c9b1bc AP_HAL_ESP32: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Rhys Mainwaring f9e319d114 AP_HAL_ESP32: enable uart rc
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-19 11:21:09 +11:00
Peter Barker 35f2dce575 AP_HAL_ESP32: re-order initialiser lines so -Werror=reorder will work 2024-11-13 06:40:37 +11:00
ARg a6f00a34b1 AP_HAL_ESP32: RCOutput ported to new mcpwm driver 2024-10-27 21:19:29 +11:00
Bayu Laksono d27742983f AP_HAL_ESP32: Switch WIFI task from FASTCPU to SLOWCPU
Switching WIFI task from FASTCPU to SLOWCPU seems to bring more balance between CPUs and thus increasing connection reliabiiity
2024-10-27 21:16:28 +11:00
ARg 47d391fc6d AP_HAL_ESP32: ADC driver ported to new idf 5.x driver and debugged 2024-10-08 10:29:02 +11:00
Bayu Laksono 6d672d42b9 AP_HAL_ESP32: Add GPIO driver and buzzer 2024-10-01 21:06:39 -05:00
ARg 1ef0f1a63f AP_HAL_ESP32: Migration of ESP32 targets from idf 4.4 to 5.3 consisting of:
- modification of CMakeLists to use new component names of idf 5.3;
- removing big sdkconfig, which changes a lot, when upgrading idf and to use sdkconfig.defaults, which contain only non default defines;
- Updated idf installation packages list, according to espressif documentation;
- Updated README.md to reflect changes in sdkconfig handling;
- Fixed WDT in Scheduler, it was broken with idf 5.3;
- fixed compilation issues with GCC 13 (which is used by idf 5.3);
- fixed bug in case when HAL_ESP32_WIFI defined as 0 (disable wifi)
- Added ESP32 targets sdkconfig (auto generated) to .gitignore
2024-10-01 09:25:35 +10:00
Peter Barker cc9279713a AP_HAL_ESP32: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
muramura 68bb55841a AP_HAL_ESP32: Change the magic number to a defined value 2024-09-12 14:23:10 +10:00
David Buzz 7846cccdaa AP_HAL_ESP32: fix RMT on s3by using channel thats compatible with both . 2024-09-06 11:54:31 +10:00
David 'Buzz' Bussenschutt 792941d4de AP_HAL_ESP32: bigger instruction cache on s3 helps performance 2024-09-06 11:52:32 +10:00
David Buzz 61e83dcd0e AP_HAL_ESP32: improve the reported LOOP_RATE on esp32s3 to similar loop rate to classic esp32
getting a loop rate of around 130 on both now

source modules/esp_idf/export.sh

./waf configure --board=esp32s3empty --debug
./waf copter
cd build/esp32buzz/esp-idf_build/
ninja menuconfig

./waf configure --board=esp32buzz --debug
./waf copter
cd build/esp32buzz/esp-idf_build/
ninja menuconfig

and try to get both the resulting modified sdkconfig as smiilar as possible - this causes s3 to use qio, which is faster, and also puts the wifi stuff onto CORE1 on both configs.

s3:
loop_rate: actual: 148.097137Hz, expected: 400Hz
loop_rate: actual: 147.908691Hz, expected: 400Hz

classic:
loop_rate: actual: 188.718842Hz, expected: 400Hz
loop_rate: actual: 191.819748Hz, expected: 400Hz
2024-09-03 11:04:10 +10:00
David Buzz 04292a280c AP_HAL_ESP32: scheduler timing information was lying to us
This reverts commit 010cfa2f4c.

AP_HAL_ESP32: scheduler timing information was lying to us, this puts it back so both 'esp32buzz' and 'esp32s3empty' loop rates are "better than before.  Still terrible, but an improvement

revert of part of pr #27181
2024-09-02 09:21:45 +10:00
Peter Barker 9a1aece9ab AP_HAL_ESP32: use GCS_SEND_TEXT rather than gcs().send_text
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Thomas Watson 63ab7bec69 AP_HAL_ESP32: use correct unformatted system ID length
Avoids stuffing uninitialized data into the ID.
2024-07-17 09:08:51 +10:00
Andrew Tridgell 15ef6b1192 AP_HAL_ESP32: switched ENABLE_HEAP to an #if 2024-07-11 09:28:17 +10:00
Andrew Tridgell ffc78722f7 HAL_ESP32: removed run_debug_shell 2024-07-11 07:42:54 +10:00
Andrew Tridgell 9caf942c7e AP_HAL_ESP32: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
radityankn 4cab322356 Update RCOutput.cpp
erasing additional curly brackets
2024-05-29 17:02:48 +10:00
radityankn 119f822583 AP_HAL_ESP32: support for Safety Switch
modified RCOutout.cpp to read specified pin for safety switch and light
the LED on another specified pin
2024-05-29 17:02:48 +10:00
David Buzz 1c9a44c33e AP_HAL_ESP32:LOWERING the MAIN_PRIO gets a 400hz loop rate on s3 "empty" board
loop_rate: actual: 400.000000Hz, expected: 400Hz
loop_rate: actual: 400.000000Hz, expected: 400Hz
loop_rate: actual: 400.000000Hz, expected: 400Hz
[ setup esp32 build env ] 
./waf configure --board=esp32s3empty --debug
./waf copter --debug --disable-scripting --upload
 after upload:
cd build/esp32s3empty/esp-idf_build && ninja monitor && cd -
[watch console output for 2 minutes]
ctrl-right-square-bracket to stop watching console.
2024-05-29 13:12:37 +10:00
David Buzz 07092715a7 AP_HAL_ESP32: print loop rate
loop rate getting 262Hz from console after approx 2 minutes boot

loop_rate: actual: 262.022766Hz, expected: 400Hz
loop_rate: actual: 262.022766Hz, expected: 400Hz

t
2024-05-29 13:12:37 +10:00
David 'Buzz' Bussenschutt 529d783e0e AP_HAL_ESP32: automatic S3 sdkconfig changes generated by IDF 2024-05-29 13:12:37 +10:00
Dave d6488eb030 AP_HAL_ESP32: Added missing letter to printf statement 2024-04-03 16:18:02 +09:00
David Buzz 5cd6d74d36 AP_HAL_ESP32: esp32s3 debugger readme in both .txt and .md format 2024-03-16 07:16:46 +11:00
Simon 750ef597ff AP_HAL_ESP32: bugfix RmtSigReader for idf - 4.4 2024-03-15 19:29:21 +11:00
David Buzz 73afd26465 AP_HAL_ESP32: bugfixes
bump  tick rate to 1kz to match chibios

experimentally make delay_microseconds not delay, and only yield ( vTaskDelay yields to higher-priority tasks )

ESP32 disable all watchdogs

emit info to console to tell user where to connect tcp/udp and what ports

comment out bad code throwing a ptr error
2024-03-03 07:29:35 +11:00
Andrew Tridgell 673c89da9c AP_HAL_ESP32: fixed get_baud_rate() 2024-02-29 11:00:40 +11:00
David Buzz b65313303f AP_HAL_ESP32: analog warning fix 2024-01-09 11:15:21 +11:00
David Buzz ca32c8a873 AP_HAL_ESP32 : this was an attempt at resolving watchdog issues , now just needs to go
superceeded by b9ac504d0d
2024-01-08 07:49:25 +11:00
Andrew Tridgell 3fd907ddce HAL_ESP32: use faster div1000 2024-01-07 20:51:55 +11:00
Andrew Tridgell d90a4654a7 HAL_ESP32: allow for building with sim on hw 2024-01-07 20:51:55 +11:00
David Buzz 08a09d04dc HAL_ESP32: bring S3's sdkconfig closer to classic , and optimise wifi on classic 2024-01-07 18:37:56 +11:00
David Buzz 9e8c16d15e AP_HAL_ESP32: S3 also needs change to storage sector size to 128K
just completing this PR for the S3..
fa70a56a65
2024-01-07 18:37:04 +11:00
David Buzz 678474614f AP_HAL_ESP32: Update the WiFi init code to the newer ESP-IDF (4.2+) and
mostly by TByte007 from here, but fixed and re-tested.
https://github.com/ArduPilot/ardupilot/pull/24527/commits
2024-01-07 18:36:08 +11:00
David Buzz b9ac504d0d AP_HAL_ESP32: prevent watchdog while booting with slow things like sdcards 2024-01-07 08:32:44 +11:00
Andrew Tridgell bfcb8f361e AP_HAL_ESP32: added PRIORITY_NET 2024-01-03 12:14:47 +11:00