more fields in api requests. api configuration moved to structure

sr9wxz_new_configuration_for_ZZ06
Mateusz Lubecki 2022-05-02 23:07:08 +02:00
rodzic a4b1486f9c
commit 1bf375b618
12 zmienionych plików z 85 dodań i 12 usunięć

Wyświetl plik

@ -17,6 +17,8 @@
#define ENTRIES_STRING(ENTRY) \
ENTRY(main_config_data_basic->callsign, callsign) \
ENTRY(SW_VER, sw_ver) \
ENTRY(SW_DATE, sw_data) \
#define ENTRIES_32INT_STATUS(ENTRY) \
ENTRY(master_time, master_time) \
@ -42,9 +44,12 @@
ENTRY(rte_wx_temperature_average_pt, temperature_pt) \
ENTRY(rte_wx_temperature_average_internal, temperature_internal)\
ENTRY(rte_wx_pressure_average, pressure) \
ENTRY(rte_wx_humidity_valid, humidity) \
ENTRY(rte_wx_average_winddirection, wind_direction) \
ENTRY(rte_wx_average_windspeed, wind_speed) \
ENTRY(rte_wx_average_windspeed, wind_average) \
ENTRY(rte_wx_max_windspeed, wind_gust) \
ENTRY(rte_wx_windspeed[rte_wx_windspeed_it], wind_current) \
ENTRY(rte_wx_get_minimum_windspeed(), wind_minimal) \
#define ENTRIES_32INT_WEATHER(ENTRY) \
ENTRY(pwm_first_channel, pwm_first) \

Wyświetl plik

@ -332,11 +332,21 @@ typedef struct config_data_gsm_t {
// password for APN connection
char password[24];
uint8_t api_enable;
// http://pogoda.cc:8080/meteo_backend
char api_base_url[64];
char api_station_name[32];
uint8_t aprsis_enable;
char aprsis_server_address[64];
uint16_t aprsis_server_port;
uint32_t aprsis_passcode;
} config_data_gsm_t;
#endif /* CONFIG_DATA_H_ */

Wyświetl plik

@ -56,6 +56,18 @@ extern uint16_t rte_wx_average_windspeed;
extern uint16_t rte_wx_max_windspeed;
extern int16_t rte_wx_average_winddirection;
inline uint16_t rte_wx_get_minimum_windspeed(void) {
uint16_t out = 0xFFFF;
for (int i = 0 ; i < WIND_AVERAGE_LEN; i++) {
if (rte_wx_windspeed[i] < out) {
out = rte_wx_windspeed[i];
}
}
return out;
}
extern int8_t rte_wx_humidity, rte_wx_humidity_valid;
extern uint8_t rte_wx_tx20_excessive_slew_rate;

Wyświetl plik

@ -8,7 +8,7 @@
* 19 maja, Krszystof Binek, miedy 12 a 13
*/
#include "api/api_status_content.h"
#include <api/api_content.h>
#include "etc/api_configuration.h"
#include "http_client/http_client.h"
@ -18,7 +18,7 @@
/**
* Buffers for generating JSON and URL
*/
#define API_BUFFER_LN 384
#define API_BUFFER_LN 512
char api_buffer[API_BUFFER_LN];
#define URL_BUFFER_LN 96
char api_url_buffer[URL_BUFFER_LN];

Wyświetl plik

@ -465,7 +465,21 @@ const config_data_gsm_t __attribute__((section(".config_section_default.gsm")))
.username = "\0",
.password = "\0"
.password = "\0",
.api_enable = 1,
.api_base_url = "http://pogoda.cc:8080/meteo_backend",
.api_station_name = "pilsko",
.aprsis_enable = 1,
.aprsis_passcode = 16823,
.aprsis_server_port = 14580,
.aprsis_server_address = "euro.aprs2.net\0"
};
#endif

Wyświetl plik

@ -469,6 +469,21 @@ const config_data_gsm_t __attribute__((section(".config_section_first.gsm"))) co
.username = "\0",
.password = "\0"
.password = "\0",
.api_enable = 1,
.api_base_url = "http://pogoda.cc:8080/meteo_backend",
.api_station_name = "pilsko",
.aprsis_enable = 1,
.aprsis_passcode = 16823,
.aprsis_server_port = 14580,
.aprsis_server_address = "euro.aprs2.net\0"
};
#endif

Wyświetl plik

@ -463,7 +463,21 @@ const config_data_gsm_t __attribute__((section(".config_section_second.gsm"))) c
.username = "\0",
.password = "\0"
.password = "\0",
.api_enable = 1,
.api_base_url = "http://pogoda.cc:8080/meteo_backend",
.api_station_name = "pilsko",
.aprsis_enable = 1,
.aprsis_passcode = 16823,
.aprsis_server_port = 14580,
.aprsis_server_address = "euro.aprs2.net\0"
};
#endif

Wyświetl plik

@ -950,9 +950,9 @@ int main(int argc, char* argv[]){
http_client_init(&main_gsm_state, main_gsm_srl_ctx_ptr, 0);
api_init("http://pogoda.cc:8080/meteo_backend\0", "skrzyczne\0");
api_init(main_config_data_gsm->api_base_url, main_config_data_gsm->api_station_name);
aprsis_init(&main_gsm_srl_ctx, &main_gsm_state, "SP8EBC", 10, 23220, TEST_IP, 14580);
aprsis_init(&main_gsm_srl_ctx, &main_gsm_state, main_config_data_basic->callsign, main_config_data_basic->ssid, main_config_data_gsm->aprsis_passcode, main_config_data_gsm->aprsis_server_address, main_config_data_gsm->aprsis_server_port);
}
pwm_input_io_init();
@ -1071,6 +1071,7 @@ int main(int argc, char* argv[]){
ax25_new_msg_rx_flag = 0;
rx10m++;
rte_main_rx_total++;
}
#ifdef STM32L471xx

Wyświetl plik

@ -19,6 +19,7 @@
#ifdef STM32L471xx
#include "aprsis.h"
#include "api/api.h"
#include "pwr_save.h"
#endif

Wyświetl plik

@ -29,6 +29,8 @@ char DrawCounter;
extern unsigned short tx10m;
extern uint32_t rte_main_tx_total;
/**
* Sine table for the first quarter of wave.
@ -307,7 +309,8 @@ void afsk_txStart(Afsk *af) {
if (!af->sending)
{
tx10m++;
tx10m++;
rte_main_tx_total++;
af->phase_inc = MARK_INC;
af->phase_acc = 0;

Wyświetl plik

@ -605,7 +605,7 @@ void telemetry_send_status_powersave_registers(uint32_t register_last_sleep, uin
main_wait_for_tx_complete();
memset(main_own_aprs_msg, 0x00, sizeof(main_own_aprs_msg));
main_own_aprs_msg_len = sprintf(main_own_aprs_msg, ">[powersave registers][register_last_sleep: 0x%lX][register_last_wakeup: 0x%lX][register_counters: 0x%lX][monitor: 0x%lX][last_sleep_time: 0x%lX]",register_last_sleep, register_last_wakeup, register_counters, monitor, last_sleep_time);
main_own_aprs_msg_len = sprintf(main_own_aprs_msg, ">[powersave registers][last_sleep_ts: 0x%lX][last_wakeup_ts: 0x%lX][sleep_wakeup_cntrs: 0x%lX][monitor: 0x%lX][last_sleep_time: 0x%lX]",register_last_sleep, register_last_wakeup, register_counters, monitor, last_sleep_time);
ax25_sendVia(&main_ax25, main_own_path, main_own_path_ln, main_own_aprs_msg, main_own_aprs_msg_len);
//while (main_ax25.dcd == 1);
afsk_txStart(&main_afsk);

Wyświetl plik

@ -59,8 +59,6 @@ void SendWXFrame(uint16_t windspeed, uint16_t windgusts, uint16_t winddirection,
after_tx_lock = 1;
while(main_ax25.dcd == true);
afsk_txStart(&main_afsk);
}