Skip to content

Commit

Permalink
ESP32-C3: brought nRF905 radio back on [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
Linar Yusupov committed Feb 17, 2023
1 parent 451ebdd commit 5521b2a
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 24 deletions.
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,16 +82,20 @@ Data|FLARM NMEA|<p align="center">![](https://github.com/lyusupov/SoftRF/raw/mas
Model(s)|Platform|First appearance|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Status&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|Notes
---|:---:|:---:|:---:|---
1&nbsp;[Prime](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition)<br>2&nbsp;[Standalone](https://github.com/lyusupov/SoftRF/wiki/Standalone-Edition)<br>3&nbsp;[UAV](https://github.com/lyusupov/SoftRF/wiki/UAV-Edition)<br>4&nbsp;[**WebTop&nbsp;Serial**](https://github.com/lyusupov/SoftRF/wiki/WebTop-Serial-adapter)|[Espressif<br>ESP8266](https://en.wikipedia.org/wiki/ESP8266)|Q4 2015|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/00A000/000000?text=Good) -->|[Prime](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition) model is no longer supported - use [Prime MkII](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition-MkII) instead.<br><!-- ESP8266 platform will be phased out through year 2020 in favour of ESP32.-->
1&nbsp;[**Prime Mark II**](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition-MkII)<br>2&nbsp;[**Standalone**](https://github.com/lyusupov/SoftRF/wiki/Standalone-Edition) + [adapter](https://github.com/lyusupov/ESP32-NODEMCU-ADAPTER)<br>3&nbsp;[UAV](https://github.com/lyusupov/SoftRF/wiki/UAV-Edition)<br>4&nbsp;[**SkyView EZ**](https://github.com/lyusupov/SoftRF/wiki/SkyView-EZ)<br>5&nbsp;[Flight Recorder](https://github.com/lyusupov/SoftRF/wiki/Flight-Recorder)<br>6&nbsp;[**WebTop USB**](https://github.com/lyusupov/SoftRF/wiki/WebTop-USB)![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[Espressif<br>ESP32](https://en.wikipedia.org/wiki/ESP32)<br>[ESP32-S2](https://en.wikipedia.org/wiki/ESP32#ESP32-S2)<br>[ESP32-S3](https://en.wikipedia.org/wiki/ESP32#ESP32-S3)<br>[ESP32-C3](https://en.wikipedia.org/wiki/ESP32#ESP32-C3)|Q1 2018|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)|1&nbsp;today's best platform ;<br>2&nbsp;holds [**FCC** mark](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition-MkII#certificates)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)
1&nbsp;[**Prime Mark II**](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition-MkII)<br>2&nbsp;[**Standalone**](https://github.com/lyusupov/SoftRF/wiki/Standalone-Edition) + [adapter](https://github.com/lyusupov/ESP32-NODEMCU-ADAPTER)<br>3&nbsp;[UAV](https://github.com/lyusupov/SoftRF/wiki/UAV-Edition)<br>4&nbsp;[**SkyView EZ**](https://github.com/lyusupov/SoftRF/wiki/SkyView-EZ)<br>5&nbsp;[Flight Recorder](https://github.com/lyusupov/SoftRF/wiki/Flight-Recorder)|[Espressif<br>ESP32](https://en.wikipedia.org/wiki/ESP32)<br>[ESP32-S3](https://en.wikipedia.org/wiki/ESP32#ESP32-S3)|Q1 2018|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)|1&nbsp;today's best platform ;<br>2&nbsp;holds [**FCC** mark](https://github.com/lyusupov/SoftRF/wiki/Prime-Edition-MkII#certificates)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)
1&nbsp;[**Raspberry Edition**](https://github.com/lyusupov/SoftRF/wiki/Raspberry-Edition)<br>2&nbsp;[**SkyView Pi**](https://github.com/lyusupov/SoftRF/wiki/SkyView-Pi)|[Broadcom<br>BCM283X<br>(Raspberry Pi)](https://en.wikipedia.org/wiki/Raspberry_Pi)|Q4 2018|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)|Good for use together with RTL-SDR dongles to achieve additional 1090ES (and 978UAT) ADS-B air traffic reception.
1&nbsp;[UAT module](https://github.com/lyusupov/UAT-test-signal#variant-2-advanced)<br>2&nbsp;[**Uni**](https://github.com/lyusupov/SoftRF/wiki/Uni-Edition)|[Texas Instruments<br>CC1310](http://www.ti.com/product/CC1310) and [CC13x2R](http://www.ti.com/product/CC1352R)|Q1 2019|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/FFFF00/000000?text=In+progress) -->|1&nbsp;Unique RF radio specs are useful for [UAT978 **ADS-B** reception](https://github.com/lyusupov/SoftRF/tree/master/software/firmware/source/UATbridge) [ [1](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-7.jpg) , [2](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-8.jpg) , [3](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-6.jpg) ] ; <br>2&nbsp;holds [**FCC/CE** mark](https://github.com/lyusupov/SoftRF/wiki/Uni-Edition#certificates)
1&nbsp;[Retro](https://github.com/lyusupov/SoftRF/wiki/Retro-Edition)<br>2&nbsp;[**Dongle**](https://github.com/lyusupov/SoftRF/wiki/Dongle-Edition)<!-- <br>3&nbsp;[**Bracelet**](https://github.com/lyusupov/SoftRF/wiki/Bracelet-Edition)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg) --><br>3&nbsp;[**Balkan**](https://github.com/lyusupov/SoftRF/wiki/Balkan-Edition)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[STMicroelectronics](https://en.wikipedia.org/wiki/STMicroelectronics)<br>[STM32**L073**](https://www.st.com/en/microcontrollers-microprocessors/stm32l073rz.html) and<br>[STM32**WLE5**](https://www.st.com/en/microcontrollers-microprocessors/stm32wle5cc.html)|Q3 2019|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/FFFF00/000000?text=In+progress)-->|<!-- [AcSiP **S76G**](http://www.acsip.com.tw/index.php?action=products-detail&fid1=19&fid2=&fid3=&id=41&lang=3) "3-in-1" system-in-package is doing good [ [1](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/watch-1.jpg) , [2](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/t-motion-4.jpg) , [3](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/t-motion-5.jpg) ] .<br>As well as STM32F103C8 "**Blue Pill**" (same MCU that [STM32 OGN tracker](http://wiki.glidernet.org/stm32-ogn-tracker) uses) [ [4](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/stm32_breadboard.jpg) , [5](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/stm32_ognweb_1.JPG) ] . -->
[UAT module](https://github.com/lyusupov/UAT-test-signal#variant-2-advanced)|[Texas Instruments<br>CC1310](http://www.ti.com/product/CC1310)|Q1 2019|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/FFFF00/000000?text=In+progress) -->|Unique RF radio specs are useful for [UAT978 **ADS-B** reception](https://github.com/lyusupov/SoftRF/tree/master/software/firmware/source/UATbridge) [ [1](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-7.jpg) , [2](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-8.jpg) , [3](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/uat-normal-6.jpg) ]
1&nbsp;[Retro](https://github.com/lyusupov/SoftRF/wiki/Retro-Edition)<br>2&nbsp;[**Dongle**](https://github.com/lyusupov/SoftRF/wiki/Dongle-Edition)<!-- <br>3&nbsp;[**Bracelet**](https://github.com/lyusupov/SoftRF/wiki/Bracelet-Edition)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg) -->|[STMicroelectronics](https://en.wikipedia.org/wiki/STMicroelectronics)<br>[STM32**F103**](https://www.st.com/en/microcontrollers-microprocessors/stm32f103.html) and<br>[STM32**L073**](https://www.st.com/en/microcontrollers-microprocessors/stm32l073rz.html)|Q3 2019|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/FFFF00/000000?text=In+progress)-->|<!-- [AcSiP **S76G**](http://www.acsip.com.tw/index.php?action=products-detail&fid1=19&fid2=&fid3=&id=41&lang=3) "3-in-1" system-in-package is doing good [ [1](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/watch-1.jpg) , [2](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/t-motion-4.jpg) , [3](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/t-motion-5.jpg) ] .<br>As well as STM32F103C8 "**Blue Pill**" (same MCU that [STM32 OGN tracker](http://wiki.glidernet.org/stm32-ogn-tracker) uses) [ [4](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/stm32_breadboard.jpg) , [5](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/stm32_ognweb_1.JPG) ] . -->
[**Uni**](https://github.com/lyusupov/SoftRF/wiki/Uni-Edition)|[Texas Instruments<br>CC13x2R](http://www.ti.com/product/CC1352R)|Q2 2020|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x70/FFFF00/000000?text=In+progress) -->|1&nbsp;Unique RF radio specs are useful for UAT978 **ADS-B** reception ; <br>2&nbsp;holds [**FCC/CE** mark](https://github.com/lyusupov/SoftRF/wiki/Uni-Edition#certificates)
[**Mini**](https://github.com/lyusupov/SoftRF/wiki/Mini-Edition)|[Cypress<br>PSoC 4100**S**](https://en.wikipedia.org/wiki/Cypress_PSoC)|Q3 2020|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)<!-- ![](https://via.placeholder.com/140x40/c5f015/000000?text=May+need)<br>![](https://via.placeholder.com/140x40/c5f015/000000?text=improvements) -->|1&nbsp;good add-on candidate for modded Kobo e-Readers ;<br>2&nbsp;holds [**FCC/CE** mark](https://github.com/lyusupov/SoftRF/wiki/Mini-Edition#certificates)
[**Badge**](https://github.com/lyusupov/SoftRF/wiki/Badge-Edition)|[Nordic Semiconductor<br>nRF52840](https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52840)|Q4 2020|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)|&nbsp;holds [**FCC** mark](https://github.com/lyusupov/SoftRF/wiki/Badge-Edition#certificates)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)
[**ES**](https://github.com/lyusupov/SoftRF/wiki/ES-Edition)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[NXP Semiconductors<br>LPC4320](https://en.wikipedia.org/wiki/NXP_LPC#LPC4000_series)|Q2 2021|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_may_need_imp.png)|Unique RF radio specs are useful for 1090ES **ADS-B** reception [ [1](https://user-images.githubusercontent.com/5849637/140610617-7c74582e-b0d7-4610-8ac2-d51f55c9086d.png) , [2](https://raw.githubusercontent.com/lyusupov/SoftRF/master/documents/images/ES-1.jpg) ]
1&nbsp;[**Academy**](https://github.com/lyusupov/SoftRF/wiki/Academy-Edition)<br>2&nbsp;[USB2BT](https://github.com/lyusupov/SoftRF/wiki/USB-to-Bluetooth-adapter)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[Microchip&nbsp;(Atmel)<br>SAM&nbsp;D21](https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/32-bit-mcus/sam-32-bit-mcus/sam-d) <!-- and [ATmega2560](https://www.microchip.com/en-us/product/ATmega2560) -->|Q4 2021|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png) <!-- ![](https://via.placeholder.com/140x40/c5f015/000000?text=May+need)<br>![](https://via.placeholder.com/140x40/c5f015/000000?text=improvements) -->|good for teaching students of air traffic proximity awareness
[**Octave**](https://github.com/lyusupov/SoftRF/wiki/Octave-Concept)|[ASR Microelectronics<br>ASR6601](https://asriot.readthedocs.io/en/latest/ASR6601/index.html)|Q1 2022|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)| **the best 'price per radio protocol' ratio** on the market
[**Lego**](https://github.com/lyusupov/SoftRF/wiki/Lego-Edition)|[Raspberry Pi<br>Foundation<br>**RP2040**](https://en.wikipedia.org/wiki/RP2040)|Q1 2022|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_may_need_imp.png)|&nbsp;holds [**FCC/CE** mark](https://github.com/lyusupov/SoftRF/wiki/Lego-Edition#certificates)
[**Lego**](https://github.com/lyusupov/SoftRF/wiki/Lego-Edition)|[Raspberry Pi<br>Foundation<br>**RP2040**](https://en.wikipedia.org/wiki/RP2040)|Q1 2022|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_good.png)|&nbsp;holds [**FCC/CE** mark](https://github.com/lyusupov/SoftRF/wiki/Lego-Edition#certificates)
[**Balkan**](https://github.com/lyusupov/SoftRF/wiki/Balkan-Edition)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[STMicroelectronics](https://en.wikipedia.org/wiki/STMicroelectronics)<br>[STM32**WLE5**](https://www.st.com/en/microcontrollers-microprocessors/stm32wle5cc.html)|Q3 2022|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_may_need_imp.png)|&nbsp;holds [**CE** mark](https://github.com/lyusupov/SoftRF/wiki/Balkan-Edition#certificates)&nbsp;![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)
[**WebTop USB**](https://github.com/lyusupov/SoftRF/wiki/WebTop-USB)![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[Espressif<br>ESP32-S2](https://en.wikipedia.org/wiki/ESP32#ESP32-S2)|Q4 2022|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_may_need_imp.png)|
[**Standalone**](https://github.com/lyusupov/SoftRF/wiki/Standalone-Edition) **upgrade**![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/new-icon.jpg)|[Espressif<br>ESP32-C3](https://en.wikipedia.org/wiki/ESP32#ESP32-C3)|Q1 2023|![](https://github.com/lyusupov/SoftRF/raw/master/documents/images/icon_may_need_imp.png)|

## By sub-1 GHz radio
Radio|Model(s)|First appearance|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Status&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|Notes
Expand Down
39 changes: 20 additions & 19 deletions software/firmware/source/SoftRF/src/platform/ESP32.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -404,25 +404,26 @@ static void ESP32_setup()
uint32_t flash_id = ESP32_getFlashId();

/*
* Board | Module | Flash memory IC
* ----------------+------------+--------------------
* DoIt ESP32 | WROOM | GIGADEVICE_GD25Q32
* TTGO T3 V2.0 | PICO-D4 IC | GIGADEVICE_GD25Q32
* TTGO T3 V2.1.6 | PICO-D4 IC | GIGADEVICE_GD25Q32
* TTGO T22 V06 | | WINBOND_NEX_W25Q32_V
* TTGO T22 V08 | | WINBOND_NEX_W25Q32_V
* TTGO T22 V11 | | BOYA_BY25Q32AL
* TTGO T8 V1.8 | WROVER | GIGADEVICE_GD25LQ32
* TTGO T8 S2 V1.1 | | WINBOND_NEX_W25Q32_V
* TTGO T5S V1.9 | | WINBOND_NEX_W25Q32_V
* TTGO T5S V2.8 | | BOYA_BY25Q32AL
* TTGO T5 4.7 | WROVER-E | XMC_XM25QH128C
* TTGO T-Watch | | WINBOND_NEX_W25Q128_V
* Ai-T NodeMCU-S3 | ESP-S3-12K | GIGADEVICE_GD25Q64C
* TTGO T-Dongle | | BOYA_BY25Q32AL
* TTGO S3 Core | | GIGADEVICE_GD25Q64C
* TTGO T-01C3 | | BOYA_BY25Q32AL
* | ESP-C3-12F | XMC_XM25QH32B
* Board | Module | Flash memory IC
* ----------------+---------------+--------------------
* DoIt ESP32 | WROOM | GIGADEVICE_GD25Q32
* TTGO T3 V2.0 | PICO-D4 IC | GIGADEVICE_GD25Q32
* TTGO T3 V2.1.6 | PICO-D4 IC | GIGADEVICE_GD25Q32
* TTGO T22 V06 | | WINBOND_NEX_W25Q32_V
* TTGO T22 V08 | | WINBOND_NEX_W25Q32_V
* TTGO T22 V11 | | BOYA_BY25Q32AL
* TTGO T8 V1.8 | WROVER | GIGADEVICE_GD25LQ32
* TTGO T8 S2 V1.1 | | WINBOND_NEX_W25Q32_V
* TTGO T5S V1.9 | | WINBOND_NEX_W25Q32_V
* TTGO T5S V2.8 | | BOYA_BY25Q32AL
* TTGO T5 4.7 | WROVER-E | XMC_XM25QH128C
* TTGO T-Watch | | WINBOND_NEX_W25Q128_V
* Ai-T NodeMCU-S3 | ESP-S3-12K | GIGADEVICE_GD25Q64C
* TTGO T-Dongle | | BOYA_BY25Q32AL
* TTGO S3 Core | | GIGADEVICE_GD25Q64C
* TTGO T-01C3 | | BOYA_BY25Q32AL
* | ESP-C3-12F | XMC_XM25QH32B
* LilyGO T-TWR | WROOM-1-N16R8 | GIGADEVICE_GD25Q128
*/

switch(flash_id)
Expand Down
2 changes: 1 addition & 1 deletion software/firmware/source/SoftRF/src/platform/ESP32.h
Original file line number Diff line number Diff line change
Expand Up @@ -491,10 +491,10 @@ struct rst_info {
//#define EXCLUDE_IMU

#if !defined(CONFIG_IDF_TARGET_ESP32)
#define EXCLUDE_NRF905
#define EXCLUDE_UATM

#if defined(CONFIG_IDF_TARGET_ESP32S2) || defined(CONFIG_IDF_TARGET_ESP32S3)
#define EXCLUDE_NRF905
#define EXCLUDE_LED_RING

/* Experimental */
Expand Down
8 changes: 8 additions & 0 deletions software/firmware/source/libraries/nRF905/nRF905_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,19 @@

#elif defined(ESP32)

#if !defined(CONFIG_IDF_TARGET_ESP32C3)
// DOIT ESP32
#define TRX_EN 2 // Enable/standby pin
#define PWR_MODE 14 // Power mode pin
#define TX_EN 26 // TX / RX mode pin
#define CS_N 18 // SPI slave select pin
#else
// NodeMCU 1.0 + ESP-C3-12F GPIO pins
#define TRX_EN 10 // D4 // Enable/standby pin
#define PWR_MODE 18 // D2 // Power mode pin
#define TX_EN 2 // D0 // TX / RX mode pin
#define CS_N 8 // D8 // SPI slave select pin
#endif /* CONFIG_IDF_TARGET_ESP32C3 */

#define CD 0 // Carrier detect pin (for collision avoidance, if enabled)
#define DREADY 5
Expand Down

0 comments on commit 5521b2a

Please sign in to comment.