#include "connect.h" #include #include #include #include #if defined(CONFIG_AVM_EVENT) || defined(CONFIG_AVM_EVENT_MODULE) #define AVM_LED_INTERNAL #include #undef AVM_LED_INTERNAL #endif /* Connect Methode 4 */ struct connect_state state_machine_methode4[] = { [connect_state_wait] = default_connect_state_wait, [connect_state_init] = { .description = "methode4_connect_state_init", .timeout_auto_trigger_ms = 0, .auto_trigger_event = connect_event_methode4_start, .transitions = { {.event = connect_event_methode4_start, .next_state = connect_state_pairing_wlan_wpsauth} }, }, [connect_state_pairing_wlan_wpsauth] = { .description = "methode4_connect_state_pairing_wlan_wpsauth", .timeout_auto_trigger_ms = MAIN_PAIRING_TIMEOUT, .auto_trigger_event = connect_event_timeout, .pre_button_events = { avm_event_push_button_wlan_wps, }, .post_button_events = { avm_event_push_button_wlan_wps_off, }, .transitions = { {.event = connect_event_timeout, .next_state = connect_state_timeout}, {.event = connect_event_wps_success, .next_state = connect_state_post_nexus}, {.event = connect_event_wps_error, .next_state = connect_state_error}, {.event = connect_event_wps_timeout, .next_state = connect_state_timeout}, }, }, [connect_state_timeout] = { .description = "methode4_connect_state_timeout", .pre_led_event = event_connect_pairing_timeout, .pre_button_events = { avm_event_push_button_connect_timeout, }, }, [connect_state_post_nexus] = { .description = "methode4_connect_state_post_nexus", .timeout_auto_trigger_ms = POST_NEXUS_TIMEOUT, .auto_trigger_event = connect_event_nexus_pairing_timeout, .pre_button_events = { avm_event_push_button_nexus_pairing, }, .transitions = { {.event = connect_event_nexus_pairing_timeout, .next_state = connect_state_post_nexus_timeout}, {.event = connect_event_nexus_pairing_success, .next_state = connect_state_post_nexus_success}, {.event = connect_event_nexus_pairing_error, .next_state = connect_state_error} }, }, [connect_state_post_nexus_success] = { .description = "methode4_connect_state_post_nexus_success", .pre_led_event = event_connect_pairing_success, .pre_button_events = { avm_event_push_button_connect_success, }, }, [connect_state_post_nexus_timeout] = { .description = "methode4_connect_state_post_nexus_timeout", .pre_led_event = event_connect_pairing_done, .pre_button_events = { avm_event_push_button_nexus_pairing_off, }, }, [connect_state_error]= { .description = "methode4_connect_state_error", .pre_led_event = event_connect_pairing_error, .pre_button_events = { avm_event_push_button_connect_error, }, }, };