summaryrefslogtreecommitdiff
path: root/Inc/devices.h
diff options
context:
space:
mode:
Diffstat (limited to 'Inc/devices.h')
-rw-r--r--Inc/devices.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/Inc/devices.h b/Inc/devices.h
new file mode 100644
index 0000000..c886e68
--- /dev/null
+++ b/Inc/devices.h
@@ -0,0 +1,27 @@
+
+#include "handshake.pb.h"
+
+#define _MDR s2m_MDR_response
+
+typedef struct _device_info {
+ uint8_t device_id;
+ uint8_t i2c_addr;
+ _MDR MDR;
+
+ uint32_t subscription_requests[4]; /* Subscriptions to this device */
+ uint32_t subscriptions[4]; /* Subscriptions by this device */
+} device_info_t;
+
+typedef struct _subscription_info {
+ uint8_t module_ids[128];
+ uint8_t entity_ids[128];
+ uint8_t module_class[3];
+ uint8_t i2c_address[128];
+ uint8_t mod_idx, entity_idx, class_idx, i2c_idx;
+} subscription_info_t;
+
+typedef enum _status {
+ OFFLINE = 0,
+ CONNECTED = 1,
+ REGISTERED = 2
+} state;