LINUX系统无线网频繁断开_Sonoff产品(WIFI产品)接入KNX系统实战

作者简介:无花无酒,人称花酒兄,我估计可能这个人喜欢喝花酒,不过他很喜欢折腾KNX,也是KNX忠实粉丝,自家装修也用的是KNX系统,对于KNX的各种扩展应用也有比较高的造zhi(诣)!这篇就是他的应用之一。

13c8c5d26847d65d837d48225d555f9f.png

我是一个搬砖的,醉心于HA的隔壁小王告诉我有种将傻瓜电器接入KNX网络的办法,是使用SONOFF(一种炒鸡便宜的WIFI产品,某宝大把),然后要刷一种叫Tasmota的固件使用WIFI作为通讯手段。话说我是个很排斥的无线的人,虽然这会儿躺在沙发上用笔记本码字,我还是对在控制领域使用无线持保留态度,以2.4G频率的无线为例,WIFI、蓝牙、对讲机,甚至还有微波炉这样的功率电器都在使用,不敢恭维它的稳定性。可是,小王告诉我,它便宜!!!一个开关模块才不到30软妹币,瞬间我投降了,人穷志气短呀。


先说下Sonoff,一系列基于ESP8266芯片的产品。ESP8266,一个这几年很火的芯片,乐鑫信息科技出品,号称全球卖出了上亿片芯片,ESP8266集成了 32 位 Tensilica 处理器、标准数字外设接口、天线开关、射频balun、功率放大器、低噪放大器、过滤器和电源管理模块等,仅需很少的外围电路。在开源社区有很多好的应用项目。Sonoff有下列产品,但不仅包括下列产品:

•        Sonoff 4CH / 4CH Pro

•        Sonoff 4CH DIY

•        Sonoff / Geekcreit 2CH

•        Sonoff B1 / B1 R2

•        Sonoff Basic (R2)

•        Sonoff Dual / Dual R2

•        Sonoff iFan02

•        Sonoff Pow / Pow R2

•        Sonoff PSA

•        Sonoff RF and Slampher

•        Sonoff RF Bridge 433

•        Sonoff S20 Smart Socket

•        Sonoff S26 Smart Socket

•        Sonoff S31

•        Sonoff SC

•        Sonoff SV

•        Sonoff T1

•        Sonoff Touch

•        Sonoff TH

上述产品在某宝应该都可以买得到,我上文说到的继电器模块指的是Sonoff Basic。原厂的固件对接的是什么我没有关心,想来原厂应该有APP之类的,可惜买到Sonoff Basic就把固件擦除了,没尝试下原厂固件的功能。

Step.1 硬件准备

下边我将我测试的过程描述一下,大部分内容是源自Sonoff-Tasmota的Wiki(https://github.com/arendst/Sonoff-Tasmota/wiki),不愿意看下去的同学直接转战那,可能比我唠唠叨叨更迅速。第一件事情是去某宝,买Sonoff,我用的sonoff Basic,大家也可以买别的。Tasmota支持的清单在这儿https://github.com/arendst/Sonoff-Tasmota/wiki/Supported-devices。另外要准备的一个东西是USB转TTL的转换器(CP2102, CH340G, FT232,PL2303)。转换器需要带3.3V电源,其实某宝上很容易可以买到带3.3V电源的USB 转UART TTL。跟店家确定下是否是3.3V是很有必要,我第一次买的转换器上明明有一个5V和3.3V的转换开关,但是实际使用不管拨在哪个位置,输出都是5V。。。。。虽然没把Sonoff烧掉,但我也不敢再用了。收货后使用前测量下电压,一旦电压不匹配,很有可能模块化成烟。另外一个就是杜邦线(母对母)和插针,需要准备下。

7804dc64f4c5256801b926bccb9e41e1.png

Sonoff的WIFI开关模块

9a139f0e5a05da4c4157ca6862ba8d2e.png

USB转串口,务必注意接口电压:3.3V!!!

06dd07479313d7befe12703238d939d6.png

一些其他辅助的插针、连接线

先介绍一下Sonoff这个东西:

c402e631fb8c4c2641e783ea28bd2bce.png

220V一进一出,进来的电给产品供电,出去的直接接负载,可以是灯泡、热水器,插座等等,壳子上有N和L的提示,输入输出要严格按照L和N的接线,因为内部继电器控制的是L的通断。

接下来要给Sonoff刷Tasmota固件,我们要给Sonoff焊上杜邦插针,下图是要焊接插针的地方反正面。

4ca34790a6903c6f1d2a93dae649e8cc.png

4位排针的正面示意图

6088059e36b800e5e994de747387358b.png

4位排针的反面示意图,请务必注意这个线序,否则模块可能化成烟

GND接USB接口上的GND,3.3V接USB接口上3.3V或者VCC(记住量一下电压,多么痛的领悟),TX接USB接口上的RX,RX接USB接口上的TX。焊完接好见下图。

501a83f73566004a995d8d8ce32117c8.png

准备完成图

    到此,硬件的准备工作差不多了,下边开始准备软件。

Step.2 重刷固件

刷固件的软件有很多(https://github.com/arendst/Sonoff-Tasmota/wiki/Upload-tools这个链接有全部工具),固件可以自己编译也有各种二进制版本的可以下载,本文仅介绍ESPTOOL这一种,具体介绍在https://github.com/arendst/Sonoff-Tasmota/wiki/Esptool,ESPTOOL有python的版本和可执行文件的版本,如果大家没有Python的环境那就还是用可执行文件的版本吧。https://github.com/igrr/esptool-ck/releases这里有ESPTOOL的各种版本下载。

https://github.com/arendst/Sonoff-Tasmota/releases这儿有Sonoff-Tasmota固件的介绍和下载链接。我们要使用的是knx功能,自然要下载下图所示的固件了。将固件放到ESPTOOL同一个目录。

Sonoff-knx.bin固件支持的特性和传感器在下载链接上方的两个表里边有介绍,大家可以了解一下。

d1606b07fb442b5fc5aa2a1f592663ea.png

刷固件进行中,心里小激动

软硬件都准备好了,就可以刷固件了。Sonoff不要连接强电,切记,刷固件的时候,模块是通过USB接口供电。将USB转TTL接口和Sonoff连接好,插入计算机USB接口。Sonoff上的绿色LED会闪亮。

    Windows通过设备管理器看看串口是哪一个,LINUX跟MAC可以ls /dev 看一下,一般是tty.usbserial开头的设备,我的是tty.usbserial-14110。打开命令行的窗口进入ESPTOOL的目录。然后拔下USB口,按住Sonoff上的黑色按钮插上USB,两三秒后松开按钮,这时候Sonoff就进入了刷固件的状态。

1.擦除原有固件:

    LINUX和MAC执行命令:

        ./esptool -cp /dev/tty.usbserial-14110 -cb 115200 -ce -v

    Windows的cmd执行命令:

       esptool -cp COM3 -cb 115200 -ce -v

2.写入新的固件,如果写入失败,重新插拔然后执行相同命令

    LINUX和MAC执行命令:

        ./esptool -cp/dev/tty.usbserial-14110 -cb 115200 -bm dout -cf sonoff-knx.bin -v

    Windows的cmd执行命令:

        esptool -cp COM3 -cb115200 -bm dout -cf sonoff-knx.bin -v

执行后的结果如下:

163faf5e330f0ada4e0ced3ef77e930a.png

这时候Sonoff会启动应用,绿色的LED会闪亮。到此,固件就刷好了。

Step.3 配置无线

刷好固件就可以把Sonoff断开和USB转换器的连接,盖上盖子,连好电源线,喜欢直观点的同学可以在负载那边接上一个灯泡。拧好螺丝,接上电源,我们开始配置WIFI了。首先Sonoff上的黑色按钮有很多功能,具体看(https://github.com/arendst/Sonoff-Tasmota/wiki/Button-Usage),理论上说,配置WIFI可以通过连续按三次按钮然后使用手机安装ESP8266SmartConfig这个app来配置无线,也可以通过连续按四次按钮启动Sonoff上的无线接入点来配置WIFI,也可以通过按五次按钮使用wps来配置。查看下Sonoff-knx固件,使用WPS配置Wifi这个特性是不在Sonoff-knx固件里边的,我选择了按四次按钮的办法。按四次按钮后,计算机发现了一个如下图的无线网络,ssid为sonoff开头,四位数字结尾。

6b7eabcc0a959072fa2c15dc1d4bca5a.png

Sonoff的AP名称

连上这个无线网络,在浏览器地址栏里输入http://192.168.4.1,会打开如下左图这个页面。

3bf7cb6cb392fc3619564ca9c0a0cf78.png

浏览器配置页面

AP1 SSId 填写Sonoff要连接的无线网络的SSID,也就是你所使用的WIFI热点名称,AP1 PASSWORD里填写你所使用的WIFI无线网络密码,点save保存一下。然后连回你使用的无线网络,检查无线路由的DHCP服务器(在你链接的路由器DHCP管理页面中)会找到给Sonoff分配的IP地址。使用http://加上Sonoff的IP地址,您会进入Sonoff的配置页。如下图。

daa4d7e798deec2d8d8f75111ace700b.png 

配置KNX

点击Sonoff配置页里边的ConfigureKNX,即可进入一个KNX的配置页。如下。

bf12ba24995b6b6dffb6888cef8588a8.png

具体的配置可参考https://github.com/arendst/Sonoff-Tasmota/wiki/KNX-Features。PhysicalAddress填写KNX物理地址,Enable KNX前边一定要钩上;Communication Enhancement选项如果选中,每个组地址会发三个同样的报文,如果不选择,只会发一次,这个选项避免了组播环境下的报文丢失,同样选择这个选项后,一秒内连续对Sonoff发送两个一样的动作,后边的动作就不被理睬了。

Step.4 用ETS测试Sonoff

终于到这一步,接下来要看看它是否能够支持KNX 路由报文,这里我们可以通过KNX系统专属的配置工具ETS来进行测试。给Sonoff配上物理地址和组地址,使用ETS5(ETS3\ETS4也可以)组播方式连接。

经过测试,ETS5可以读到Sonoff发出的报文,ETS5发出的报文,Sonoff也正常响应。

00b2be24c7047d4fc85186444b52db9e.png

哈哈,Sonoff发的命令,ETS可以收到拉

    到此,这个炒鸡便宜的WIFI开关模块,已经摇身一变可以支持KNX的协议的设备了,配合KNX的IP Router,即可完成TP和WIFI模块的双向通信。有兴趣,爱折腾的朋友们也可以捣鼓捣鼓!这也算是KNX的总线向无线延伸的一种途径。

(完)


        鉴于水平所限,如有不对的地方请留言指出,谢谢!如果你在阅读时有什么疑问、或者有什么技术方面的交流,可以关注我的公众号留言。对KNX有兴趣的可以加入KNX千人QQ交流群:23975744。

0731948c75b1a65454444afb896acddb.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值