diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 064e5e121..30f1d069c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -223,6 +223,10 @@ jobs: tar xzf ${NIM_BLE_VERSION}.tar.gz ; rm ${NIM_BLE_VERSION}.tar.gz ; mv NimBLE-Arduino-${NIM_BLE_VERSION} $HOME/Arduino/libraries/ ; + #wget https://github.com/arduino-libraries/ArduinoBLE/archive/refs/tags/${ARDUINO_BLE_VERSION}.tar.gz ; + #tar xzf ${ARDUINO_BLE_VERSION}.tar.gz ; + #rm ${ARDUINO_BLE_VERSION}.tar.gz ; + #mv ArduinoBLE-${ARDUINO_BLE_VERSION} $HOME/Arduino/libraries/ ; cd $GITHUB_WORKSPACE ; fi #if [[ "$BOARD" =~ "esp32:esp32:esp32h2" ]]; then @@ -369,7 +373,7 @@ jobs: fi if [[ "$BOARD" =~ "rp2040:rp2040:" ]]; then arduino --pref "boardsmanager.additional.urls=https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json" --save-prefs ; - arduino --install-boards rp2040:rp2040:3.9.4 ; + arduino --install-boards rp2040:rp2040:3.9.5 ; arduino --board $BOARD --save-prefs ; if [[ "$BOARD" =~ "rp2040:rp2040:rpipicow" ]]; then arduino --pref "custom_freq=rpipicow_120" --save-prefs ; diff --git a/software/firmware/source/SkyWatch/GNSSHelper.cpp b/software/firmware/source/SkyWatch/GNSSHelper.cpp index 66397fa1e..884b74f84 100644 --- a/software/firmware/source/SkyWatch/GNSSHelper.cpp +++ b/software/firmware/source/SkyWatch/GNSSHelper.cpp @@ -1151,7 +1151,10 @@ const gnss_chip_ops_t uc65_ops = { #if !defined(EXCLUDE_GNSS_AG33) static gnss_id_t ag33_probe() { - return GNSS_MODULE_NMEA; /* TBD */ + /* Firmware version request */ +// return nmea_handshake("$PAIR020*38\r\n", "$PAIR020,", true) ? + return nmea_handshake("$PAIR021*39\r\n", "$PAIR021,", true) ? + GNSS_MODULE_AG33 : GNSS_MODULE_NMEA; } static bool ag33_setup() diff --git a/software/firmware/source/SoftRF/Makefile b/software/firmware/source/SoftRF/Makefile index c4e0ac573..92f0a9971 100644 --- a/software/firmware/source/SoftRF/Makefile +++ b/software/firmware/source/SoftRF/Makefile @@ -139,7 +139,7 @@ PLAT_CPPS := $(PLATFORM_PATH)/ESP8266.cpp \ $(PLATFORM_PATH)/SAMD.cpp \ $(PLATFORM_PATH)/AVR.cpp \ $(PLATFORM_PATH)/ASR66.cpp \ - $(PLATFORM_PATH)/RP2040.cpp \ + $(PLATFORM_PATH)/RP2XXX.cpp \ $(PLATFORM_PATH)/RA4M1.cpp \ $(PLATFORM_PATH)/EFR32.cpp \ $(PLATFORM_PATH)/CH32.cpp diff --git a/software/firmware/source/SoftRF/src/platform/ESP32.h b/software/firmware/source/SoftRF/src/platform/ESP32.h index 65d2dea22..d7c07882a 100644 --- a/software/firmware/source/SoftRF/src/platform/ESP32.h +++ b/software/firmware/source/SoftRF/src/platform/ESP32.h @@ -438,6 +438,7 @@ extern const USB_Device_List_t supported_USB_devices[]; #define EXCLUDE_TEST_MODE #define EXCLUDE_WATCHOUT_MODE #undef USE_NMEALIB +//#define USE_ARDUINOBLE #undef USE_BLE_MIDI #undef ENABLE_PROL //#define USE_NIMBLE diff --git a/software/firmware/source/SoftRF/src/platform/RP2040.cpp b/software/firmware/source/SoftRF/src/platform/RP2XXX.cpp similarity index 96% rename from software/firmware/source/SoftRF/src/platform/RP2040.cpp rename to software/firmware/source/SoftRF/src/platform/RP2XXX.cpp index fbee43d06..8ad06e6ec 100644 --- a/software/firmware/source/SoftRF/src/platform/RP2040.cpp +++ b/software/firmware/source/SoftRF/src/platform/RP2XXX.cpp @@ -1,5 +1,5 @@ /* - * Platform_RP2040.cpp + * Platform_RP2XXX.cpp * Copyright (C) 2022-2024 Linar Yusupov * * This program is free software: you can redistribute it and/or modify diff --git a/software/firmware/source/SoftRF/src/platform/RP2040.h b/software/firmware/source/SoftRF/src/platform/RP2XXX.h similarity index 95% rename from software/firmware/source/SoftRF/src/platform/RP2040.h rename to software/firmware/source/SoftRF/src/platform/RP2XXX.h index 06d514e7d..8f44d54c0 100644 --- a/software/firmware/source/SoftRF/src/platform/RP2040.h +++ b/software/firmware/source/SoftRF/src/platform/RP2XXX.h @@ -1,5 +1,5 @@ /* - * Platform_RP2040.h + * Platform_RP2XXX.h * Copyright (C) 2022-2024 Linar Yusupov * * This program is free software: you can redistribute it and/or modify @@ -17,8 +17,8 @@ */ #if defined(ARDUINO_ARCH_RP2040) -#ifndef PLATFORM_RP2040_H -#define PLATFORM_RP2040_H +#ifndef PLATFORM_RP2XXX_H +#define PLATFORM_RP2XXX_H #include @@ -324,5 +324,5 @@ extern Adafruit_NeoPixel strip; #endif /* ARDUINO_GENERIC_RP2040 */ #endif /* USE_OLED */ -#endif /* PLATFORM_RP2040_H */ +#endif /* PLATFORM_RP2XXX_H */ #endif /* ARDUINO_ARCH_RP2040 */ diff --git a/software/firmware/source/SoftRF/src/platform/bluetooth/ArduinoBLE.cpp b/software/firmware/source/SoftRF/src/platform/bluetooth/ArduinoBLE.cpp index af36df795..a45516747 100644 --- a/software/firmware/source/SoftRF/src/platform/bluetooth/ArduinoBLE.cpp +++ b/software/firmware/source/SoftRF/src/platform/bluetooth/ArduinoBLE.cpp @@ -127,10 +127,6 @@ static void ArdBLE_Bluetooth_setup() #if defined(ESP32) BLE_FIFO_RX = new cbuf(BLE_FIFO_RX_SIZE); BLE_FIFO_TX = new cbuf(BLE_FIFO_TX_SIZE); - -#if defined(CONFIG_IDF_TARGET_ESP32) - esp_bt_controller_mem_release(ESP_BT_MODE_CLASSIC_BT); -#endif /* CONFIG_IDF_TARGET_ESP32 */ #endif /* ESP32 */ BLE.begin(); @@ -156,12 +152,14 @@ static void ArdBLE_Bluetooth_setup() hw_info.model == SOFTRF_MODEL_HAM ? "Ham Edition" : hw_info.model == SOFTRF_MODEL_MIDI ? "Midi Edition" : hw_info.model == SOFTRF_MODEL_ACADEMY ? "Academy Edition" : + hw_info.model == SOFTRF_MODEL_ECO ? "Eco Edition" : + hw_info.model == SOFTRF_MODEL_INK ? "Ink Edition" : "Unknown"; char SerialNum[9]; snprintf(SerialNum, sizeof(SerialNum), "%08X", SoC->getChipId()); char Firmware[32]; - snprintf(Firmware, sizeof(Firmware), "Arduino %s %s", SoC->name, ARDUINO_CORE_VERSION); + snprintf(Firmware, sizeof(Firmware), "Core %s %s", SoC->name, ARDUINO_CORE_VERSION); char Hardware[9]; snprintf(Hardware, sizeof(Hardware), "%08X", hw_info.revision); @@ -218,7 +216,6 @@ static void ArdBLE_Bluetooth_loop() if (size > 0) { BLE_FIFO_TX->read((char *) chunk, size); - UARTCharacteristic.writeValue(chunk, size); } #else diff --git a/software/firmware/source/SoftRF/src/platform/bluetooth/Bluedroid.cpp b/software/firmware/source/SoftRF/src/platform/bluetooth/Bluedroid.cpp index 8d8db1e1e..cf6f77300 100644 --- a/software/firmware/source/SoftRF/src/platform/bluetooth/Bluedroid.cpp +++ b/software/firmware/source/SoftRF/src/platform/bluetooth/Bluedroid.cpp @@ -216,6 +216,8 @@ static void ESP32_Bluetooth_setup() hw_info.model == SOFTRF_MODEL_PRIME_MK3 ? "Prime Mark III" : hw_info.model == SOFTRF_MODEL_HAM ? "Ham Edition" : hw_info.model == SOFTRF_MODEL_MIDI ? "Midi Edition" : + hw_info.model == SOFTRF_MODEL_ECO ? "Eco Edition" : + hw_info.model == SOFTRF_MODEL_INK ? "Ink Edition" : "Unknown"; char SerialNum[9]; snprintf(SerialNum, sizeof(SerialNum), "%08X", SoC->getChipId()); diff --git a/software/firmware/source/SoftRF/src/system/SoC.h b/software/firmware/source/SoftRF/src/system/SoC.h index 15c940b5e..93106a26f 100644 --- a/software/firmware/source/SoftRF/src/system/SoC.h +++ b/software/firmware/source/SoftRF/src/system/SoC.h @@ -33,7 +33,7 @@ #include "../platform/SAMD.h" #include "../platform/AVR.h" #include "../platform/ASR66.h" -#include "../platform/RP2040.h" +#include "../platform/RP2XXX.h" #include "../platform/RA4M1.h" #include "../platform/EFR32.h" #include "../platform/CH32.h"