21 uint8_t
eui[8] = {0xFF};
37 header[1] = random(256);
38 header[2] = random(256);
40 memcpy(&header[4],
eui, 8);
43 for (uint8_t i=0; i<12; i++) {
70 buffer,
sizeof(buffer),
71 PSTR(
"{\"stat\":{\"time\":\"%s GMT\",\"lati\":%.5f,\"long\":%.5f,\"alti\":%d,\"rxnb\":%d,\"rxok\":%d,\"rxfw\":%d,\"ackr\":%.2f,\"dwnb\":%d,\"txnb\":%d,\"pfrm\":\"%s\",\"mail\":\"%s\",\"desc\":\"%s\"}}"),
93 String data = base64::encode(message.
data, message.
len,
false);
97 timestamp.replace(
" ",
"T");
102 buffer,
sizeof(buffer),
103 PSTR(
"{\"rxpk\":[{\"tmst\":%lu,\"time\":\"%s.00000Z\",\"chan\":%d,\"rfch\":%d,\"freq\":%.5f,\"stat\":%d,\"modu\":\"FSK\",\"datr\":%d,\"codr\":\"wize\",\"rssi\":%d,\"lsnr\":0.0,\"size\":%d,\"data\":\"%s\"}]}"),
104 now(), timestamp.c_str(),
107 (int16_t) message.
rssi / -2, message.
len, data.c_str()
124 uint8_t mac[WL_MAC_ADDR_LENGTH] = {0};
125 WiFi.macAddress(mac);
135 "[FORWARDER] Gateway eui-%02x%02x%02x%02x%02x%02x%02x%02x\n",
141 randomSeed(analogRead(0));
uint8_t data[RX_BUFFER_SIZE]
double wizeFrequency(uint8_t channel)
#define FORWARDER_DESCRIPTION
struct @0 _forwarder_stats
uint16_t wizeDataRateSpeed(uint8_t dr)
void forwarderMessage(allwize_message_t message)
String ntpDateTime(time_t t)
#define FORWARDER_ALTITUDE
#define FORWARDER_LONGITUDE
#define FORWARDER_GATEWAY_TYPE
#define FORWARDER_LATITUDE
void forwarderSend(char *data)