MiraOS  1.22
mira_provisioning.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (C) 2016 LumenRadio AB *
3  * *
4  * This file is part of MiraOS. *
5  * *
6  * MiraOS contains software components that are patented by LumenRadio. *
7  * Use of this software is under the terms of the LumenRadio MiraOS *
8  * license.
9  * *
10  * You should have received a copy of the MiraOS license from your *
11  * LumenRadio representative. If not, email to <licenses@lumenradio.com> *
12  ****************************************************************************/
13 
25 #ifndef LIBMIRA_PROV_H_
26 #define LIBMIRA_PROV_H_
27 
28 #include "mira_gpio.h"
29 
35 typedef enum {
41 
47 typedef enum {
51 
57 typedef enum {
65 
71 typedef enum {
75 
85 typedef void (*MiraProvisioningCallback)(MiraProvisionDeviceSelectedState selected_state, MiraProvisionState provisioning_state);
86 
94 typedef void (*MiraConfigWrittenCallback)(uint8_t id);
95 
101 void mira_provisioning_init(MiraGpioPorts provisioning_led_port, uint8_t provisioning_led_pin);
102 
103 
110 
111 
118 
119 
126 
133 
140 
141 
152 
159 
160 
171 
181 MiraConfigDataError mira_provisioning_config_data_read(uint8_t id, uint8_t page_number, uint8_t* data_ptr);
182 
192 
201 MiraConfigDataError mira_provisioning_config_data_write(uint8_t page_number, uint8_t* data_ptr);
202 
209 
218 
229 
235 void mira_provisioning_announce(void);
236 
237 
244 
256 
257 #endif /* LIBMIRA_PROV_H_ */
Definition: mira_provisioning.h:60
Definition: mira_provisioning.h:59
Definition: mira_provisioning.h:49
void mira_provisioning_init(MiraGpioPorts provisioning_led_port, uint8_t provisioning_led_pin)
Initialize provisioning application.
void mira_provisioning_set_state_temppreprovisioned()
Sets the node into preprovisioned state.
Definition: mira_provisioning.h:48
Definition: mira_provisioning.h:61
void mira_provisioning_release_overridden_led(void)
Release control of the provisioning status LED. Used to release the LED after its state has been over...
Definition: mira_provisioning.h:72
Definition: mira_provisioning.h:63
MiraConfigDataError mira_provisioning_config_data_write_done(void)
Finish a configuration block write.
Definition: mira_provisioning.h:38
void mira_provisioning_set_custom_data_pointer(void *pointer)
Set pointer to data block that will be return in custom neighbor responses.
MiraProvisionDeviceSelectedState
Device selection states.
Definition: mira_provisioning.h:47
void mira_provisioning_register_callback(MiraProvisioningCallback callback)
Register the provisioning state change callback.
MiraConfigDataError mira_provisioning_config_data_write(uint8_t page_number, uint8_t *data_ptr)
Write a page to a configuration block.
void mira_provisioning_override_led_set_on(void)
Override the provisioning status LED output. Force the LED to on.
void mira_provisioning_override_led_set_off(void)
Override the provisioning status LED output. Force the LED to off.
void(* MiraConfigWrittenCallback)(uint8_t id)
Function pointer to provisioning data written callback. Called when configuration data block has been...
Definition: mira_provisioning.h:94
void mira_provisioning_set_state(MiraProvisionState state)
Set device into a specific provisioning state.
Definition: mira_provisioning.h:36
MiraConfigDataError mira_provisioning_config_data_write_cancel(void)
Cancel a configuration block write.
MiraGpioPorts
GPIO ports.
Definition: mira_gpio.h:46
void mira_provisioning_config_register_data_written_callback(MiraConfigWrittenCallback callback)
Register the configuration write callback.
MiraConfigWriteProtection
Write protection configuration options.
Definition: mira_provisioning.h:71
Definition: mira_provisioning.h:37
MiraProvisionState mira_provisioning_get_state(void)
Get the provisioning state.
MiraProvisionState
Provisioning States.
Definition: mira_provisioning.h:35
void(* MiraProvisioningCallback)(MiraProvisionDeviceSelectedState selected_state, MiraProvisionState provisioning_state)
Function pointer to provisioning state change callback. Called when provisioning state changes or if ...
Definition: mira_provisioning.h:85
void mira_provisioning_announce(void)
Makes the node announce itself by sending out a NetworkNeighborCustom message.
MiraConfigDataError
Result codes for provisioning configuration data.
Definition: mira_provisioning.h:57
MiraOS GPIO driver.
Definition: mira_provisioning.h:39
Definition: mira_provisioning.h:73
void mira_provisioning_enable_led(void)
Re-enable provisioning status LED output.
Definition: mira_provisioning.h:58
MiraConfigDataError mira_provisioning_config_data_read(uint8_t id, uint8_t page_number, uint8_t *data_ptr)
Get a page of configuration data.
Definition: mira_provisioning.h:62
void mira_provisioning_disable_led(void)
Disable provisioning status LED output. Should be called before going to deep sleep to preserve batte...
MiraConfigDataError mira_provisioning_config_data_write_start(uint8_t id, MiraConfigWriteProtection write_protection)
Start a configuration block write.