Przedstawiam teardown nowego urządzenia z Action a mianowicie HDMI sync box za 129,99zł.
https://shop.action.com/en-nl/p/8712879162889/hdmi-sync-box-with-light-strip
Model: 6204000100
Obsługuje HDMI: HDCP2.2, 4k@60Hz HDR10+
Urządzenie podpinamy pomiędzy np. konsolą lub odbiornikiem satelitarnym a telewizorem.
Do niego podłączamy taśmę LED (84szt. 5050RGB LED na 2,6m) i montujemy ją na telewizorze 65" na 3 brzegach (lewy, góra, prawy) co w efekcie końcowym robi nam oświetlenie jak Ambilight w telewizorach Philips.
Minusy: wygląda na to że oprogramowanie i instrukcja nie przewiduje montowania na większym bądź mniejszym TV niż 65"
- mój ma 48"
Obudowa jest skręcona czterema śrubkami.
W środku znajdziemy trzy główne układy:
BK7231N/CBU
ESP32-D0WD-V3
chip do extrakcji obrazu z HDMI: GSCoolink GSV2002
z kolei od spodu Pan Chinczyk wypuścił na produkcje PCB nie zauważając że nadruk jest w lustrzanym odbiciu
Po odwróceniu na komputerze
Na PCB są wyciągnięte gniazda na goldpiny do każdego układu (nawet tego którego nie wlutowali) z RX TX GND i 3V3.
Dodatkowo przylutowane (nie wyciągnięte na obudowe) są trzy microswitche
- górny połączony do GPIO0 ESP32 (idealny do trybu Flashmode)
- lewy dolny połączony do CBU pin P6
- prawy dolny połączony do CBU pin CEN (idealny do trybu Flashmode)
Udało mi się zgrać oryginalny firmware z CBU, ale już nie z ESP32 (zapewne zajęty RX/TX), ale za to podsłuchałem logi obydwu układów po starcie.
ESP32:
CBU:
następnie podłączenie przez aplikację Tuya na telefonie, urządzenia do internetu:
Uzyskana konfiguracja CBU (nie podłączonego nigdy do sieci) po zgraniu firmware
Jak można sie domyśleć to ESP robi za mózg przetwarzania obrazu na odpowiednie kolory, a CBU za komunikacje z serwerami TUYA, wypuszczanie sygnału na taśmę LED i nie ma tu układu pośredniczącego typu TuyaMCU.
W aplikacji Tuya Smart urządzenie wygląda następująco wraz z konfiguracja z którego wiersza i kolumny ma pobierać obraz dla generowania światła taśmy LED:
https://shop.action.com/en-nl/p/8712879162889/hdmi-sync-box-with-light-strip
Model: 6204000100
Obsługuje HDMI: HDCP2.2, 4k@60Hz HDR10+
Urządzenie podpinamy pomiędzy np. konsolą lub odbiornikiem satelitarnym a telewizorem.
Do niego podłączamy taśmę LED (84szt. 5050RGB LED na 2,6m) i montujemy ją na telewizorze 65" na 3 brzegach (lewy, góra, prawy) co w efekcie końcowym robi nam oświetlenie jak Ambilight w telewizorach Philips.
Minusy: wygląda na to że oprogramowanie i instrukcja nie przewiduje montowania na większym bądź mniejszym TV niż 65"
Obudowa jest skręcona czterema śrubkami.
W środku znajdziemy trzy główne układy:
BK7231N/CBU
ESP32-D0WD-V3
chip do extrakcji obrazu z HDMI: GSCoolink GSV2002
z kolei od spodu Pan Chinczyk wypuścił na produkcje PCB nie zauważając że nadruk jest w lustrzanym odbiciu
Po odwróceniu na komputerze
Na PCB są wyciągnięte gniazda na goldpiny do każdego układu (nawet tego którego nie wlutowali) z RX TX GND i 3V3.
Dodatkowo przylutowane (nie wyciągnięte na obudowe) są trzy microswitche
- górny połączony do GPIO0 ESP32 (idealny do trybu Flashmode)
- lewy dolny połączony do CBU pin P6
- prawy dolny połączony do CBU pin CEN (idealny do trybu Flashmode)
Udało mi się zgrać oryginalny firmware z CBU, ale już nie z ESP32 (zapewne zajęty RX/TX), ale za to podsłuchałem logi obydwu układów po starcie.
ESP32:
I (191) cpu_start: Compile time: Nov 5 2022 16:11:44
I (197I (163) cpu_start: Pro cpu up.
I (163) cpu_start: Starting app cpu, entry point is 0x40081368
I (0) cpu_start: App cpu up.
I (177) cpu_start: Pro cpu start user code
I (177) cpu_start: cpu freq: 240000000
I (177) cpu_start: Application information:
I (181) cpu_start: Project name: syncbox
I (186) cpu_start: App version: 1
I (191) cpu_start: Compile time: Nov 5 2022 16:11:44
I (197) cpu_start: ELF file SHA256: 9ad074a7b2b71120...
I (203) cpu_start: ESP-IDF: v4.4.1-dirty
I (209) heap_init: Initializing. RAM available for dynamic allocation:
I (216) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (222) heap_init: At 3FFDA948 len 000056B8 (21 KiB): DRAM
I (228) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (234) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (241) heap_init: At 4008F010 len 00010FF0 (67 KiB): IRAM
I (248) spi_flash: detected chip: generic
I (251) spi_flash: flash io: dio
I (256) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
external config
_000 : general_this_valid = 1
_001
_002
_003
_004 : general_publish_type = 0
_005 : general_release_print = 1
_006
_007
_008_024 : general_board_version = A4E32MGS02KR_05
_025
_026
_027
_028 : hdmi_chip_vendor = 0
_029 : hdmi_chip_model = 0
_030 : hdmi_firmware_type = 1
_031
_032 : hdmi_i2c_en = 0
_033 : hdmi_i2c_port = 0
_034 : hdmi_i2c_scl = 26
_035 : hdmi_i2c_sda = 25
_036_039 : hdmi_i2c_freq = 0
_040 : hdmi_i2c_addr = 0x00
_041
_042
_043
_044 : hdmi_uart_en = 0
_045 : hdmi_uart_port = 0
_046 : hdmi_uart_tx = 0
_047 : hdmi_uart_rx = 0
_048_051 : hdmi_uart_bitrate = 0
_052
_053
_054
_055
_056 : hdmi_reset_gpio = 22
_057 : hdmi_reset_level = 0
_058 : hdmi_select_gpio = 0
_059 : hdmi_select_level = 0
_060 : hdmi_power_gpio = 0
_061 : hdmi_power_level = 0
_062
_063
_064
_065
_066 : adc_r_gpio = 35
_067 : adc_g_gpio = 32
_068 : adc_b_gpio = 33
_069 : adc_hs_gpio = 39
_070 : adc_vs_gpio = 34
_071
_072
_073
_074 : authority_uart_port = 1
_075 : authority_uart_tx = 23
_076 : authority_uart_rx = 19
_077
_078
_079
_080 : authority_led_gpio = 18
_081 : authority_led_level = 1
_082
_083
_084
_085
_086 : output_spi_en = 1
_087 : output_spi_port = 1
_088 : output_spi_miso = 19
_089 : output_spi_mosi = 27
_090 : output_spi_sclk = 4
_091 : output_spi_ncs = 5
_092_095 : output_spi_freq = 1000000
_096
_097
_098
_099
_100 : output_uart_en = 0
_101 : output_uart_port = 0
_102 : output_uart_tx = 0
_103 : output_uart_rx = 0
_104_107 : output_uart_bitrate = 0
_108
_109
_110
_111
_112 : output_i2c_en = 0
_113 : output_i2c_port = 0
_114 : output_i2c_scl = 0
_115 : output_i2c_sda = 0
_116_119 : output_i2c_freq = 0
_120 : output_i2c_addr = 0x00
_121
_122
_123
_124 : sw_adc_buffer = 0
_125 : sw_amb_pack = 0
_126 : sw_amb_matrix = 0
_127 : sw_amb_major = 0
_128 : sw_amb_show_delay = 1
_129 : sw_amb_mute_delay = 1
_130 : sw_amb_confirm = 3
_131 : sw_amb_cut = 10
_132 : sw_amb_motion_thres = 48
_133 : sw_amb_motion_means = 2
_134 : sw_amb_lpf_coef = 8
_135 : sw_amb_cdd_thres = 4
_136 : sw_amb_hdr_gain = 2
_137 : sw_amb_add = 0
_138 : sw_amb_mask_thres = 0
_139 : sw_amb_mask_value = 0
_140 : sw_amb_support_1440p60 = 0
_141
_142
_143
_144 : sw_amb_task_delay_ms_thread_main = 10
_145 : sw_amb_task_delay_ms_thread_hdmi = 10
_146 : sw_amb_task_delay_ms_thread_ota = 10
_147
_148
_149
_150
_151
_152 : sw_amb_black_all_at_nc = 1
_153
_154
_155
hardware version : A4E32MGS02KR_05
firmware version : A4E32MGS02_V2.6.26 (release) @ 2022.11.19 01:00
hdmi-rx version : GS2002_V1.00.00.04 (embedded) @ 2022.05.20 fix eye-diagram
authority checked ok, start working ...
CBU:
[01-01 18:12:15 TUYA Err][lr:0xa49a5] uf_open 0 err 8
[01-01 18:12:15 TUYA Err][lr:0x5888f] uf file 0 can't open and read data!
[01-01 18:12:15 TUYA Err][lr:0x5c003] Failed to load colour cfg from Flash
[01-01 18:12:16 TUYA Err][lr:0xa49a5] uf_open 1 err 8
[01-01 18:12:16 TUYA Err][lr:0x5888f] uf file 1 can't open and read data!
[01-01 18:12:16 TUYA Err][lr:0x5c7e7] Failed to load music cfg from Flash
[01-01 18:12:16 TUYA Err][lr:0xa49a5] uf_open 2 err 8
[01-01 18:12:16 TUYA Err][lr:0x5888f] uf file 2 can't open and read data!
[01-01 18:12:16 TUYA Err][lr:0x5a413] Failed to load scene cfg from Flash
[01-01 18:12:16 TUYA Err][lr:0xa49a5] uf_open 4 err 8
[01-01 18:12:16 TUYA Err][lr:0x5888f] uf file 4 can't open and read data!
[01-01 18:12:16 TUYA Err][lr:0x58c7d] Failed to load lighting-cloud-configuration from Flash
[01-01 18:12:16 TUYA Err][lr:0xa49a5] uf_open 5 err 8
[01-01 18:12:16 TUYA Err][lr:0x5888f] uf file 5 can't open and read data!
mic is initialized
apl_mgmt.chgNotify is ready
apl_mgmt.bgTask is ready
apl_mgmt.mainTask is ready
lumina app lfx is initialzed
spi slave dma init: mode:1, rate;1
spi_slave [CTRL]:0x0090ff00
spi_slave [CONFIG]:0x00000000
spi dma rx init
kr_spis_mgmt.task is running
kr_spis_mgmt.task state is 2lfx main task is resumed
app lighting is enable now
Succeed to malloc space for app_light_cfg.seg_list
[01-01 18:12:16 TUYA Err][lr:0xa6d0f] dev_cntl null
[01-01 18:12:16 TUYA Err][lr:0x5ec55] dp_sync_iot_local_music is fail,fail_num:-6
[01-01 18:12:16 TUYA Err][lr:0xa6719] devid: dparr[0]:20 not find
[01-01 18:12:16 TUYA Err][lr:0xa67b5] no vaild dp
[01-01 18:12:16 TUYA Err][lr:0x9db93] dp composition fail.ret:-3585
[01-01 18:12:16 TUYA Err][lr:0x5ecf1] dev_report_dp_json_async all_data is fail,fail_num:-3585
[PLATFORM NOTICE]bk_rst:0 tuya_rst:0
rw_ieee80211_set_country code:
code: CN
channel: 1 - 13
mode: MANUAL
bk_wlan cca closed
[01-01 18:12:16 TUYA Err][lr:0x5fb17] ===================network:1
[01-01 18:12:16 TUYA Err][lr:0xa6d0f] dev_cntl null
[01-01 18:12:16 TUYA Err][lr:0x5ec55] dp_sync_iot_local_music is fail,fail_num:-6
[01-01 18:12:16 TUYA Err][lr:0xa6719] devid:6c11ce5d0dd0857ef1fjyf dparr[0]:20 not find
[01-01 18:12:16 TUYA Err][lr:0xa67b5] no vaild dp
[01-01 18:12:16 TUYA Err][lr:0x9db93] dp composition fail.ret:-3585
[01-01 18:12:16 TUYA Err][lr:0x5ecf1] dev_report_dp_json_async all_data is fail,fail_num:-3585
[sa_sta]MM_RESET_REQ
[bk]tx_txdesc_flush
[sa_sta]ME_CONFIG_REQ
[sa_sta]ME_CHAN_CONFIG_REQ
[sa_sta]MM_START_REQ
ht in scan
scan_start_req_handler
lighting effect main task in running
state of apl_mgmt.bgTask is 1
lfx background task is resumed
current lfx is 2
current period is 500
Succeed to create u2_dma_tx_mgmt.notify
net_wlan_add_netif not vif idx found
supplicant_main_exiting
supplicant_exit_done
hostapd_main_exiting
hostapd_exit_handler
hostapd_exit_done
net_wlan_add_netif not vif idx found
supplicant_main_exiting
supplicant_exit_done
Soft_AP_start
[saap]MM_RESET_REQ
[bk]tx_txdesc_flush
[saap]ME_CONFIG_REQ
[saap]ME_CHAN_CONFIG_REQ
[saap]MM_START_REQ
apm start with vif:0
me_set_ps_disable:840 0 0 1 0 0
------beacon_int_set:100 TU
set_active param 0
[msg]APM_STOP_CFM
update_ongoing_1_bcn_update
hal_machw_enter_monitor_mode
cur_stat = 1,isConnectClouded=0
[PLATFORM DEBUG]!!!!!!!!!!tuya_os_adapt_bt_reset_adv
adv_state:12
!!!!!!!!!!ble_appm_update_adv_data updata adv data
[gapm_cmp_evt_handler] conidx:0,operation:0xa9,status:0x0
[appm_adv_fsm_next] cur adv_state:c
adv_state:13
[ble_appm_set_scan_rsp_data]
end adv_state:d
[PLATFORM DEBUG]UNKNOW EVENT:19
[PLATFORM DEBUG]UNKNOW EVENT:16
[gapm_cmp_evt_handler] conidx:0,operation:0xaa,status:0x0
[appm_adv_fsm_next] cur adv_state:d
adv_state:7
end adv_state:7
[PLATFORM DEBUG]UNKNOW EVENT:20
[PLATFORM DEBUG]UNKNOW EVENT:16
Clear FIFO:4
następnie podłączenie przez aplikację Tuya na telefonie, urządzenia do internetu:
[PLATFORM NOTICE]BLE CONNECT
adv_state:8
[appm_adv_fsm_next] cur adv_state:8
[appm_delete_advertising]
adv_state:10
end adv_state:a
[PLATFORM DEBUG]UNKNOW EVENT:18
[gapm_cmp_evt_handler] conidx:0,operation:0xa7,status:0x0
[appm_adv_fsm_next] cur adv_state:a
adv_state:0
end adv_state:0
[PLATFORM DEBUG]UNKNOW EVENT:16
[PLATFORM DEBUG]!!!!!!!!!!tuya_os_adapt_bt_reset_adv
fast_connect
net_wlan_add_netif not vif idx found
supplicant_main_exiting
supplicant_exit_done
[sa_sta]MM_RESET_REQ
[bk]tx_txdesc_flush
[sa_sta]ME_CONFIG_REQ
[sa_sta]ME_CHAN_CONFIG_REQ
[sa_sta]MM_START_REQ
bssid CENZURA
security2cipher 2 2 16 16 security=5
cipher2security 2 2 16 16
hapd_intf_add_vif,type:2, s:0, id:0
wpa_dInit
wpa_supplicant_req_scan
Setting scan[retry16] request: 0.100000 sec
MANUAL_SCAN_REQ
enter low level!
mac fc:3c:d7:61:db:ac
leave low level!
net_wlan_add_netif done!, vif_idx:0
wpa_supplicant_scan
Cancelling scan request
wpa_driver_associate
ssid:CENZURA, 1
ht in scan
scan_start_req_handler
found scan rst rssi -71 < -50
dis ht_support
me_set_ps_disable:840 0 0 1 0 3
sm_auth_send:1
cur_stat = 5,isConnectClouded=1
[01-01 18:16:08 TUYA Err][lr:0xa6d0f] dev_cntl null
[01-01 18:16:08 TUYA Err][lr:0x5ec55] dp_sync_iot_local_music is fail,fail_num:-6
[01-01 18:16:08 TUYA Err][lr:0xa6719] devid:6c11ce5d0dd0857ef1fjyf dparr[0]:20 not find
[01-01 18:16:08 TUYA Err][lr:0xa67b5] no vaild dp
[01-01 18:16:08 TUYA Err][lr:0x9db93] dp composition fail.ret:-3585
[01-01 18:16:08 TUYA Err][lr:0x5ecf1] dev_report_dp_json_async all_data is fail,fail_num:-3585
[01-01 18:16:09 TUYA Err][lr:0xaf88b] network unavailable
SM_DISCONNECTING status=1
---------SM_CONNECT_IND_fail
deassoc_evt_cb
wpa_driver_deassoc_cb
wpa_supplicant_req_scan
Setting scan[retry15] request: 0.100000 sec
wpa_supplicant_req_scan
Ignore new scan request for 10.000000 sec since an earlier request is scheduled to trigger sooner
wpa_supplicant_scan
wpa_drv_scan
wpa_send_scan_req
recover ht_support:1
ht in scan
scan_start_req_handler
[01-01 18:16:10 TUYA Err][lr:0xaf88b] network unavailable
[01-01 18:16:11 TUYA Err][lr:0xaf88b] network unavailable
wpa_driver_scan_cb
wpa_get_scan_rst:3
wpa_supplicant_connect
Cancelling scan request
wpa_driver_associate
ssid:CENZURA, 1
found scan rst rssi -71 < -50
dis ht_support
no ht in scan
scan_start_req_handler
me_set_ps_disable:840 0 0 1 0 3
sm_auth_send:1
sm_auth_handler
ht NOT in assoc req
sm_assoc_rsp_handler
rc_init: station_id=0 format_mod=0 pre_type=0 short_gi=0 max_bw=0
rc_init: nss_max=0 mcs_max=255 r_idx_min=0 r_idx_max=11 no_samples=10
---------SM_CONNECT_IND_ok
wpa_driver_assoc_cb
Cancelling scan request
new ie: 0 : 11 66 6f 72 55 20 49 4f 54
new ie: 1 : 11 84 8b 96 c 12 18 24
new ie: 3 : 2
new ie: 2d : 11 11 1b ff ff 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
new ie: 30 : 1 0 0 f ac 4 1 0 0 f ac 4 1 0 0 f ac 2 0 0
__l2_packet_send: ret 0
__l2_packet_send: ret 0
hapd_intf_add_key CCMP
add sta_mgmt_get_sta
sta:0, vif:0, key:0
sta_mgmt_add_key
add hw key idx:24
hapd_intf_add_key CCMP
add is_broadcast_ether_addr
sta:255, vif:0, key:1
add hw key idx:1
ctrl_port_hdl:1
me_set_ps_disable:840 0 0 0 0 3
sta_ip_start
configuring interface mlan (with DHCP client)dhcp_check_status_init_timer:20000
[01-01 18:16:12 TUYA Err][lr:0xaf88b] network unavailable
[01-01 18:16:13 TUYA Err][lr:0xaf88b] network unavailable
ip_addr: CENZURA
same_bssid_info
first enable sleep
power_save_me_ps_first_set_state:576
me_send_ps_req 2 0 0
ps_keep_timer init
cur_stat = 6,isConnectClouded=1
set_ps_mode_cfm:963 1 4 0 3 255
enter 0 ps,p:1 m:1 int:100 l:100!
power_save_dtim_ps_init
sleep_first 0
dtim period:1 multi:1
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x5ec55] dp_sync_iot_local_music is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x5ee1f] dp_sync_iot_local_music is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x5ec99] dp_sync_iot_local_music is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x9dbb7] dp report async fail.ret:-5890
[12-01 19:30:02 TUYA Err][lr:0x5efb9] sync_screen is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x9dbb7] dp report async fail.ret:-5890
[12-01 19:30:02 TUYA Err][lr:0x5f011] sync_screen is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xa6edf] mqtt async send err:-5890
[12-01 19:30:02 TUYA Err][lr:0x9dbb7] dp report async fail.ret:-5890
[12-01 19:30:02 TUYA Err][lr:0x5f885] dev_report_dp_json_async all_data is fail,fail_num:-5890
[12-01 19:30:02 TUYA Err][lr:0xc0d25] astro timer read fail:-6
[12-01 19:30:02 TUYA Err][lr:0xc1129] read fail:-6
[12-01 02:17:48 TUYA Err][lr:0xc64b1] ret:1.
[PLATFORM DEBUG]!!!!!!!!!!tuya_os_adapt_bt_reset_adv
[12-01 02:17:48 TUYA Err][lr:0xc64b1] ret:1.
cur_stat = 7,isConnectClouded=1
dp_colour_t.sync_hsv.h = 21,isConnectClouded=0
[12-01 02:17:50 TUYA Err][lr:0xa49a5] uf_open netcfg_log err 8
[PLATFORM NOTICE]bk_rst:1 tuya_rst:4
[12-01 02:18:04 TUYA Err][lr:0xa3697] result null
Clear FIFO:5
Clear FIFO:4
rxl dma recover
Clear FIFO:9
gen:1000000
rx_header_dma_dead
Clear FIFO:2
Clear FIFO:3
Clear FIFO:2
gen:2000000
rx_payload_dma_dead
Clear FIFO:1
Clear FIFO:9
Clear FIFO:3
gen:2000000
rx_payload_dma_dead
gen:100
rx_fifo_over_flow count=0
Uzyskana konfiguracja CBU (nie podłączonego nigdy do sieci) po zgraniu firmware
{
"nc_tp":"9",
"ssid":"dHV5YV9tZGV2X3Rlc3Q=",
"passwd":"R2h5dTU1NTU1NQ==",
"md":"0",
"random":"0",
"wfb64":"1",
"stat":"2",
"token":"nGTGkRfq",
"region":"AY",
"reg_key":"k41r",
"dns_prio":"0 }",
"ai_sp_ip":"null",
"mq_psk":"null",
"mq_psk_ip":"null",
"time_z":"null",
"s_time_z":"null",
"w{key":"gNc`x.nyaI'-O.;c",
"lckey":"v",
"h_url":"http",
"h_ip":"42.192.25.216",
"hs_url":"null",
"hs_ip":"null",
"hs_psk":"https",
"hs_psk_ip":"81.69.183.170",
"mqs_url":"null",
"mqs_ip":"null",
"mq_url":"m2.tuyacn{uuid",
"psk_key":"PiJFcZ05gIsrUo0R4vFNxSxF8gwdJfUmJLOL8",
"auth_key":"z1K5ApH3b1HPmeeYGcn9YbTfdTaK9Eru",
"ap_ssid":"SmartLife",
"ap_passwd":"null",
"country_code":"CN",
"bt_mac":"null",
"bt_hid":"null",
"prod_test":"false",
"fac_pin":"aceyfgaokqwk4nzj }.com",
"mq_ip":"42.192.30.165",
"ai_sp":"null",
"wx_app_id":"null",
"wx_uuid":"null",
"dy_tls_m":"0",
"cloud_cap":"1025",
"psk21_key":"null }{nc_tp",
"cnt":"0}3LBwf_start_mdnAer8l48[{type",
"mode":"rw",
"property":"{type",
"id":"20}",
"{type":"obj",
"type":"enum}",
"maxlen":"255}",
"max":"86400",
"scale":"0",
"step":"1",
"{mode":"rw",
"time_(`type":"enum}"
}
Jak można sie domyśleć to ESP robi za mózg przetwarzania obrazu na odpowiednie kolory, a CBU za komunikacje z serwerami TUYA, wypuszczanie sygnału na taśmę LED i nie ma tu układu pośredniczącego typu TuyaMCU.
W aplikacji Tuya Smart urządzenie wygląda następująco wraz z konfiguracja z którego wiersza i kolumny ma pobierać obraz dla generowania światła taśmy LED:
Fajne? Ranking DIY