diff --git a/lib/libesp32/berry/default/be_modtab.c b/lib/libesp32/berry/default/be_modtab.c index 6051d11d8..b24dc9ec6 100644 --- a/lib/libesp32/berry/default/be_modtab.c +++ b/lib/libesp32/berry/default/be_modtab.c @@ -52,11 +52,6 @@ be_extern_native_module(lv_extra); be_extern_native_module(lv_tasmota); #endif // USE_LVGL -#if defined(USE_MI_ESP32) && !defined(USE_BLE_ESP32) -extern void be_load_MI32_class(bvm *vm); -extern void be_load_BLE_class(bvm *vm); -#endif //USE_MI_ESP32 - /* user-defined modules declare start */ /* user-defined modules declare end */ @@ -178,6 +173,9 @@ be_extern_native_class(md5); be_extern_native_class(udp); be_extern_native_class(webclient); be_extern_native_class(tcpclient); +// BLE +be_extern_native_class(MI32); +be_extern_native_class(BLE); // LVGL core classes be_extern_native_class(lv_color); be_extern_native_class(lv_font); @@ -248,6 +246,10 @@ BERRY_LOCAL bclass_array be_class_table = { #endif // USE_UFILESYS &be_native_class(AudioOpusDecoder), #endif // USE_I2S_AUDIO_BERRY +#if defined(USE_MI_ESP32) && !defined(USE_BLE_ESP32) + &be_native_class(MI32), + &be_native_class(BLE), +#endif //USE_MI_ESP32 NULL, /* do not remove */ }; @@ -269,8 +271,4 @@ BERRY_API void be_load_custom_libs(bvm *vm) #ifdef USE_ENERGY_SENSOR be_load_ctypes_energy_definitions_lib(vm); // ctype class #endif // USE_ENERGY_SENSOR -#if defined(USE_MI_ESP32) && !defined(USE_BLE_ESP32) - be_load_MI32_class(vm); - be_load_BLE_class(vm); -#endif //USE_MI_ESP32 } diff --git a/lib/libesp32/berry/generate/be_const_strtab.h b/lib/libesp32/berry/generate/be_const_strtab.h index 540521742..81abe9a3c 100644 --- a/lib/libesp32/berry/generate/be_const_strtab.h +++ b/lib/libesp32/berry/generate/be_const_strtab.h @@ -14,6 +14,7 @@ extern const bcstring be_const_str_AudioOutput; extern const bcstring be_const_str_AudioOutputI2S; extern const bcstring be_const_str_Auto_X2Dconfiguration; extern const bcstring be_const_str_BECDFE; +extern const bcstring be_const_str_BLE; extern const bcstring be_const_str_BRY_X3A_X20ERROR_X2C_X20bad_X20json_X3A_X20; extern const bcstring be_const_str_BRY_X3A_X20Exception_X3E_X20_X27_X25s_X27_X20_X2D_X20_X25s; extern const bcstring be_const_str_BRY_X3A_X20argument_X20must_X20be_X20a_X20function; @@ -68,6 +69,7 @@ extern const bcstring be_const_str_LVG_X3A_X20object_X3A; extern const bcstring be_const_str_Leds; extern const bcstring be_const_str_MAX_RMT; extern const bcstring be_const_str_MD5; +extern const bcstring be_const_str_MI32; extern const bcstring be_const_str_None; extern const bcstring be_const_str_OPTION_A; extern const bcstring be_const_str_OneWire; @@ -251,6 +253,7 @@ extern const bcstring be_const_str_add_header; extern const bcstring be_const_str_add_light; extern const bcstring be_const_str_add_rule; extern const bcstring be_const_str_addr; +extern const bcstring be_const_str_adv_cb; extern const bcstring be_const_str_allocated; extern const bcstring be_const_str_alternate; extern const bcstring be_const_str_animate; @@ -325,6 +328,7 @@ extern const bcstring be_const_str_color; extern const bcstring be_const_str_compile; extern const bcstring be_const_str_compress; extern const bcstring be_const_str_concat; +extern const bcstring be_const_str_conn_cb; extern const bcstring be_const_str_connect; extern const bcstring be_const_str_connected; extern const bcstring be_const_str_connection_error; @@ -371,6 +375,7 @@ extern const bcstring be_const_str_deregister_obj; extern const bcstring be_const_str_destructor_cb; extern const bcstring be_const_str_detect; extern const bcstring be_const_str_detected_X20on_X20bus; +extern const bcstring be_const_str_devices; extern const bcstring be_const_str_digital_read; extern const bcstring be_const_str_digital_write; extern const bcstring be_const_str_dim; @@ -446,6 +451,7 @@ extern const bcstring be_const_str_gamma8; extern const bcstring be_const_str_gc; extern const bcstring be_const_str_gen_cb; extern const bcstring be_const_str_get; +extern const bcstring be_const_str_get_MAC; extern const bcstring be_const_str_get_alternate; extern const bcstring be_const_str_get_aps_voltage; extern const bcstring be_const_str_get_bat_charge_current; @@ -464,6 +470,7 @@ extern const bcstring be_const_str_get_hor_res; extern const bcstring be_const_str_get_input_power_status; extern const bcstring be_const_str_get_light; extern const bcstring be_const_str_get_log; +extern const bcstring be_const_str_get_name; extern const bcstring be_const_str_get_object_from_ptr; extern const bcstring be_const_str_get_option; extern const bcstring be_const_str_get_percentage; @@ -731,13 +738,16 @@ extern const bcstring be_const_str_send; extern const bcstring be_const_str_send_multicast; extern const bcstring be_const_str_serial; extern const bcstring be_const_str_set; +extern const bcstring be_const_str_set_MAC; extern const bcstring be_const_str_set_align; extern const bcstring be_const_str_set_alternate; extern const bcstring be_const_str_set_auth; +extern const bcstring be_const_str_set_bat; extern const bcstring be_const_str_set_bits_per_sample; extern const bcstring be_const_str_set_bri; extern const bcstring be_const_str_set_channels; extern const bcstring be_const_str_set_chg_current; +extern const bcstring be_const_str_set_chr; extern const bcstring be_const_str_set_ct; extern const bcstring be_const_str_set_dc_voltage; extern const bcstring be_const_str_set_dcdc_enable; @@ -747,6 +757,7 @@ extern const bcstring be_const_str_set_gain; extern const bcstring be_const_str_set_height; extern const bcstring be_const_str_set_hue16sat; extern const bcstring be_const_str_set_huesat; +extern const bcstring be_const_str_set_hum; extern const bcstring be_const_str_set_ldo_enable; extern const bcstring be_const_str_set_ldo_voltage; extern const bcstring be_const_str_set_light; @@ -771,7 +782,9 @@ extern const bcstring be_const_str_set_style_pad_right; extern const bcstring be_const_str_set_style_radius; extern const bcstring be_const_str_set_style_text_color; extern const bcstring be_const_str_set_style_text_font; +extern const bcstring be_const_str_set_svc; extern const bcstring be_const_str_set_tasmota_logo; +extern const bcstring be_const_str_set_temp; extern const bcstring be_const_str_set_text; extern const bcstring be_const_str_set_time; extern const bcstring be_const_str_set_timeouts; diff --git a/lib/libesp32/berry/generate/be_const_strtab_def.h b/lib/libesp32/berry/generate/be_const_strtab_def.h index 711ae2c92..33a2424d4 100644 --- a/lib/libesp32/berry/generate/be_const_strtab_def.h +++ b/lib/libesp32/berry/generate/be_const_strtab_def.h @@ -1,822 +1,835 @@ -be_define_const_str(, "", 2166136261u, 0, 0, &be_const_str__X2E); -be_define_const_str(_X0A, "\n", 252472541u, 0, 1, &be_const_str_event_send); -be_define_const_str(_X20, " ", 621580159u, 0, 1, &be_const_str_Tele); -be_define_const_str(_X21_X3D, "!=", 2428715011u, 0, 2, &be_const_str__X2Fac); -be_define_const_str(_X21_X3D_X3D, "!==", 559817114u, 0, 3, &be_const_str_RGBCT); -be_define_const_str(_X22, "\"", 655135397u, 0, 1, &be_const_str_tasmota_log_reader); -be_define_const_str(_X22_X3A, "\":", 399167565u, 0, 2, &be_const_str_web_add_config_button); -be_define_const_str(_X23, "#", 638357778u, 0, 1, &be_const_str_pin_used); -be_define_const_str(_X23autoexec_X2Ebat, "#autoexec.bat", 3382890497u, 0, 13, &be_const_str_BRY_X3A_X20failed_X20to_X20load_X20_persist_X2Ejson); -be_define_const_str(_X23autoexec_X2Ebe, "#autoexec.be", 1181757091u, 0, 12, &be_const_str_decompress); -be_define_const_str(_X23display_X2Eini, "#display.ini", 182218220u, 0, 12, &be_const_str_pow); -be_define_const_str(_X23init_X2Ebat, "#init.bat", 3297595077u, 0, 9, &be_const_str_return_X20code_X3D_X25i); -be_define_const_str(_X23preinit_X2Ebe, "#preinit.be", 687035716u, 0, 11, &be_const_str_content_send_style); -be_define_const_str(_X2502d_X25s_X2502d, "%02d%s%02d", 1587999717u, 0, 10, &be_const_str_event_cb); -be_define_const_str(_X2504d_X2D_X2502d_X2D_X2502dT_X2502d_X3A_X2502d_X3A_X2502d, "%04d-%02d-%02dT%02d:%02d:%02d", 3425528601u, 0, 29, &be_const_str_gpio); -be_define_const_str(_X2508x_X2D_X2504x_X2D_X2504x_X2D_X2504x_X2D_X2504x_X2508x, "%08x-%04x-%04x-%04x-%04x%08x", 1670063141u, 0, 28, &be_const_str_digital_write); -be_define_const_str(_X25s_X2Eautoconf, "%s.autoconf", 3560383524u, 0, 11, &be_const_str_try_compile); -be_define_const_str(_X26lt_X3BError_X3A_X20apply_X20new_X20or_X20remove_X26gt_X3B, "<Error: apply new or remove>", 2855507949u, 0, 34, &be_const_str_chars_in_string); -be_define_const_str(_X26lt_X3BNone_X26gt_X3B, "<None>", 2602165498u, 0, 12, &be_const_str_add); -be_define_const_str(_X28_X29, "()", 685372826u, 0, 2, &be_const_str_detect); -be_define_const_str(_X2B, "+", 772578730u, 0, 1, &be_const_str_arg_name); -be_define_const_str(_X2C, ",", 688690635u, 0, 1, &be_const_str_CFG_X3A_X20removing_X20autoconf_X20files); -be_define_const_str(_X2C_X22AXP192_X22_X3A_X7B_X22VBusVoltage_X22_X3A_X25_X2E3f_X2C_X22VBusCurrent_X22_X3A_X25_X2E1f_X2C_X22BattVoltage_X22_X3A_X25_X2E3f_X2C_X22BattCurrent_X22_X3A_X25_X2E1f_X2C_X22Temperature_X22_X3A_X25_X2E1f_X7D, ",\"AXP192\":{\"VBusVoltage\":%.3f,\"VBusCurrent\":%.1f,\"BattVoltage\":%.3f,\"BattCurrent\":%.1f,\"Temperature\":%.1f}", 2598755376u, 0, 106, &be_const_str_add_handler); -be_define_const_str(_X2D_X2D_X3A_X2D_X2D, "--:--", 1370615441u, 0, 5, &be_const_str_CFG_X3A_X20loading_X20); -be_define_const_str(_X2E, ".", 722245873u, 0, 1, &be_const_str_arg_X20must_X20be_X20a_X20subclass_X20of_X20lv_obj); +be_define_const_str(, "", 2166136261u, 0, 0, &be_const_str_screenshot); +be_define_const_str(_X0A, "\n", 252472541u, 0, 1, &be_const_str_set_width); +be_define_const_str(_X20, " ", 621580159u, 0, 1, &be_const_str__X2Ep); +be_define_const_str(_X21_X3D, "!=", 2428715011u, 0, 2, &be_const_str_CT); +be_define_const_str(_X21_X3D_X3D, "!==", 559817114u, 0, 3, &be_const_str_coord_arr); +be_define_const_str(_X22, "\"", 655135397u, 0, 1, &be_const_str_scale_uint); +be_define_const_str(_X22_X3A, "\":", 399167565u, 0, 2, &be_const_str_HTTP_POST); +be_define_const_str(_X23, "#", 638357778u, 0, 1, &be_const_str_add_anim); +be_define_const_str(_X23autoexec_X2Ebat, "#autoexec.bat", 3382890497u, 0, 13, &be_const_str_set_hum); +be_define_const_str(_X23autoexec_X2Ebe, "#autoexec.be", 1181757091u, 0, 12, &be_const_str__available); +be_define_const_str(_X23display_X2Eini, "#display.ini", 182218220u, 0, 12, &be_const_str_begin_multicast); +be_define_const_str(_X23init_X2Ebat, "#init.bat", 3297595077u, 0, 9, &be_const_str_destructor_cb); +be_define_const_str(_X23preinit_X2Ebe, "#preinit.be", 687035716u, 0, 11, &be_const_str_LVG_X3A_X20object_X3A); +be_define_const_str(_X2502d_X25s_X2502d, "%02d%s%02d", 1587999717u, 0, 10, &be_const_str_AudioOpusDecoder); +be_define_const_str(_X2504d_X2D_X2502d_X2D_X2502dT_X2502d_X3A_X2502d_X3A_X2502d, "%04d-%02d-%02dT%02d:%02d:%02d", 3425528601u, 0, 29, &be_const_str_check_not_method); +be_define_const_str(_X2508x_X2D_X2504x_X2D_X2504x_X2D_X2504x_X2D_X2504x_X2508x, "%08x-%04x-%04x-%04x-%04x%08x", 1670063141u, 0, 28, &be_const_str_sys); +be_define_const_str(_X25s_X2Eautoconf, "%s.autoconf", 3560383524u, 0, 11, NULL); +be_define_const_str(_X26lt_X3BError_X3A_X20apply_X20new_X20or_X20remove_X26gt_X3B, "<Error: apply new or remove>", 2855507949u, 0, 34, &be_const_str_CFG_X3A_X20removed_X20file_X20_X27_X25s_X27); +be_define_const_str(_X26lt_X3BNone_X26gt_X3B, "<None>", 2602165498u, 0, 12, &be_const_str__timers); +be_define_const_str(_X28_X29, "()", 685372826u, 0, 2, NULL); +be_define_const_str(_X2B, "+", 772578730u, 0, 1, &be_const_str__def); +be_define_const_str(_X2C, ",", 688690635u, 0, 1, &be_const_str_CFG_X3A_X20exception_X20_X27_X25s_X27_X20_X2D_X20_X27_X25s_X27); +be_define_const_str(_X2C_X22AXP192_X22_X3A_X7B_X22VBusVoltage_X22_X3A_X25_X2E3f_X2C_X22VBusCurrent_X22_X3A_X25_X2E1f_X2C_X22BattVoltage_X22_X3A_X25_X2E3f_X2C_X22BattCurrent_X22_X3A_X25_X2E1f_X2C_X22Temperature_X22_X3A_X25_X2E1f_X7D, ",\"AXP192\":{\"VBusVoltage\":%.3f,\"VBusCurrent\":%.1f,\"BattVoltage\":%.3f,\"BattCurrent\":%.1f,\"Temperature\":%.1f}", 2598755376u, 0, 106, &be_const_str__X2Ep1); +be_define_const_str(_X2D_X2D_X3A_X2D_X2D, "--:--", 1370615441u, 0, 5, &be_const_str__X3Cp_X3ECurrent_X20configuration_X3A_X20_X3C_X2Fp_X3E_X3Cp_X3E_X3Cb_X3E_X25s_X3C_X2Fb_X3E_X3C_X2Fp_X3E); +be_define_const_str(_X2E, ".", 722245873u, 0, 1, &be_const_str_draw_line); be_define_const_str(_X2E_X2E, "..", 2748622605u, 0, 2, &be_const_str__X3Cp_X3E_X3Cform_X20id_X3Dac_X20action_X3D_X27ac_X27_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20method_X3D_X27get_X27_X3E_X3Cbutton_X3EAuto_X2Dconfiguration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E); -be_define_const_str(_X2Eautoconf, ".autoconf", 2524679088u, 0, 9, &be_const_str__global_def); -be_define_const_str(_X2Ebe, ".be", 1325797348u, 0, 3, &be_const_str_atleast1); -be_define_const_str(_X2Ebec, ".bec", 3985273221u, 0, 4, &be_const_str_AudioOpusDecoder); -be_define_const_str(_X2Elen, ".len", 850842136u, 0, 4, &be_const_str_cmd_res); -be_define_const_str(_X2Ep, ".p", 1171526419u, 0, 2, &be_const_str_BRY_X3A_X20failed_X20to_X20load_X20compiled_X20_X27_X25s_X27_X20_X28_X25s_X29); -be_define_const_str(_X2Ep1, ".p1", 249175686u, 0, 3, &be_const_str_CFG_X3A_X20return_code_X3D_X25i); -be_define_const_str(_X2Ep2, ".p2", 232398067u, 0, 3, &be_const_str_a); -be_define_const_str(_X2Esize, ".size", 1965188224u, 0, 5, &be_const_str__end_transmission); -be_define_const_str(_X2Etapp, ".tapp", 1363391594u, 0, 5, &be_const_str__X2Ew); -be_define_const_str(_X2Ew, ".w", 1255414514u, 0, 2, &be_const_str_https_X3A_X2F_X2Fraw_X2Egithubusercontent_X2Ecom_X2Ftasmota_X2Fautoconf_X2Fmain_X2F_X25s_X2F_X25s_X2Eautoconf); -be_define_const_str(_X2F, "/", 705468254u, 0, 1, &be_const_str_keys); -be_define_const_str(_X2F_X2Eautoconf, "/.autoconf", 2212074393u, 0, 10, &be_const_str_BUTTON_CONFIGURATION); -be_define_const_str(_X2F_X3Frst_X3D, "/?rst=", 580074707u, 0, 6, &be_const_str__rmt); -be_define_const_str(_X2Fac, "/ac", 3904651978u, 0, 3, &be_const_str_POST); -be_define_const_str(_X2Flights_X2F, "/lights/", 2370247908u, 0, 8, &be_const_str_read_sensors); -be_define_const_str(_X2Fstate_X2F, "/state/", 4226179876u, 0, 7, &be_const_str_driver_name); -be_define_const_str(_X3A, ":", 1057798253u, 0, 1, &be_const_str_content_start); -be_define_const_str(_X3C, "<", 957132539u, 0, 1, &be_const_str_CFG_X3A_X20No_X20_X27_X2A_X2Eautoconf_X27_X20file_X20found); -be_define_const_str(_X3C_X2Fform_X3E_X3C_X2Fp_X3E, "

", 3546571739u, 0, 11, &be_const_str_AXP192); -be_define_const_str(_X3C_X2Fselect_X3E_X3Cp_X3E_X3C_X2Fp_X3E, "

", 1863865923u, 0, 16, &be_const_str_CFG_X3A_X20loaded_X20_X20); -be_define_const_str(_X3C_X3D, "<=", 2499223986u, 0, 2, &be_const_str_gamma8); -be_define_const_str(_X3Cbutton_X20name_X3D_X27reapply_X27_X20class_X3D_X27button_X20bgrn_X27_X3ERe_X2Dapply_X20current_X20configuration_X3C_X2Fbutton_X3E, "", 3147934216u, 0, 82, &be_const_str__X3Coption_X20value_X3D_X27reset_X27_X3E_X26lt_X3BRemove_X20autoconf_X26gt_X3B_X3C_X2Foption_X3E); -be_define_const_str(_X3Cbutton_X20name_X3D_X27zipapply_X27_X20class_X3D_X27button_X20bgrn_X27_X3EApply_X20configuration_X3C_X2Fbutton_X3E, "", 1205771629u, 0, 72, &be_const_str_tostring); -be_define_const_str(_X3Cfieldset_X3E_X3Cstyle_X3E_X2Ebdis_X7Bbackground_X3A_X23888_X3B_X7D_X2Ebdis_X3Ahover_X7Bbackground_X3A_X23888_X3B_X7D_X3C_X2Fstyle_X3E, "
", 842307168u, 0, 77, &be_const_str_SERIAL_8N1); -be_define_const_str(_X3Cinstance_X3A_X20_X25s_X28_X25s_X2C_X20_X25s_X2C_X20_X25s_X29, "Choose a device configuration:
", 1336654704u, 0, 49, &be_const_str_count); -be_define_const_str(_X3Clambda_X3E, "", 607256038u, 0, 8, &be_const_str_p1); -be_define_const_str(_X3Clegend_X3E_X3Cb_X20title_X3D_X27Autoconfiguration_X27_X3E_X26nbsp_X3BCurrent_X20auto_X2Dconfiguration_X3C_X2Fb_X3E_X3C_X2Flegend_X3E, " Current auto-configuration", 4212500780u, 0, 82, &be_const_str_lv_signal_arcs); -be_define_const_str(_X3Clegend_X3E_X3Cb_X20title_X3D_X27New_X20autoconf_X27_X3E_X26nbsp_X3BSelect_X20new_X20auto_X2Dconfiguration_X3C_X2Fb_X3E_X3C_X2Flegend_X3E, " Select new auto-configuration", 1926223891u, 0, 80, NULL); -be_define_const_str(_X3Coption_X20value_X3D_X27_X25s_X27_X3E_X25s_X3C_X2Foption_X3E, "", 510303524u, 0, 30, &be_const_str_Unknown_X20command); -be_define_const_str(_X3Coption_X20value_X3D_X27reset_X27_X3E_X26lt_X3BRemove_X20autoconf_X26gt_X3B_X3C_X2Foption_X3E, "", 3994619755u, 0, 54, &be_const_str_PART_MAIN); -be_define_const_str(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EException_X3A_X3C_X2Fb_X3E_X3Cbr_X3E_X27_X25s_X27_X3Cbr_X3E_X25s_X3C_X2Fp_X3E, "

Exception:
'%s'
%s

", 4252565082u, 0, 59, &be_const_str_atan); -be_define_const_str(_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E, "

", 2052843416u, 0, 25, NULL); -be_define_const_str(_X3Cp_X3E_X3Cform_X20id_X3Dac_X20action_X3D_X27ac_X27_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20method_X3D_X27get_X27_X3E_X3Cbutton_X3EAuto_X2Dconfiguration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E, "

", 2058443583u, 0, 110, &be_const_str_CFG_X3A_X20exception_X20_X27_X25s_X27_X20_X2D_X20_X27_X25s_X27); -be_define_const_str(_X3Cp_X3E_X3Cform_X20id_X3Dreapply_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20action_X3D_X27_X2Fac_X27_X20method_X3D_X27post_X27_X20, "

 (This feature requires an internet connection)

", 2719266486u, 0, 74, &be_const_str_json); -be_define_const_str(_X3Cp_X3ECurrent_X20configuration_X3A_X20_X3C_X2Fp_X3E_X3Cp_X3E_X3Cb_X3E_X25s_X3C_X2Fb_X3E_X3C_X2Fp_X3E, "

Current configuration:

%s

", 4115655761u, 0, 46, &be_const_str_AES_GCM); -be_define_const_str(_X3Cselect_X20name_X3D_X27zip_X27_X3E, "

", 1863865923u, 0, 16, &be_const_str_id); +be_define_const_str(_X3C_X3D, "<=", 2499223986u, 0, 2, &be_const_str_ct); +be_define_const_str(_X3Cbutton_X20name_X3D_X27reapply_X27_X20class_X3D_X27button_X20bgrn_X27_X3ERe_X2Dapply_X20current_X20configuration_X3C_X2Fbutton_X3E, "", 3147934216u, 0, 82, &be_const_str_CFG_X3A_X20ran_X20_X20); +be_define_const_str(_X3Cbutton_X20name_X3D_X27zipapply_X27_X20class_X3D_X27button_X20bgrn_X27_X3EApply_X20configuration_X3C_X2Fbutton_X3E, "", 1205771629u, 0, 72, &be_const_str_load); +be_define_const_str(_X3Cfieldset_X3E_X3Cstyle_X3E_X2Ebdis_X7Bbackground_X3A_X23888_X3B_X7D_X2Ebdis_X3Ahover_X7Bbackground_X3A_X23888_X3B_X7D_X3C_X2Fstyle_X3E, "
", 842307168u, 0, 77, &be_const_str_sat); +be_define_const_str(_X3Cinstance_X3A_X20_X25s_X28_X25s_X2C_X20_X25s_X2C_X20_X25s_X29, "Choose a device configuration:
", 1336654704u, 0, 49, &be_const_str_AudioGenerator); +be_define_const_str(_X3Clambda_X3E, "", 607256038u, 0, 8, &be_const_str_dimmer); +be_define_const_str(_X3Clegend_X3E_X3Cb_X20title_X3D_X27Autoconfiguration_X27_X3E_X26nbsp_X3BCurrent_X20auto_X2Dconfiguration_X3C_X2Fb_X3E_X3C_X2Flegend_X3E, " Current auto-configuration", 4212500780u, 0, 82, &be_const_str_font_embedded); +be_define_const_str(_X3Clegend_X3E_X3Cb_X20title_X3D_X27New_X20autoconf_X27_X3E_X26nbsp_X3BSelect_X20new_X20auto_X2Dconfiguration_X3C_X2Fb_X3E_X3C_X2Flegend_X3E, " Select new auto-configuration", 1926223891u, 0, 80, &be_const_str_add); +be_define_const_str(_X3Coption_X20value_X3D_X27_X25s_X27_X3E_X25s_X3C_X2Foption_X3E, "", 510303524u, 0, 30, &be_const_str_OneWire); +be_define_const_str(_X3Coption_X20value_X3D_X27reset_X27_X3E_X26lt_X3BRemove_X20autoconf_X26gt_X3B_X3C_X2Foption_X3E, "", 3994619755u, 0, 54, &be_const_str_BRY_X3A_X20could_X20not_X20save_X20compiled_X20file_X20_X25s_X20_X28_X25s_X29); +be_define_const_str(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EException_X3A_X3C_X2Fb_X3E_X3Cbr_X3E_X27_X25s_X27_X3Cbr_X3E_X25s_X3C_X2Fp_X3E, "

Exception:
'%s'
%s

", 4252565082u, 0, 59, &be_const_str_concat); +be_define_const_str(_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E, "

", 2052843416u, 0, 25, &be_const_str_splash_remove); +be_define_const_str(_X3Cp_X3E_X3Cform_X20id_X3Dac_X20action_X3D_X27ac_X27_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20method_X3D_X27get_X27_X3E_X3Cbutton_X3EAuto_X2Dconfiguration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E, "

", 2058443583u, 0, 110, &be_const_str_arc_dsc); +be_define_const_str(_X3Cp_X3E_X3Cform_X20id_X3Dreapply_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20action_X3D_X27_X2Fac_X27_X20method_X3D_X27post_X27_X20, "

 (This feature requires an internet connection)

", 2719266486u, 0, 74, &be_const_str__debug_present); +be_define_const_str(_X3Cp_X3ECurrent_X20configuration_X3A_X20_X3C_X2Fp_X3E_X3Cp_X3E_X3Cb_X3E_X25s_X3C_X2Fb_X3E_X3C_X2Fp_X3E, "

Current configuration:

%s

", 4115655761u, 0, 46, &be_const_str_get_name); +be_define_const_str(_X3Cselect_X20name_X3D_X27zip_X27_X3E, "