Rename 'frsky_hiprec_vfas' to 'frsky_vfas_precision' and introduce enum
for FRSKY_VFAS_PRECISION_LOW and FRSKY_VFAS_PRECISION_HIGH. Improves naming for humans. 'hiprec' was meaningless and untranslatable. See https://cleancoders.com/episode/clean-code-episode-2/show
This commit is contained in:
parent
d82fc6b9be
commit
4cf6fe6571
|
@ -52,12 +52,12 @@ set telemetry_inversion = 1
|
||||||
Cleanflight can send VFAS (FrSky Ampere Sensor Voltage) in two ways:
|
Cleanflight can send VFAS (FrSky Ampere Sensor Voltage) in two ways:
|
||||||
|
|
||||||
```
|
```
|
||||||
set frsky_hiprec_vfas = 0
|
set frsky_vfas_precision = 0
|
||||||
```
|
```
|
||||||
This is default setting which supports VFAS resolution of 0.2 volts and is supported on all FrSky hardware.
|
This is default setting which supports VFAS resolution of 0.2 volts and is supported on all FrSky hardware.
|
||||||
|
|
||||||
```
|
```
|
||||||
set frsky_hiprec_vfas = 1
|
set frsky_vfas_precision = 1
|
||||||
```
|
```
|
||||||
This is new setting which supports VFAS resolution of 0.1 volts and is only supported by OpenTX radios (this method uses custom ID 0x39).
|
This is new setting which supports VFAS resolution of 0.1 volts and is only supported by OpenTX radios (this method uses custom ID 0x39).
|
||||||
|
|
||||||
|
|
|
@ -226,7 +226,7 @@ void resetTelemetryConfig(telemetryConfig_t *telemetryConfig)
|
||||||
telemetryConfig->gpsNoFixLongitude = 0;
|
telemetryConfig->gpsNoFixLongitude = 0;
|
||||||
telemetryConfig->frsky_coordinate_format = FRSKY_FORMAT_DMS;
|
telemetryConfig->frsky_coordinate_format = FRSKY_FORMAT_DMS;
|
||||||
telemetryConfig->frsky_unit = FRSKY_UNIT_METRICS;
|
telemetryConfig->frsky_unit = FRSKY_UNIT_METRICS;
|
||||||
telemetryConfig->frsky_hiprec_vfas = 0;
|
telemetryConfig->frsky_vfas_precision = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void resetBatteryConfig(batteryConfig_t *batteryConfig)
|
void resetBatteryConfig(batteryConfig_t *batteryConfig)
|
||||||
|
|
|
@ -72,6 +72,7 @@
|
||||||
#include "flight/failsafe.h"
|
#include "flight/failsafe.h"
|
||||||
|
|
||||||
#include "telemetry/telemetry.h"
|
#include "telemetry/telemetry.h"
|
||||||
|
#include "telemetry/frsky.h"
|
||||||
|
|
||||||
#include "config/runtime_config.h"
|
#include "config/runtime_config.h"
|
||||||
#include "config/config.h"
|
#include "config/config.h"
|
||||||
|
@ -346,7 +347,7 @@ const clivalue_t valueTable[] = {
|
||||||
{ "frsky_default_longitude", VAR_FLOAT | MASTER_VALUE, &masterConfig.telemetryConfig.gpsNoFixLongitude, -180.0, 180.0 },
|
{ "frsky_default_longitude", VAR_FLOAT | MASTER_VALUE, &masterConfig.telemetryConfig.gpsNoFixLongitude, -180.0, 180.0 },
|
||||||
{ "frsky_coordinates_format", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_coordinate_format, 0, FRSKY_FORMAT_NMEA },
|
{ "frsky_coordinates_format", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_coordinate_format, 0, FRSKY_FORMAT_NMEA },
|
||||||
{ "frsky_unit", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_unit, 0, FRSKY_UNIT_IMPERIALS },
|
{ "frsky_unit", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_unit, 0, FRSKY_UNIT_IMPERIALS },
|
||||||
{ "frsky_hiprec_vfas", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_hiprec_vfas, 0, 1 },
|
{ "frsky_vfas_precision", VAR_UINT8 | MASTER_VALUE, &masterConfig.telemetryConfig.frsky_vfas_precision, FRSKY_VFAS_PRECISION_LOW, FRSKY_VFAS_PRECISION_HIGH },
|
||||||
|
|
||||||
{ "battery_capacity", VAR_UINT16 | MASTER_VALUE, &masterConfig.batteryConfig.batteryCapacity, 0, 20000 },
|
{ "battery_capacity", VAR_UINT16 | MASTER_VALUE, &masterConfig.batteryConfig.batteryCapacity, 0, 20000 },
|
||||||
{ "vbat_scale", VAR_UINT8 | MASTER_VALUE, &masterConfig.batteryConfig.vbatscale, VBAT_SCALE_MIN, VBAT_SCALE_MAX },
|
{ "vbat_scale", VAR_UINT8 | MASTER_VALUE, &masterConfig.batteryConfig.vbatscale, VBAT_SCALE_MIN, VBAT_SCALE_MAX },
|
||||||
|
|
|
@ -372,7 +372,7 @@ static void sendVoltage(void)
|
||||||
*/
|
*/
|
||||||
static void sendVoltageAmp(void)
|
static void sendVoltageAmp(void)
|
||||||
{
|
{
|
||||||
if (telemetryConfig->frsky_hiprec_vfas) {
|
if (telemetryConfig->frsky_vfas_precision == FRSKY_VFAS_PRECISION_HIGH) {
|
||||||
/*
|
/*
|
||||||
* Use new ID 0x39 to send voltage directly in 0.1 volts resolution
|
* Use new ID 0x39 to send voltage directly in 0.1 volts resolution
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -18,6 +18,11 @@
|
||||||
#ifndef TELEMETRY_FRSKY_H_
|
#ifndef TELEMETRY_FRSKY_H_
|
||||||
#define TELEMETRY_FRSKY_H_
|
#define TELEMETRY_FRSKY_H_
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
FRSKY_VFAS_PRECISION_LOW = 0,
|
||||||
|
FRSKY_VFAS_PRECISION_HIGH
|
||||||
|
} frskyVFasPrecision_e;
|
||||||
|
|
||||||
void handleFrSkyTelemetry(void);
|
void handleFrSkyTelemetry(void);
|
||||||
void checkFrSkyTelemetryState(void);
|
void checkFrSkyTelemetryState(void);
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@ typedef struct telemetryConfig_s {
|
||||||
float gpsNoFixLongitude;
|
float gpsNoFixLongitude;
|
||||||
frskyGpsCoordFormat_e frsky_coordinate_format;
|
frskyGpsCoordFormat_e frsky_coordinate_format;
|
||||||
frskyUnit_e frsky_unit;
|
frskyUnit_e frsky_unit;
|
||||||
uint8_t frsky_hiprec_vfas;
|
uint8_t frsky_vfas_precision;
|
||||||
} telemetryConfig_t;
|
} telemetryConfig_t;
|
||||||
|
|
||||||
void checkTelemetryState(void);
|
void checkTelemetryState(void);
|
||||||
|
|
Loading…
Reference in New Issue