From dcd6b2aeb99d3f6458c7c463d80e98c4577ac898 Mon Sep 17 00:00:00 2001 From: franchioping Date: Sat, 11 Apr 2026 18:18:50 +0100 Subject: [PATCH] esp32-s3 --- dependencies.lock | 73 +++++++++++++++++++++++----------------------- main/gps.h | 6 +++- main/imu.cpp | 6 ++-- main/main.cpp | 18 ++++++------ main/radio.cpp | 1 + sdkconfig.defaults | 2 ++ 6 files changed, 57 insertions(+), 49 deletions(-) diff --git a/dependencies.lock b/dependencies.lock index 3883a1a..d7e09a4 100644 --- a/dependencies.lock +++ b/dependencies.lock @@ -154,8 +154,18 @@ dependencies: registry_url: https://components.espressif.com type: service version: 0.6.1~4 + espressif/dl_fft: + component_hash: 7dadbd644c0d7ba4733cc3726ec4cff6edf27b043725e1115861dec1609a3d28 + dependencies: + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com + type: service + version: 0.3.1 espressif/esp-dsp: - component_hash: 939e9c053487d6e7b7320a5cb761b2200e4b331730d6721668755ef76ab9f067 + component_hash: 42dce32d46ac93dc11f60d368e29a830e9661c7345d794b8a45c343479cae636 dependencies: - name: idf require: private @@ -163,7 +173,7 @@ dependencies: source: registry_url: https://components.espressif.com type: service - version: 1.7.1 + version: 1.7.0 espressif/esp-modbus: component_hash: 5d5e90b9e55721a8a194b301ad8102d4affb647f47b74cd413ff7d1ce2c1169c dependencies: @@ -181,6 +191,24 @@ dependencies: registry_url: https://components.espressif.com type: service version: 0.0.11 + espressif/esp-sr: + component_hash: c518b25995cf03021a09442feedb7e40acba9f15d6aa903ebdfe0f657b08197b + dependencies: + - name: espressif/dl_fft + registry_url: https://components.espressif.com + require: private + version: '>=0.2.0' + - name: espressif/esp-dsp + registry_url: https://components.espressif.com + require: private + version: 1.7.0 + - name: idf + require: private + version: '>=5.0' + source: + registry_url: https://components.espressif.com + type: service + version: 2.4.0 espressif/esp-zboss-lib: component_hash: 321883d142421f65009972408287441794250057668a11abbdfd8bec77c3309a dependencies: @@ -254,7 +282,7 @@ dependencies: type: service version: 1.2.2 espressif/esp_modem: - component_hash: 07b6ca85dc0c1edbcd76f650005c74067001db138db6bfa106bf05567adca4af + component_hash: f4fa6dab2496af2673a68881132bb7ce0f05bf62e30e5bd0d45b607066378a28 dependencies: - name: idf require: private @@ -262,7 +290,7 @@ dependencies: source: registry_url: https://components.espressif.com type: service - version: 2.0.0 + version: 2.0.1 espressif/esp_rainmaker: component_hash: f6fe458fc7a0102ee2879f0247da4b41419e6c07de12031f66e5e9454d25baaa dependencies: @@ -375,35 +403,8 @@ dependencies: registry_url: https://components.espressif.com type: service version: 1.0.3 - espressif/lan867x: - component_hash: 651c9d6e3d96acb08bd5066144b12a12e94df0a6241127a0538d8680689de2c4 - dependencies: - - name: espressif/lan86xx_common - registry_url: https://components.espressif.com - require: private - version: '*' - - name: idf - require: private - version: '>=5.3' - source: - registry_url: https://components.espressif.com - type: service - targets: - - esp32 - - esp32p4 - version: 2.0.0 - espressif/lan86xx_common: - component_hash: 6dcb1be9f43ae940979bd628fa5bee278949b66c545e1fe2321e486102e81026 - dependencies: - - name: idf - require: private - version: '>=5.2' - source: - registry_url: https://components.espressif.com - type: service - version: 1.0.0 espressif/libsodium: - component_hash: ec52dce5da4af52b1908a0e23e2cf8f492edea090450e51f0d1fbe1108b6d58e + component_hash: b51f5836f044d8b7fbb1784257605c47ff7356f701377b005912fe6a2f12db37 dependencies: - name: idf require: private @@ -411,9 +412,9 @@ dependencies: source: registry_url: https://components.espressif.com type: service - version: 1.0.20~4 + version: 1.0.21 espressif/mdns: - component_hash: 7c0fa01a1cd0e72a87ec1928c3b661c0a3a9034a6d3a69dcf4850db8c6f272db + component_hash: 1ebe3bd675bb9d1c58f52bc0b609b32f74e572b01c328f9e61282040c775495c dependencies: - name: idf require: private @@ -421,7 +422,7 @@ dependencies: source: registry_url: https://components.espressif.com type: service - version: 1.10.1 + version: 1.11.0 espressif/network_provisioning: component_hash: ef2e10182fd1861e68b821491916327c25416ca7ae70e5a6e43313dbc71fe993 dependencies: @@ -464,5 +465,5 @@ direct_dependencies: - espressif/arduino-esp32 - idf manifest_hash: bb586ec925aec51fa9a2f4da694bbf1dd0c5ef5f4f654f1ef56d33c48f29627b -target: esp32 +target: esp32s3 version: 2.0.0 diff --git a/main/gps.h b/main/gps.h index cb7d097..90c58d8 100644 --- a/main/gps.h +++ b/main/gps.h @@ -21,6 +21,9 @@ const float TO_RAD = M_PI / 180.0f; const float KNOTS_TO_M_SEC = 0.5144444f; const float earth_radius = 6371000.0f; +#define GPS_RX_PIN 16 +#define GPS_TX_PIN 17 + struct GPS { Adafruit_GPS *gps; float origin_lat; @@ -33,8 +36,9 @@ struct GPS { } void begin() { + Serial2.begin(9600, SERIAL_8N1, GPS_RX_PIN, GPS_TX_PIN); this->gps = new Adafruit_GPS(&Serial2); - this->gps->begin(9600); + // this->gps->begin(9600); this->gps->sendCommand(PMTK_SET_NMEA_OUTPUT_RMCGGA); this->gps->sendCommand(PMTK_API_SET_FIX_CTL_5HZ); diff --git a/main/imu.cpp b/main/imu.cpp index 470dfa4..154ec8c 100644 --- a/main/imu.cpp +++ b/main/imu.cpp @@ -24,9 +24,9 @@ void setup_imu() { imu_state *local_state = new imu_state; imu_state_mutex = xSemaphoreCreateMutex(); - BNO08x *imu = new BNO08x( - bno08x_config_t(SPI2_HOST, GPIO_NUM_26, GPIO_NUM_27, GPIO_NUM_25, - GPIO_NUM_33, GPIO_NUM_36, GPIO_NUM_32, 2000000, false)); + BNO08x *imu = new BNO08x(bno08x_config_t( + SPI2_HOST, GPIO_NUM_26, GPIO_NUM_27, GPIO_NUM_25, // TODO: FIX + GPIO_NUM_33, GPIO_NUM_36, GPIO_NUM_32, 2000000, false)); if (!imu->initialize()) { ESP_LOGE(TAG, "BNO08x Init failure."); diff --git a/main/main.cpp b/main/main.cpp index 3538de2..40b244a 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -52,14 +52,14 @@ extern "C" void app_main(void) { // 1 // Core ID // ); - xTaskCreatePinnedToCore(motor_throttles_task, // Function name - "motor_throttles_task", // Name for debugging - 1024 * 4, // Stack size in bytes - NULL, // Parameters - 30, // Priority (higher = more urgent) - NULL, // Task handle - 1 // Core ID - ); + // xTaskCreatePinnedToCore(motor_throttles_task, // Function name + // "motor_throttles_task", // Name for debugging + // 1024 * 4, // Stack size in bytes + // NULL, // Parameters + // 30, // Priority (higher = more urgent) + // NULL, // Task handle + // 1 // Core ID + // ); ESP_LOGI("MAIN", "All tasks spawned. Main loop free."); @@ -76,7 +76,7 @@ extern "C" void app_main(void) { handle_packet(&packet_data[0]); } - if (millis() > last_print_time + 1000) { + if (millis() > last_print_time + 5000) { last_print_time = millis(); std::optional coords; diff --git a/main/radio.cpp b/main/radio.cpp index be7682e..2a99a4a 100644 --- a/main/radio.cpp +++ b/main/radio.cpp @@ -58,6 +58,7 @@ void radio_task(void *pvParameters) { radio.setHighPower(true); radio.setCustomBitrate(DEFAULT_COMMS_BITRATE); ESP_LOGI(TAG, "Radio Initialized. Version: 0x%02X", radio.readReg(0x10)); + radio.readAllRegsCompact(); } else { ESP_LOGE(TAG, "Radio Init FAILED! Restarting."); diff --git a/sdkconfig.defaults b/sdkconfig.defaults index e69de29..903e69e 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -0,0 +1,2 @@ + +CONFIG_FREERTOS_HZ=1000