Skip to content

Commit e9b037e

Browse files
Add Marauder Mini v3 configuration
1 parent 29b6783 commit e9b037e

File tree

5 files changed

+247
-35
lines changed

5 files changed

+247
-35
lines changed

esp32_marauder/GpsInterface.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
//#define GPS_NMEA_SCRNWRAP true //default:true, except on MARAUDER_MINI where false
1717
//#define GPS_NMEA_MAXQUEUE 30 //default:30 messages max in queue
1818

19-
#ifdef MARAUDER_MINI
19+
#if defined(MARAUDER_MINI) || defined(MARAUDER_MINI_V3)
2020
#ifndef GPS_NMEA_SCRNWRAP
2121
#define GPS_NMEA_SCRNWRAP false
2222
#endif

esp32_marauder/MenuFunctions.cpp

Lines changed: 80 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -463,10 +463,19 @@ void MenuFunctions::main(uint32_t currentTime)
463463
(wifi_scan_obj.currentScanMode == WIFI_SCAN_PACKET_RATE) ||
464464
(wifi_scan_obj.currentScanMode == WIFI_SCAN_RAW_CAPTURE) ||
465465
(wifi_scan_obj.currentScanMode == WIFI_SCAN_SIG_STREN)) {
466-
if (wifi_scan_obj.set_channel < 14)
467-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
468-
else
469-
wifi_scan_obj.changeChannel(1);
466+
#ifndef HAS_DUAL_BAND
467+
if (wifi_scan_obj.set_channel < 14)
468+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
469+
else
470+
wifi_scan_obj.changeChannel(1);
471+
#else
472+
if (wifi_scan_obj.dual_band_channel_index < DUAL_BAND_CHANNELS - 1)
473+
wifi_scan_obj.dual_band_channel_index++;
474+
else
475+
wifi_scan_obj.dual_band_channel_index = 0;
476+
477+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channel[wifi_scan_obj.dual_band_channel_index]);
478+
#endif
470479
}
471480
else if (wifi_scan_obj.currentScanMode == WIFI_SCAN_CHAN_ACT) {
472481
#ifndef HAS_DUAL_BAND
@@ -519,10 +528,19 @@ void MenuFunctions::main(uint32_t currentTime)
519528
(wifi_scan_obj.currentScanMode == WIFI_SCAN_PACKET_RATE) ||
520529
(wifi_scan_obj.currentScanMode == WIFI_SCAN_RAW_CAPTURE) ||
521530
(wifi_scan_obj.currentScanMode == WIFI_SCAN_SIG_STREN)) {
522-
if (wifi_scan_obj.set_channel > 1)
523-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
524-
else
525-
wifi_scan_obj.changeChannel(14);
531+
#ifndef HAS_DUAL_BAND
532+
if (wifi_scan_obj.set_channel > 1)
533+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
534+
else
535+
wifi_scan_obj.changeChannel(14);
536+
#else
537+
if (wifi_scan_obj.dual_band_channel_index > 0)
538+
wifi_scan_obj.dual_band_channel_index--;
539+
else
540+
wifi_scan_obj.dual_band_channel_index = DUAL_BAND_CHANNELS - 1;
541+
542+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channels[wifi_scan_obj.dual_band_channel_index]);
543+
#endif
526544
}
527545
else if (wifi_scan_obj.currentScanMode == WIFI_SCAN_CHAN_ACT) {
528546
#ifndef HAS_DUAL_BAND
@@ -631,10 +649,19 @@ void MenuFunctions::main(uint32_t currentTime)
631649
(wifi_scan_obj.currentScanMode == WIFI_SCAN_PACKET_RATE) ||
632650
(wifi_scan_obj.currentScanMode == WIFI_SCAN_RAW_CAPTURE) ||
633651
(wifi_scan_obj.currentScanMode == WIFI_SCAN_SIG_STREN)) {
634-
if (wifi_scan_obj.set_channel < 14)
635-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
636-
else
637-
wifi_scan_obj.changeChannel(1);
652+
#ifndef HAS_DUAL_BAND
653+
if (wifi_scan_obj.set_channel < 14)
654+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
655+
else
656+
wifi_scan_obj.changeChannel(1);
657+
#else
658+
if (wifi_scan_obj.dual_band_channel_index < DUAL_BAND_CHANNELS - 1)
659+
wifi_scan_obj.dual_band_channel_index++;
660+
else
661+
wifi_scan_obj.dual_band_channel_index = 0;
662+
663+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channels[wifi_scan_obj.dual_band_channel_index]);
664+
#endif
638665
}
639666
else if (wifi_scan_obj.currentScanMode == WIFI_SCAN_CHAN_ACT) {
640667
#ifndef HAS_DUAL_BAND
@@ -695,10 +722,19 @@ void MenuFunctions::main(uint32_t currentTime)
695722
(wifi_scan_obj.currentScanMode == WIFI_SCAN_PACKET_RATE) ||
696723
(wifi_scan_obj.currentScanMode == WIFI_SCAN_RAW_CAPTURE) ||
697724
(wifi_scan_obj.currentScanMode == WIFI_SCAN_SIG_STREN)) {
698-
if (wifi_scan_obj.set_channel > 1)
699-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
700-
else
701-
wifi_scan_obj.changeChannel(14);
725+
#ifndef HAS_DUAL_BAND
726+
if (wifi_scan_obj.set_channel > 1)
727+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
728+
else
729+
wifi_scan_obj.changeChannel(14);
730+
#else
731+
if (wifi_scan_obj.dual_band_channel_index > 0)
732+
wifi_scan_obj.dual_band_channel_index--;
733+
else
734+
wifi_scan_obj.dual_band_channel_index = DUAL_BAND_CHANNELS - 1;
735+
736+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channels[wifi_scan_obj.dual_band_channel_index]);
737+
#endif
702738
}
703739
else if (wifi_scan_obj.currentScanMode == WIFI_SCAN_CHAN_ACT) {
704740
#ifndef HAS_DUAL_BAND
@@ -722,10 +758,19 @@ void MenuFunctions::main(uint32_t currentTime)
722758
if (this->isKeyPressed('/')) {
723759
#endif
724760
if (wifi_scan_obj.currentScanMode == WIFI_SCAN_OFF) {
725-
if (wifi_scan_obj.set_channel < 14)
726-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
727-
else
728-
wifi_scan_obj.changeChannel(1);
761+
#ifndef HAS_DUAL_BAND
762+
if (wifi_scan_obj.set_channel < 14)
763+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel + 1);
764+
else
765+
wifi_scan_obj.changeChannel(1);
766+
#else
767+
if (wifi_scan_obj.dual_band_channel_index < DUAL_BAND_CHANNELS - 1)
768+
wifi_scan_obj.dual_band_channel_index++;
769+
else
770+
wifi_scan_obj.dual_band_channel_index = 0;
771+
772+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channels[wifi_scan_obj.dual_band_channel_index]);
773+
#endif
729774
}
730775
}
731776
#endif
@@ -737,10 +782,19 @@ void MenuFunctions::main(uint32_t currentTime)
737782
if (this->isKeyPressed(',')) {
738783
#endif
739784
if (wifi_scan_obj.currentScanMode == WIFI_SCAN_OFF) {
740-
if (wifi_scan_obj.set_channel > 1)
741-
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
742-
else
743-
wifi_scan_obj.changeChannel(14);
785+
#ifndef HAS_DUAL_BAND
786+
if (wifi_scan_obj.set_channel > 1)
787+
wifi_scan_obj.changeChannel(wifi_scan_obj.set_channel - 1);
788+
else
789+
wifi_scan_obj.changeChannel(14);
790+
#else
791+
if (wifi_scan_obj.dual_band_channel_index > 0)
792+
wifi_scan_obj.dual_band_channel_index--;
793+
else
794+
wifi_scan_obj.dual_band_channel_index = DUAL_BAND_CHANNELS - 1;
795+
796+
wifi_scan_obj.changeChannel(wifi_scan_obj.dual_band_channels[wifi_scan_obj.dual_band_channel_index]);
797+
#endif
744798
}
745799
}
746800
#endif
@@ -864,7 +918,7 @@ void MenuFunctions::updateStatusBar()
864918

865919
bool status_changed = false;
866920

867-
#if defined(MARAUDER_MINI) || defined(MARAUDER_M5STICKC) || defined(MARAUDER_REV_FEATHER) || defined(MARAUDER_CARDPUTER)
921+
#if defined(MARAUDER_MINI) || defined(MARAUDER_M5STICKC) || defined(MARAUDER_REV_FEATHER) || defined(MARAUDER_CARDPUTER) || defined(MARAUDER_MINI_V3)
868922
display_obj.tft.setFreeFont(NULL);
869923
#endif
870924

@@ -918,7 +972,7 @@ void MenuFunctions::updateStatusBar()
918972

919973
if ((current_channel != wifi_scan_obj.old_channel) || (status_changed)) {
920974
wifi_scan_obj.old_channel = current_channel;
921-
#if defined(MARAUDER_MINI) || defined(MARAUDER_M5STICKC) || defined(MARAUDER_REV_FEATHER) || defined(MARAUDER_CARDPUTER)
975+
#if defined(MARAUDER_MINI) || defined(MARAUDER_M5STICKC) || defined(MARAUDER_REV_FEATHER) || defined(MARAUDER_CARDPUTER) || defined(MARAUDER_MINI_V3)
922976
display_obj.tft.fillRect(TFT_WIDTH/4, 0, CHAR_WIDTH * 6, STATUS_BAR_WIDTH, STATUSBAR_COLOR);
923977
#elif defined(HAS_DUAL_BAND)
924978
display_obj.tft.fillRect(50, 0, (CHAR_WIDTH / 2) * 8, STATUS_BAR_WIDTH, STATUSBAR_COLOR);

esp32_marauder/WiFiScan.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -282,10 +282,6 @@ class WiFiScan
282282
uint8_t ap_mac[6] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
283283
uint8_t sta_mac[6] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
284284

285-
uint8_t dual_band_channels[DUAL_BAND_CHANNELS] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165, 169, 173, 177};
286-
287-
uint8_t dual_band_channel_index = 0;
288-
289285
// Settings
290286
uint mac_history_cursor = 0;
291287
uint8_t channel_hop_delay = 1;
@@ -665,6 +661,10 @@ class WiFiScan
665661
static MacEntry mac_entries[mac_history_len_half];
666662
static uint8_t mac_entry_state[mac_history_len_half];
667663

664+
uint8_t dual_band_channels[DUAL_BAND_CHANNELS] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165, 169, 173, 177};
665+
666+
uint8_t dual_band_channel_index = 0;
667+
668668
// Stuff for RAW stats
669669
uint32_t mgmt_frames = 0;
670670
uint32_t data_frames = 0;

0 commit comments

Comments
 (0)