kopia lustrzana https://github.com/SP8EBC/ParaTNC
more fields in api requests. api configuration moved to structure
rodzic
a4b1486f9c
commit
1bf375b618
|
@ -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) \
|
|
@ -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_ */
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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];
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#ifdef STM32L471xx
|
||||
#include "aprsis.h"
|
||||
#include "api/api.h"
|
||||
#include "pwr_save.h"
|
||||
#endif
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue