Payload Format Changes
This commit is contained in:
parent
68697a4b19
commit
c4cd51a791
|
@ -159,30 +159,42 @@ void setup()
|
||||||
|
|
||||||
void loop()
|
void loop()
|
||||||
{
|
{
|
||||||
// Without Sensor (Beacon Mode) just send the Battery Voltage
|
// Create Data Structure for Sensor Data
|
||||||
// Use less acurate Battery Voltage Reading (100mv Steps) to be
|
|
||||||
// Compatible with IOT-Usergroup Basenodes
|
|
||||||
#ifdef HAS_NO_SENSOR
|
#ifdef HAS_NO_SENSOR
|
||||||
uint8_t data[1];
|
struct lora_data {
|
||||||
|
uint8_t bat;
|
||||||
|
} __attribute__ ((packed)) data;
|
||||||
|
#elif defined HAS_SHT21
|
||||||
|
struct lora_data {
|
||||||
|
uint8_t bat;
|
||||||
|
int32_t temperature;
|
||||||
|
int32_t humidity;
|
||||||
|
} __attribute__ ((packed)) data;
|
||||||
|
#elif defined HAS_BME280
|
||||||
|
struct lora_data {
|
||||||
|
uint8_t bat;
|
||||||
|
int32_t temperature;
|
||||||
|
int32_t humidity;
|
||||||
|
int32_t pressure;
|
||||||
|
} __attribute__ ((packed)) data;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Get Sensor Data
|
// Get Sensor Data
|
||||||
#ifdef HAS_BME280
|
#ifdef HAS_BME280
|
||||||
int32_t data[4] = {0, 0, 0, 0};
|
|
||||||
sensor.getData(&data[0], &data[1], &data[2]);
|
sensor.getData(&data.temperature, &data.pressure, &data.humidity);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAS_SHT21
|
#ifdef HAS_SHT21
|
||||||
int32_t data[4] = {0, 0, 0, 0};
|
data.temperature = (int32_t)(sensor.getTemperature()*100);
|
||||||
data[0] = (int32_t)(sensor.getTemperature()*100);
|
data.humidity = (int32_t)(sensor.getHumidity()*100);
|
||||||
data[2] = (int32_t)(sensor.getHumidity()*100);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAS_NO_SENSOR
|
// Add Battery Voltage, 20mv steps, encoded into 1 Byte
|
||||||
data[0] = (uint8_t)(readVcc()/20);
|
uint32_t batv = readVcc();
|
||||||
#else
|
data.bat = (uint8_t)(batv/20);
|
||||||
data[3] = readVcc();
|
if (batv % 20 > 9)
|
||||||
#endif
|
data.bat += 1;
|
||||||
|
|
||||||
// LED On before Sending
|
// LED On before Sending
|
||||||
#ifdef LED_PIN
|
#ifdef LED_PIN
|
||||||
|
@ -191,12 +203,12 @@ void loop()
|
||||||
|
|
||||||
#ifdef RF_LORA
|
#ifdef RF_LORA
|
||||||
// Send LoRa Packet, Increment Frame Counter
|
// Send LoRa Packet, Increment Frame Counter
|
||||||
lora.Send_Data((unsigned char *)data, sizeof(data), Frame_Counter_Tx, SF7BW125);
|
lora.Send_Data((unsigned char *)&data, sizeof(data), Frame_Counter_Tx, SF7BW125);
|
||||||
Frame_Counter_Tx++;
|
Frame_Counter_Tx++;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef RF_RFM69
|
#ifdef RF_RFM69
|
||||||
radio.send(RFM69_GATEWAY, data, sizeof(data));
|
radio.send(RFM69_GATEWAY, &data, sizeof(data));
|
||||||
radio.sleep();
|
radio.sleep();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue