# 智能中控里添加一台设备 ## 背景 智能中控主要做为小型局域网内的智能控制中心,基于Hi3516开发板,使用开源OpenHarmony开发。通过控制面板可以控制同一局域网内的空调,窗帘,灯等智能家居设备。详细的开发步骤可以参考[智能中控开发指导](../smart_cenctrl_board/README.md),本文档主要是说明如何在成熟的中控系统里添加一台智能设备。 ## 开发准备 开发环境准备:待添加的智能模组,本文档以[智能台灯](../smart_cenctrl_lamp/README.md)为例。 代码git仓:[链接地址](https://gitee.com/openharmony-sig/knowledge_demo_smart_home/tree/master/dev/team_x/smart_cenctrl_lamp) **此时应达到智能中控和设备均能连接到指定的局域网WiFi。** ## 开发步骤 ### 建立socket通信 + 打开对应的工程,找到Socket相关的代码; ​ 代码路径:team_x/common/IoT_socket/socket_client.c ​ 入口函数:SocketClientStart ——启动socket服务; ​ + 在设备端添加socket协议用户侧代码;  ![image-20211201182951813](media/image-20211201182951813.png) ​ 代码路径: ​ 关键函数简介: ​ LampGetNameHandle:通过此回调,可以向中控面板发送的设备名称。 ​ LampSocketEventHandle:接收中控面板发送指令的回调函数。 ### 命令行对接 + 中控屏和设备端对齐命令字和操作;  ![image-20211201183246526](media/image-20211201183246526.png) 接收命令的入口:Lamp Socket Event Handle(); event:命令字,包括连接、去连接和开关操作指令