diff --git a/documents/images/ham-1.jpg b/documents/images/ham-1.jpg new file mode 100644 index 000000000..1c850926f Binary files /dev/null and b/documents/images/ham-1.jpg differ diff --git a/documents/images/ham-2.jpg b/documents/images/ham-2.jpg new file mode 100644 index 000000000..634d9082e Binary files /dev/null and b/documents/images/ham-2.jpg differ diff --git a/documents/images/midi-2.jpg b/documents/images/midi-2.jpg new file mode 100644 index 000000000..a11d7c9cc Binary files /dev/null and b/documents/images/midi-2.jpg differ diff --git a/software/firmware/binaries/ESP32/SkyView/README.md b/software/firmware/binaries/ESP32/SkyView/README.md index 0b4e70b0e..82261fafc 100644 --- a/software/firmware/binaries/ESP32/SkyView/README.md +++ b/software/firmware/binaries/ESP32/SkyView/README.md @@ -88,7 +88,21 @@ Three more of [hardware platforms](https://github.com/lyusupov/SoftRF#by-process ### Known issues and limitations -TBD +* same that previous 0.12 release has, **plus** +* **RP2040:** PIO USB Host is kind of fragile and can cause issues when Wi-Fi or Bluetooth is active. When USB is your primary connection method - activate Wi-Fi 'power saving' feature to disable the Wi-Fi while it is not in use. When you use Wi-Fi of Bluetooth as a primary connection method - do NOT connect any device to the RP2040 PIO USB port ; +* **ESP32-S3**: pictore on the GDEY027T91 display may partially loose contrast after a sequence of screen updates. One should consider to activate [e-Paper 'ghosts' removal](https://github.com/lyusupov/SoftRF/wiki/SkyView-settings#e-paper-ghosts-removal) procedure as a workaroud. + +### Flashing instructions + +    **ESP32:**
+            '[Web Update](https://github.com/lyusupov/SoftRF/wiki/Firmware-update-%28Web-method%29#esp32)' method should work just fine when you are updating from **Regular** 0.12.
+            In case of troubles - use generic ('cable') method instead. Follow **Step 1** and **Step 2** of this [**Quick start**](https://github.com/lyusupov/SoftRF/wiki/SkyView.-Quick-start) guidance.
+    **RP2040:**
+    **ESP32-S3:**
+            Both RP2040 and ESP32-S3 platforms can do firmware update over USB connection when the firmware binary is in UF2 format.
+            Follow **SkyView Pico** firmware installation procedure as explained on [this page](https://github.com/lyusupov/SoftRF/wiki/SkyView-Pico.-Quick-start).
+ +
## revision 0.12 diff --git a/software/firmware/source/SoftRF/src/driver/RF.cpp b/software/firmware/source/SoftRF/src/driver/RF.cpp index 2ba770e07..532cf8915 100644 --- a/software/firmware/source/SoftRF/src/driver/RF.cpp +++ b/software/firmware/source/SoftRF/src/driver/RF.cpp @@ -2294,7 +2294,9 @@ extern NeoPixelBus TWR2_Pixel; void sa868_Tx_LED_state(bool val) { if (hw_info.model == SOFTRF_MODEL_HAM) { #if defined(USE_NEOPIXELBUS_LIBRARY) - TWR2_Pixel.SetPixelColor(0, val ? LED_COLOR_RED : LED_COLOR_GREEN); + TWR2_Pixel.SetPixelColor(0, val ? LED_COLOR_RED : + settings->power_save & POWER_SAVE_NORECEIVE ? + LED_COLOR_BLACK : LED_COLOR_GREEN); TWR2_Pixel.Show(); #endif /* USE_NEOPIXELBUS_LIBRARY */ } @@ -2384,7 +2386,8 @@ static void sa8x8_setup() } } - controller.setGroup(0 /* TBD */, MHz, MHz, 0, 1, 0); + byte sq = settings->power_save & POWER_SAVE_NORECEIVE ? 8 : 1; + controller.setGroup(0 /* TBD */, MHz, MHz, 0, sq, 0); if (controller.getModel() == Model::SA_868) { aprs_preamble = 350UL * 3; @@ -2409,6 +2412,14 @@ static void sa8x8_setup() APRS_setTail(aprs_tail); APRS_setSymbol('\''); + if (hw_info.model == SOFTRF_MODEL_HAM) { +#if defined(USE_NEOPIXELBUS_LIBRARY) + TWR2_Pixel.SetPixelColor(0, settings->power_save & POWER_SAVE_NORECEIVE ? + LED_COLOR_BLACK : LED_COLOR_GREEN); + TWR2_Pixel.Show(); +#endif /* USE_NEOPIXELBUS_LIBRARY */ + } + APRS_setTxLEDCallback(sa868_Tx_LED_state); // You don't need to set the destination identifier, but diff --git a/software/firmware/source/SoftRF/src/platform/ESP32.cpp b/software/firmware/source/SoftRF/src/platform/ESP32.cpp index 7ce4c46a3..de62688f7 100644 --- a/software/firmware/source/SoftRF/src/platform/ESP32.cpp +++ b/software/firmware/source/SoftRF/src/platform/ESP32.cpp @@ -1117,8 +1117,6 @@ static void ESP32_setup() #if defined(USE_NEOPIXELBUS_LIBRARY) TWR2_Pixel.Begin(); TWR2_Pixel.Show(); // Initialize all pixels to 'off' - TWR2_Pixel.SetPixelColor(0, LED_COLOR_GREEN); - TWR2_Pixel.Show(); #endif /* USE_NEOPIXELBUS_LIBRARY */ } else { WIRE_FINI(Wire); diff --git a/software/firmware/source/SoftRF/src/protocol/radio/APRS.cpp b/software/firmware/source/SoftRF/src/protocol/radio/APRS.cpp index 15a7d0e98..01efc33e0 100644 --- a/software/firmware/source/SoftRF/src/protocol/radio/APRS.cpp +++ b/software/firmware/source/SoftRF/src/protocol/radio/APRS.cpp @@ -218,10 +218,12 @@ size_t aprs_encode(void *pkt, ufo_t *this_aircraft) { uint8_t addr_type = id == SOFTRF_ADDRESS ? ADDR_TYPE_ICAO : ADDR_TYPE_ANONYMOUS; #endif - //snprintf(buf, sizeof(buf), "FLR%06X", id); - //APRS_setCallsign(buf, 0); + // snprintf(buf, sizeof(buf), "FLR%06X", id); + // snprintf(buf, sizeof(buf), "OGN%06X", id); + // APRS_setCallsign(buf, 0); - APRS_setDestination("OGNFLR", 0); + // APRS_setDestination("OGNFLR", 0); + APRS_setDestination("OGNTRK", 0); // Let's first set our latitude and longtitude. // These should be in NMEA format! @@ -255,7 +257,7 @@ size_t aprs_encode(void *pkt, ufo_t *this_aircraft) { (addr_type ); snprintf(Outgoing_APRS_Comment, sizeof(Outgoing_APRS_Comment), - "%03d/%03d/A=%06d !W00! id%08X", + "%03d/%03d/A=%06d !W00! id%08X +000fpm +0rot gps8x3", (course_i == 0) ? 360 : course_i, (int) this_aircraft->speed, /* knots */ (altitude_i < 0) ? 0 : altitude_i, /* feet */