diff --git a/T-Beam_V10_OLED_SH1106_STRATUX_BT b/T-Beam_V10_OLED_SH1106_STRATUX_BT new file mode 100644 index 0000000..098abf4 --- /dev/null +++ b/T-Beam_V10_OLED_SH1106_STRATUX_BT @@ -0,0 +1,87 @@ +#define DEFAULT_AcftType 8 // [0..15] default aircraft-type: Powered Aircraft +#define DEFAULT_GeoidSepar 40 // [m] +#define DEFAULT_CONbaud 115200 +#define DEFAULT_PPSdelay 100 +#define DEFAULT_FreqPlan 0 +#define DEFAULT_DispPage 3 // Fab501 Page to Display After Boot or Reset + + +// #define WITH_HELTEC // HELTEC module: PCB LED on GPI025 +// #define WITH_HELTEC_V2 // HELTEC module v2 +// #define WITH_TTGO // TTGO module: PCB LED on GPIO2, GPIO25 free to use as DAC2 output +// #define WITH_TBEAM // T-Beam module +#define WITH_TBEAM_V10 // T-Beam module +// #define WITH_M5_JACEK // JACEK M5 ESP32 OGN-Tracker +// #define WITH_FollowMe // by Avionix + +// #define WITH_ILI9341 // 320x240 M5stack +// #define WITH_ST7789 // IPS 240x240 ST7789 +// #define WITH_TFT_LCD // TFT LCD +// #define WITH_OLED // OLED display on the I2C: some TTGO modules are without OLED display +// #define WITH_OLED2 // 2nd OLED display, I2C address next higher +#define WITH_U8G2_OLED // I2C OLED through the U8g2 library +#define WITH_U8G2_SH1106 // correct controller for the bigger OLED +// #define WITH_U8G2_FLIP // flip the OLED screen (rotate by 180deg) + +#define WITH_RFM95 // RF chip selection: both HELTEC and TTGO use sx1276 which is same as RFM95 + +// #define WITH_SLEEP // with software sleep mode controlled by the long-press on the button + +#define WITH_AXP // with AXP192 power controller (T-BEAM V1.0) +// #define WITH_BQ // with BQ24295 power controller (FollowMe) + +// #define WITH_LED_RX +// #define WITH_LED_TX + +// #define WITH_GPS_ENABLE // use GPS_ENABLE control line to turn the GPS ON/OFF +#define WITH_GPS_PPS // use the PPS signal from GPS for precise time-sync. +#define WITH_GPS_CONFIG // attempt to configure higher GPS baud rate and airborne mode + +#define WITH_GPS_UBX // GPS understands UBX +// #define WITH_GPS_MTK // GPS understands MTK +// #define WITH_GPS_SRF +// #define WITH_MAVLINK + +#define WITH_GPS_UBX_PASS // to pass directly UBX packets to/from GPS +#define WITH_GPS_NMEA_PASS // to pass directly NMEA to/from GPS + +// #define WITH_BMP180 // BMP180 pressure sensor +// #define WITH_BMP280 // BMP280 pressure sensor +#define WITH_BME280 // BMP280 with humidity (but still works with BMP280) +// #define WITH_MS5607 // MS5607 pressure sensor +// #define WITH_MS5611 // MS5611 pressure sensor + +// #define WITH_BMX055 // BMX055 magnetic and IMU sensor + +// #define WITH_LORAWAN // LoRaWAN connectivity +// #define WITH_FANET // FANET transmission and reception +#define WITH_PAW // Add PAW transmission + +#define WITH_PFLAA // PFLAU and PFLAA for compatibility with XCsoar and LK8000 +// #define WITH_POGNT +// #define WITH_GDL90 +// #define WITH_PGAV5 +#define WITH_LOOKOUT + +#define WITH_CONFIG // interpret the console input: $POGNS to change parameters + +#define WITH_BEEPER // with digital buzzer +// #define WITH_SOUND // with analog sound produced by DAC on pin 25 + +// #define WITH_KNOB +// #define WITH_VARIO + +// #define WITH_SD // use the SD card in SPI mode and FAT file system +#define WITH_SPIFFS // use SPIFFS file system in Flash +// #define WITH_SPIFFS_FAT +#define WITH_LOG // log own positions and other received to SPIFFS +// #define WITH_SDLOG // log own position and other data to uSD card + +#define WITH_STRATUX +#define WITH_BT_SPP // Bluetooth serial port for smartphone/tablet link +#define WITH_WIFI // attempt to connect to the wifi router for uploading the log files +// #define WITH_AP // Open Access Point MOde +#define WITH_HTTP // Open Web Interface + +// #define WITH_ENCRYPT // Encrypt (optionally) the position + diff --git a/main/config.h b/main/config.h index 72419cf..beba1ff 100644 --- a/main/config.h +++ b/main/config.h @@ -1,17 +1,29 @@ -#define DEFAULT_AcftType 1 // [0..15] default aircraft-type: glider +#define DEFAULT_AcftType 8 // [0..15] default aircraft-type: Powered Aircraft #define DEFAULT_GeoidSepar 40 // [m] #define DEFAULT_CONbaud 115200 #define DEFAULT_PPSdelay 100 #define DEFAULT_FreqPlan 0 - +#define DEFAULT_DispPage 3 // Fab501 Page to Display After Boot or Reset +#define WIFI_ADDRESS_IP1 192 // 192.168.1.1 for IP Address +#define WIFI_ADDRESS_IP2 168 +#define WIFI_ADDRESS_IP3 1 +#define WIFI_ADDRESS_IP4 1 +#define WIFI_ADDRESS_GW1 0 // 0.0.0.0 for Gateway +#define WIFI_ADDRESS_GW2 0 +#define WIFI_ADDRESS_GW3 0 +#define WIFI_ADDRESS_GW4 0 +#define WIFI_ADDRESS_MK1 255 // 255.255.255.0 for Mask +#define WIFI_ADDRESS_MK2 255 +#define WIFI_ADDRESS_MK3 255 +#define WIFI_ADDRESS_MK4 0 // #define WITH_HELTEC // HELTEC module: PCB LED on GPI025 // #define WITH_HELTEC_V2 // HELTEC module v2 // #define WITH_TTGO // TTGO module: PCB LED on GPIO2, GPIO25 free to use as DAC2 output // #define WITH_TBEAM // T-Beam module -// #define WITH_TBEAM_V10 // T-Beam module +#define WITH_TBEAM_V10 // T-Beam module // #define WITH_M5_JACEK // JACEK M5 ESP32 OGN-Tracker -#define WITH_FollowMe // by Avionix +// #define WITH_FollowMe // by Avionix // #define WITH_ILI9341 // 320x240 M5stack // #define WITH_ST7789 // IPS 240x240 ST7789 @@ -20,29 +32,30 @@ // #define WITH_OLED2 // 2nd OLED display, I2C address next higher #define WITH_U8G2_OLED // I2C OLED through the U8g2 library #define WITH_U8G2_SH1106 // correct controller for the bigger OLED -#define WITH_U8G2_FLIP // flip the OLED screen (rotate by 180deg) +// #define WITH_U8G2_FLIP // flip the OLED screen (rotate by 180deg) #define WITH_RFM95 // RF chip selection: both HELTEC and TTGO use sx1276 which is same as RFM95 +//#define WITH_SX1262 // SX1262 Support // #define WITH_SLEEP // with software sleep mode controlled by the long-press on the button -// #define WITH_AXP // with AXP192 power controller (T-BEAM V1.0) +#define WITH_AXP // with AXP192 power controller (T-BEAM V1.0) // #define WITH_BQ // with BQ24295 power controller (FollowMe) // #define WITH_LED_RX // #define WITH_LED_TX -#define WITH_GPS_ENABLE // use GPS_ENABLE control line to turn the GPS ON/OFF +// #define WITH_GPS_ENABLE // use GPS_ENABLE control line to turn the GPS ON/OFF #define WITH_GPS_PPS // use the PPS signal from GPS for precise time-sync. #define WITH_GPS_CONFIG // attempt to configure higher GPS baud rate and airborne mode -// #define WITH_GPS_UBX // GPS understands UBX -#define WITH_GPS_MTK // GPS understands MTK +#define WITH_GPS_UBX // GPS understands UBX +// #define WITH_GPS_MTK // GPS understands MTK // #define WITH_GPS_SRF // #define WITH_MAVLINK -// #define WITH_GPS_UBX_PASS // to pass directly UBX packets to/from GPS -// #define WITH_GPS_NMEA_PASS // to pass directly NMEA to/from GPS +#define WITH_GPS_UBX_PASS // to pass directly UBX packets to/from GPS +#define WITH_GPS_NMEA_PASS // to pass directly NMEA to/from GPS // #define WITH_BMP180 // BMP180 pressure sensor // #define WITH_BMP280 // BMP280 pressure sensor @@ -54,6 +67,7 @@ #define WITH_LORAWAN // LoRaWAN connectivity #define WITH_FANET // FANET transmission and reception +#define WITH_PAW // Add PAW transmission #define WITH_PFLAA // PFLAU and PFLAA for compatibility with XCsoar and LK8000 // #define WITH_POGNT @@ -61,23 +75,27 @@ // #define WITH_PGAV5 #define WITH_LOOKOUT +#define WITH_SKYDEMON //Adapt NMEA Output for SKYDEMON + #define WITH_CONFIG // interpret the console input: $POGNS to change parameters -// #define WITH_BEEPER // with digital buzzer +#define WITH_BEEPER // with digital buzzer // #define WITH_SOUND // with analog sound produced by DAC on pin 25 // #define WITH_KNOB // #define WITH_VARIO -#define WITH_SD // use the SD card in SPI mode and FAT file system +// #define WITH_SD // use the SD card in SPI mode and FAT file system #define WITH_SPIFFS // use SPIFFS file system in Flash -#define WITH_SPIFFS_FAT +// #define WITH_SPIFFS_FAT #define WITH_LOG // log own positions and other received to SPIFFS -#define WITH_SDLOG // log own position and other data to uSD card +// #define WITH_SDLOG // log own position and other data to uSD card -// #define WITH_STRATUX +//#define WITH_STRATUX #define WITH_BT_SPP // Bluetooth serial port for smartphone/tablet link -// #define WITH_WIFI // attempt to connect to the wifi router for uploading the log files +#define WITH_WIFI // attempt to connect to the wifi router for uploading the log files +#define WITH_AP // Open Access Point MOde +#define WITH_HTTP // Open Web Interface // #define WITH_ENCRYPT // Encrypt (optionally) the position diff --git a/main/disp.cpp b/main/disp.cpp index 091fb5f..9bf3686 100644 --- a/main/disp.cpp +++ b/main/disp.cpp @@ -26,11 +26,11 @@ #ifdef WITH_U8G2_OLED const uint8_t DISP_Pages = 12; -static uint8_t DISP_Page = 0; +static uint8_t DISP_Page = DEFAULT_DispPage ; //Fab501 before 0 #endif #if defined(WITH_ST7789) || defined(WITH_ILI9341) const uint8_t DISP_Pages = 9; -static uint8_t DISP_Page = 0; +static uint8_t DISP_Page = DEFAULT_DispPage ; //Fab501 before 0 #endif diff --git a/main/wifi.cpp b/main/wifi.cpp index d3c6e36..d153a00 100644 --- a/main/wifi.cpp +++ b/main/wifi.cpp @@ -1,5 +1,5 @@ #include - +#include "config.h" //Added By Fab501 #include "wifi.h" #include "format.h" @@ -49,7 +49,23 @@ static esp_err_t WIFI_event_handler(void *ctx, system_event_t *event) return ESP_OK; } esp_err_t WIFI_Init(void) -{ esp_err_t Err; +{ + + //Fab501 test to change IP to 192.168.1.1 for comptability with SkyDemon + + esp_netif_init(); + ESP_ERROR_CHECK(esp_event_loop_create_default()); + esp_netif_t* wifiAP = esp_netif_create_default_wifi_ap(); + esp_netif_ip_info_t ipInfo; + IP4_ADDR(&ipInfo.ip, WIFI_ADDRESS_IP1,WIFI_ADDRESS_IP2,WIFI_ADDRESS_IP3,WIFI_ADDRESS_IP4); // Change IP in config.h + IP4_ADDR(&ipInfo.gw, WIFI_ADDRESS_GW1,WIFI_ADDRESS_GW2,WIFI_ADDRESS_GW3,WIFI_ADDRESS_GW4); // Change GATEWAY in config.h + IP4_ADDR(&ipInfo.netmask, WIFI_ADDRESS_MK1,WIFI_ADDRESS_MK2,WIFI_ADDRESS_MK3,WIFI_ADDRESS_MK4); // change MASK in config.h + esp_netif_dhcps_stop(wifiAP); + esp_netif_set_ip_info(wifiAP, &ipInfo); + esp_netif_dhcps_start(wifiAP); + + // end of Fab501 changes + esp_err_t Err; tcpip_adapter_init(); Err = esp_event_loop_init(WIFI_event_handler, NULL); if(Err!=ESP_OK) return Err; wifi_init_config_t Config = WIFI_INIT_CONFIG_DEFAULT();