mirror of
https://github.com/opentx/opentx.git
synced 2025-07-24 00:35:18 +03:00
Fixes
This commit is contained in:
parent
98c3dd9acc
commit
eb2b82bf92
8 changed files with 16 additions and 21 deletions
|
@ -400,7 +400,7 @@ void lcdDrawText(coord_t x, coord_t y, const char * s, LcdFlags flags)
|
||||||
|
|
||||||
void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags)
|
void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags)
|
||||||
{
|
{
|
||||||
coord_t x = (LCD_W - FW * strlen(s)) / 2;
|
coord_t x = (LCD_W - getTextWidth(s, flags)) / 2;
|
||||||
lcdDrawText(x, y, s, flags);
|
lcdDrawText(x, y, s, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -349,7 +349,7 @@ void lcdDrawSizedText(coord_t x, coord_t y, const char * s, uint8_t len)
|
||||||
|
|
||||||
void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags)
|
void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags)
|
||||||
{
|
{
|
||||||
coord_t x = (LCD_W - FW * strlen(s)) / 2;
|
coord_t x = (LCD_W - getTextWidth(s, flags)) / 2;
|
||||||
lcdDrawText(x, y, s, flags);
|
lcdDrawText(x, y, s, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,12 +25,12 @@ void pxx2ModuleRequiredScreen(event_t event);
|
||||||
|
|
||||||
void menuRadioPowerMeter(event_t event)
|
void menuRadioPowerMeter(event_t event)
|
||||||
{
|
{
|
||||||
if(!isModulePXX2(INTERNAL_MODULE)) {
|
if (!isModulePXX2(INTERNAL_MODULE)) {
|
||||||
pxx2ModuleRequiredScreen(event);
|
pxx2ModuleRequiredScreen(event);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(TELEMETRY_STREAMING()) {
|
if (TELEMETRY_STREAMING()) {
|
||||||
lcdDrawCenteredText(LCD_H/2, "Turn off receiver");
|
lcdDrawCenteredText(LCD_H/2, "Turn off receiver");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -46,23 +46,21 @@ void menuRadioPowerMeter(event_t event)
|
||||||
resumePulses();
|
resumePulses();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (moduleSettings[INTERNAL_MODULE].mode != MODULE_MODE_POWER_METER) {
|
|
||||||
|
if (moduleSettings[INTERNAL_MODULE].mode != MODULE_MODE_POWER_METER) {
|
||||||
memclear(&reusableBuffer.powerMeter, sizeof(reusableBuffer.powerMeter));
|
memclear(&reusableBuffer.powerMeter, sizeof(reusableBuffer.powerMeter));
|
||||||
|
reusableBuffer.powerMeter.freq = 2400;
|
||||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_POWER_METER;
|
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_POWER_METER;
|
||||||
}
|
}
|
||||||
|
|
||||||
coord_t y = MENU_HEADER_HEIGHT + 1 + FH;
|
coord_t y = MENU_HEADER_HEIGHT + 1 + FH;
|
||||||
LcdFlags attr = (menuVerticalPosition == 0 ? INVERS : 0);
|
LcdFlags attr = (menuVerticalPosition == 0 ? INVERS : 0);
|
||||||
lcdDrawText(0, y, "Freq.");
|
lcdDrawText(0, y, "Freq.");
|
||||||
lcdDrawNumber(8*FW, y, reusableBuffer.powerMeter.freqBand ? 900: 2400, LEFT|attr|(s_editMode > 0 ? BLINK : 0));
|
lcdDrawNumber(8*FW, y, reusableBuffer.powerMeter.freq, LEFT|attr|(s_editMode > 0 ? BLINK : 0));
|
||||||
lcdDrawText(lcdNextPos, y, " MHz band");
|
lcdDrawText(lcdNextPos, y, " MHz band");
|
||||||
if (attr) {
|
if (attr) {
|
||||||
CHECK_INCDEC_MODELVAR(event, reusableBuffer.powerMeter.freqBand, 0, 1);
|
reusableBuffer.powerMeter.freq = checkIncDec(event, reusableBuffer.powerMeter.freq == 900, 0, 1) ? 900 : 2400;
|
||||||
if (checkIncDec_Ret) {
|
if (checkIncDec_Ret) {
|
||||||
if(reusableBuffer.powerMeter.freqBand == 0)
|
|
||||||
reusableBuffer.powerMeter.freq = 900; //TODO fine tune to region ? (866/900/915)
|
|
||||||
else
|
|
||||||
reusableBuffer.powerMeter.freq = 2400;
|
|
||||||
reusableBuffer.powerMeter.power = 0;
|
reusableBuffer.powerMeter.power = 0;
|
||||||
reusableBuffer.powerMeter.peak = 0;
|
reusableBuffer.powerMeter.peak = 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,12 +24,12 @@ extern void pxx2ModuleRequiredScreen(event_t event);
|
||||||
|
|
||||||
void menuRadioSpectrumAnalyser(event_t event)
|
void menuRadioSpectrumAnalyser(event_t event)
|
||||||
{
|
{
|
||||||
if(!isModulePXX2(INTERNAL_MODULE)) {
|
if (!isModulePXX2(INTERNAL_MODULE)) {
|
||||||
pxx2ModuleRequiredScreen(event);
|
pxx2ModuleRequiredScreen(event);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(TELEMETRY_STREAMING()) {
|
if (TELEMETRY_STREAMING()) {
|
||||||
lcdDrawCenteredText(15, "Turn off receiver");
|
lcdDrawCenteredText(15, "Turn off receiver");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -45,7 +45,8 @@ void menuRadioSpectrumAnalyser(event_t event)
|
||||||
resumePulses();
|
resumePulses();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (moduleSettings[INTERNAL_MODULE].mode != MODULE_MODE_SPECTRUM_ANALYSER) {
|
|
||||||
|
if (moduleSettings[INTERNAL_MODULE].mode != MODULE_MODE_SPECTRUM_ANALYSER) {
|
||||||
memclear(reusableBuffer.spectrumAnalyser.bars, sizeof(reusableBuffer.spectrumAnalyser.bars));
|
memclear(reusableBuffer.spectrumAnalyser.bars, sizeof(reusableBuffer.spectrumAnalyser.bars));
|
||||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_SPECTRUM_ANALYSER;
|
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_SPECTRUM_ANALYSER;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ void pxx2ModuleRequiredScreen(event_t event)
|
||||||
lcdDrawCenteredText(30, "ACCESS UPGRADE ON");
|
lcdDrawCenteredText(30, "ACCESS UPGRADE ON");
|
||||||
lcdDrawCenteredText(45, "YOUR INTERNAL MODULE");
|
lcdDrawCenteredText(45, "YOUR INTERNAL MODULE");
|
||||||
|
|
||||||
if(event == EVT_KEY_FIRST(KEY_EXIT)) {
|
if (event == EVT_KEY_FIRST(KEY_EXIT)) {
|
||||||
killEvents(event);
|
killEvents(event);
|
||||||
popMenu();
|
popMenu();
|
||||||
}
|
}
|
||||||
|
@ -50,7 +50,7 @@ void menuRadioTools(event_t event)
|
||||||
{
|
{
|
||||||
SIMPLE_MENU("TOOLS", menuTabGeneral, MENU_RADIO_TOOLS, HEADER_LINE + 2);
|
SIMPLE_MENU("TOOLS", menuTabGeneral, MENU_RADIO_TOOLS, HEADER_LINE + 2);
|
||||||
|
|
||||||
#if defined(PXX2) && !(defined(PCBX9D) || defined(PCBX9DP) || defined(PCBX9E) || defined(PCBX7) || (defined(PCBXLITE) && !defined(PCBXLITES)))
|
#if defined(PXX2) && (defined(PCBXLITES) || defined(PCBX3))
|
||||||
addRadioTool(0, "Spectrum Analyser", menuRadioSpectrumAnalyser, event);
|
addRadioTool(0, "Spectrum Analyser", menuRadioSpectrumAnalyser, event);
|
||||||
addRadioTool(1, "Power Meter", menuRadioPowerMeter, event);
|
addRadioTool(1, "Power Meter", menuRadioPowerMeter, event);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1220,7 +1220,6 @@ union ReusableBuffer
|
||||||
uint32_t freq;
|
uint32_t freq;
|
||||||
int16_t power;
|
int16_t power;
|
||||||
int16_t peak;
|
int16_t peak;
|
||||||
uint8_t freqBand;
|
|
||||||
} powerMeter;
|
} powerMeter;
|
||||||
|
|
||||||
struct
|
struct
|
||||||
|
|
|
@ -208,9 +208,6 @@ void copyTrainerModuleData(A * dest, B * src)
|
||||||
template <class A, class B>
|
template <class A, class B>
|
||||||
void copyReceiverData(A * dest, B * src)
|
void copyReceiverData(A * dest, B * src)
|
||||||
{
|
{
|
||||||
dest->used = src->used;
|
|
||||||
dest->telemetry = src->telemetry;
|
|
||||||
dest->dirty = src->dirty;
|
|
||||||
memcpy(dest->name, src->name, sizeof(dest->name));
|
memcpy(dest->name, src->name, sizeof(dest->name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -206,7 +206,7 @@ extern "C" void TELEMETRY_USART_IRQHandler(void)
|
||||||
#if defined(LUA)
|
#if defined(LUA)
|
||||||
if (telemetryProtocol == PROTOCOL_TELEMETRY_FRSKY_SPORT) {
|
if (telemetryProtocol == PROTOCOL_TELEMETRY_FRSKY_SPORT) {
|
||||||
static uint8_t prevdata;
|
static uint8_t prevdata;
|
||||||
if (prevdata == 0x7E && outputTelemetryBuffer.size > 0 && data == outputTelemetryBuffer.trigger && outputTelemetryBuffer.destination == SPORT_MODULE) {
|
if (prevdata == 0x7E && outputTelemetryBuffer.size > 0 && outputTelemetryBuffer.destination.value == TELEMETRY_ENDPOINT_SPORT && data == outputTelemetryBuffer.sport.physicalId) {
|
||||||
sportSendBuffer(outputTelemetryBuffer.data, outputTelemetryBuffer.size);
|
sportSendBuffer(outputTelemetryBuffer.data, outputTelemetryBuffer.size);
|
||||||
}
|
}
|
||||||
prevdata = data;
|
prevdata = data;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue