MSP VTX device (#2007)
[ExpressLRS.git] / src / lib / MSPVTX / freqTable.h
blob1fa94ea33c440aaaf747c4a95ddd00f91612f93e
1 #pragma once
3 #include "stdint.h"
5 #define BAND_NAME_LENGTH 8
6 #define IS_FACTORY_BAND 1
7 #define CHANNEL_COUNT 8
8 #define FREQ_TABLE_SIZE 48
10 #define RACE_MODE 2
11 #define RACE_MODE_POWER 14 // dBm
12 #define NUM_POWER_LEVELS 5
13 #define POWER_LEVEL_LABEL_LENGTH 3
15 const uint8_t channelFreqLabel[FREQ_TABLE_SIZE] = {
16 'B', 'A', 'N', 'D', '_', 'A', ' ', ' ', // A
17 'B', 'A', 'N', 'D', '_', 'B', ' ', ' ', // B
18 'B', 'A', 'N', 'D', '_', 'E', ' ', ' ', // E
19 'F', 'A', 'T', 'S', 'H', 'A', 'R', 'K', // F
20 'R', 'A', 'C', 'E', ' ', ' ', ' ', ' ', // R
21 'R', 'A', 'C', 'E', '_', 'L', 'O', 'W', // L
24 const uint8_t bandLetter[6] = {'A', 'B', 'E', 'F', 'R', 'L'};
26 const uint16_t channelFreqTable[FREQ_TABLE_SIZE] = {
27 5865, 5845, 5825, 5805, 5785, 5765, 5745, 5725, // A
28 5733, 5752, 5771, 5790, 5809, 5828, 5847, 5866, // B
29 5705, 5685, 5665, 5645, 5885, 5905, 5925, 5945, // E
30 5740, 5760, 5780, 5800, 5820, 5840, 5860, 5880, // F
31 5658, 5695, 5732, 5769, 5806, 5843, 5880, 5917, // R
32 5362, 5399, 5436, 5473, 5510, 5547, 5584, 5621 // L
35 const uint8_t powerLevelsLut[NUM_POWER_LEVELS] = {1, RACE_MODE, 14, 20, 26};
37 const uint8_t powerLevelsLabel[NUM_POWER_LEVELS * POWER_LEVEL_LABEL_LENGTH] = {'0', ' ', ' ',
38 'R', 'C', 'E',
39 '2', '5', ' ',
40 '1', '0', '0',
41 '4', '0', '0'};
43 uint8_t getFreqTableChannels(void);
44 uint8_t getFreqTableBands(void);
45 uint16_t getFreqByIdx(uint8_t idx);
46 uint8_t channelFreqLabelByIdx(uint8_t idx);
47 uint8_t getBandLetterByIdx(uint8_t idx);