Trond Enger / d7a_1x

Fork of d7a_1x by WizziLab

Revision:
46:665391110051
Parent:
45:b85384e7d825
Child:
49:81d5bddb02f0
--- a/include/d7a_modem.h	Thu Sep 01 09:35:27 2016 +0000
+++ b/include/d7a_modem.h	Thu Sep 01 18:13:46 2016 +0000
@@ -6,8 +6,7 @@
 // MODEM commands over COM port
 //======================================================================
 typedef enum
-{
-    //============================================
+{    //============================================
     // COMMANDS
     //============================================
     /// Soft-reset Modem Device
@@ -50,6 +49,10 @@
     /// ARGS: wm_error_code_t (u8)
     WM_ERROR                        = 0x82,
 
+    /// Send by the Modem Device upon the end of a File notification.
+    /// This response is generated depending on ALP's Retry-Policy ('respond' field set)
+    /// ARGS: wm_notif_result_t
+    WM_NOTIF_DONE                   = 0x83,
 } wm_cmd_t;
 
 typedef enum {
@@ -91,6 +94,16 @@
     uint32_t alloc;
 } register_file_param_t;
 
+typedef union {
+    uint32_t w;
+    struct {
+        uint32_t fid            : 8;
+        uint32_t offset         : 12;
+        uint32_t size           : 12;
+    } bf;
+} notify_file_param_t;
+
+
 d7a_errors_t d7a_modem_open(PinName reset_pin = NC);
 d7a_errors_t d7a_modem_reset(void);
 d7a_errors_t d7a_modem_wait_ready(uint32_t millisec = osWaitForever);
@@ -98,6 +111,7 @@
 d7a_com_rx_msg_t* d7a_modem_wait_pkt(uint32_t millisec = osWaitForever);
 void d7a_modem_msg(uint8_t value, uint8_t* buf, uint8_t len);
 d7a_errors_t d7a_modem_register(register_file_param_t* file_infos);
+d7a_errors_t d7a_modem_notify(notify_file_param_t* notif);
 d7a_errors_t d7a_modem_start(void);
 d7a_errors_t d7a_modem_stop(void);
 void d7a_modem_print_infos(void);