Complete sensor demo.
Dependencies: modem_ref_helper CRC X_NUCLEO_IKS01A1 DebouncedInterrupt
Diff: main.cpp
- Revision:
- 2:cbe6dca8a632
- Parent:
- 1:4d3968b2941b
- Child:
- 4:27a3b9db1754
--- a/main.cpp Thu May 18 10:44:26 2017 +0000 +++ b/main.cpp Thu May 18 13:49:38 2017 +0000 @@ -322,48 +322,9 @@ } } -void modem_update_file(uint8_t fid, alp_file_header_t* header, uint8_t* data, uint8_t id) -{ - alp_file_header_t remote_header; - - memset(&remote_header, 0, sizeof(alp_file_header_t)); - - // Read remote header - modem_read_fprop(fid, &remote_header, id); - modem_ready[id].wait(); - - // Add file in local file system - ram_fs_new(fid, (uint8_t*)header, data); - - // Update file - if (memcmp(&remote_header, header, sizeof(alp_file_header_t))) - { - PRINT("Updating file %d\n", fid); - // Delete - modem_delete_file(fid, id); - modem_ready[id].wait(); - // Restore in local file system - ram_fs_new(fid, (uint8_t*)header, data); - // Re-create - if (data) - { - modem_declare_file(fid, header, id); - } - else - { - modem_create_file(fid, header, id); - } - modem_ready[id].wait(); - } - else - { - PRINT("File %d up to date\n", fid); - } -} - // Todo for each sensor -#define SENSOR_SETUP(NAME,name) modem_update_file(FID_SENSOR_VALUE_##NAME, (alp_file_header_t*)&h_sensor_value_##name, NULL, main_id);\ - modem_update_file(FID_SENSOR_CONFIG_##NAME, (alp_file_header_t*)&h_sensor_config_##name, (uint8_t*)&f_sensor_config_##name, main_id);\ +#define SENSOR_SETUP(NAME,name) modem_update_file(FID_SENSOR_VALUE_##NAME, (alp_file_header_t*)&h_sensor_value_##name, NULL);\ + modem_update_file(FID_SENSOR_CONFIG_##NAME, (alp_file_header_t*)&h_sensor_config_##name, (uint8_t*)&f_sensor_config_##name);\ g_thread_ctx = &name##_thread_ctx;\ Thread th_##name(osPriorityNormal, 1024, NULL);\ status = th_##name.start(thread_sensor);\ @@ -387,8 +348,8 @@ uint8_t main_id = modem_get_id(my_main_callback); PRINT("Register Files\n"); - modem_update_file(FID_HOST_REV, &h_rev, (uint8_t*)&f_rev, main_id); - modem_update_file(FID_ALARM, &h_alarm, (uint8_t*)&f_alarm, main_id); + modem_update_file(FID_HOST_REV, &h_rev, (uint8_t*)&f_rev); + modem_update_file(FID_ALARM, &h_alarm, (uint8_t*)&f_alarm); // Configure URC: LQUAL on report file notification every 10 reports PRINT("Setup URCs\n");