]> git.karo-electronics.de Git - oswald.git/blobdiff - metawatch/bt_hci.c
Maybe a little sniff mode, add ambient light adc (not working),
[oswald.git] / metawatch / bt_hci.c
index 38ffb7fc4b20cf38c203566f3a37f38706661f16..838aafc20aeda695b183f038bfb3d36920e1c960 100644 (file)
@@ -435,6 +435,27 @@ void bt_hci_cmd(const uint8_t OGF, const uint8_t OCF, const uint8_t data_len, co
                mw_bt_uart_tx(data, data_len);
 }
 
+typedef struct {
+       uint16_t acl_handle;
+       uint16_t max_interval;
+       uint16_t min_interval;
+       uint16_t sniff_attempt;
+       uint16_t sniff_timeout;
+} __attribute__((packed)) bt_hci_sniff_cmd_t;
+
+void bt_hci_set_sniff_mode(const uint16_t acl_handle, const uint16_t max_interval, const uint16_t min_interval, const uint16_t sniff_attempt, const uint16_t sniff_timeout)
+{
+       bt_hci_sniff_cmd_t sniff_cmd;
+
+       sniff_cmd.acl_handle = acl_handle;
+       sniff_cmd.max_interval = max_interval;
+       sniff_cmd.min_interval = min_interval;
+       sniff_cmd.sniff_attempt = sniff_attempt;
+       sniff_cmd.sniff_timeout = sniff_timeout;
+       
+       bt_hci_cmd(HCI_LINK_POLICY_OGF, HCI_SNIFF_MODE_OCF, sizeof(sniff_cmd), &sniff_cmd);
+}
+
 typedef struct {
        uint8_t type;
        uint16_t handle;