# Enrollment process *Patrice Freydiere - 2024-09* *Update on 2025/06* Document change log : - introducing the "recovery wifi connexion" Factory setup : - powered mode, to stay alive, until configuration is received - once the configuration is retrieved, and applied -> switch to battery mode , with default wake up time Enrollment process :
```{mermaid} mindmap root((Enrolling device)) Local access to admin specify connexion means (wifi, long range, configuration) Device has network access Administrative commands (update software, factory reset) ```
### Process ```{mermaid} flowchart LR startup connection_to_device configure_device startup --> connection_to_device["Connection to device push config & software "] --> configure_device startup --> device_access_cloud --> device_get_configuration_and_soft ``` ### States state of the device is as below : ```{mermaid} stateDiagram-v2 [*] --> starting_up starting_up --> NotEnrolled state NotEnrolled { Listening_to_network_or_configuration Listening_to_network_or_configuration --> Retrieving_soft_and_config state Retrieving_soft_and_config { get_admin_script_from_machineid run_the_script_and_install_elements } } Retrieving_soft_and_config --> Enrolled : configuration_received starting_up --> Enrolled state Enrolled { [*] --> NetworkConnected [*] --> NetworkDisconnected NetworkConnected --> Cycle_process NetworkDisconnected --> ? } Enrolled --> NotEnrolled : Reset_Factory_Button_Action? Enrolled --> [*] NotEnrolled --> [*] :? ``` When the device is first powered up : - by default, it is in "power mode" -> this permit to connect to it and make some enrollments Enrollment consist in : - having a customer_id for grabbing the elements (synchronization process) - having the proper configured software