ESP8266 WIFI远程开机卡,可PCIE供电,可插针供电,带温度传感器,两路USB供电开关,一路SATA供电开关,1路WS2812灯带接口,附加个红外遥控开关,IO口快用光了,哈哈。
你将从六个角度看完这篇文章:
工程描述、设计原理、设计思路、红外遥控演示(视频)、wifi控制调试、设计图。
一、工程描述
一直想弄个语音开关电脑,有时躺上床就不想起来关电脑。于是借鉴了立创开源平台的一个贴。
开关机引脚没改,程序通用,打算刷Homekit固件用Siri来控制。
虽然有天猫精灵,但天猫精灵效率太低了,让开个灯比自己去开还费劲!
苹果固件用国外大神做的HAA Homekit,刷完自己写Json就行。
二、设计原理
利用单片机模拟人去按电脑开机键和复位键实现。
大部分电脑关机状态下有5VSB和3.3VSB一种或者两种辅助电源,可以拿来给单片机供电。
开机或复位的两根线一根是接地,另一根是高电平信号线,所以把电平拉低就能实现开机或者复位。
三、设计思路
1.精简电路
把USB-TLL电路去掉,减少接线,减少了很多非必要元件,整块板只有3cm高。
2.增加USB供电和SATA供电控制。
可以拿来控制类似USB加湿器、外置硬盘供电。
3.加温度传感器
可以实时监控机箱温度,通过APP实现报警等联动功能。
4.加红外遥控开关
能掰下来单独使用,通过智能遥控器同样能实现远程开关机,只要两个元件就能实现,缺点是没实时反馈。
5.wifi功能
这块板的WIFI功能需要ESP12、ESP07系列芯片实现,红外开关要STC15W104系列单片机实现。

RES-、RES+、PRSW-、PRSW+接机箱复位和开机按钮,PRSW+、RES+接主板,5VSB、3V3用于不插PCIE时的供电和状态检测。

打开ITX量尺寸的时候发现以前做的红外开关,给它做块板。

先上红外。

板子还是高了,打磨了下勉强塞进机箱。

红外测试完全没问题,配合智能遥控器用手机和天猫精灵也能控制。
------HiWiFi_g54188---Sonoff------esp8266刷机命令---mdi-camera-account mdi-settings-box。
安装esptool工具命令:pip install pyserial。
esptool.py --port COM3 read_flash 0x00000 0x100000 image1M.bin //备份原固件。
esptool.py --port COM3 erase_flash //清内存。
esptool.py --port COM3 write_flash -fs 1MB -fm dout 0x0 sonoff.bin //写固件中文。
esptool.py --port COM3 write_flash -fs 1MB -fm dout 0x0 sonoff-basic.bin //写固件中文1.12.3,默认用户名为 admin 密码为 fibnacci。
esptool.py --port COM3 write_flash -fs 1MB -fm dout 0x0 sonoff_ch_1.bin //最大的空间。
esptool.py --port COM3 write_flash -fs 1MB -fm dout 0x0 hassmart-three.bin。
esptool.py --port COM3 write_flash -fs 1MB -fm dout 0x0 sonoff-basic-chs-1.12.1.bin。
esptool.py --port COM4 write_flash -fs 1MB -fm dout 0x0 sonoff_ch_1.bin。
esptool.py --port COM4 erase_flash。
http://192336l3r3.iask.in/。
armbian 网络WIFI编辑命令:sudo nmtui。
--------HiWiFi_35B98C-------homekit:-----------------ESP 芯片 ID 3445083 ----34915B--。
域名窃持192.168.2.129 Smartplugconnect.phicomm.com“
192.168.123.242 Smartplugconnect.phicomm.com。
注意:如果刷了armbian想刷回安卓,断电,开机再插HUB线。
如果不行,就强短接刷机。
先做armbian镜像完了把下面这个文件。
meson-gxl-s905d-phicomm-n1.dtb //把这个文件添加到Armbian的ROOT/ADB文件夹里。
然后在降级工具下的DATA文件夹下的地址栏输入cmd后输入以下命令开始刷安卓系统。
adb.exe connect 192.168.2.169 //连接目标系统。
adb.exe connect 192.168.2.127 //连接目标系统。
adb.exe connect 192.168.123.163 //连接目标系统。
adb.exe shell reboot update //目标系统u盘启动。
/root/install.sh //把Armbian镜像到N1内存里。
apt update //先更新下armbian系统。
配置命令:armbian-config。
注意:有时找不到WIFI的设置,应该是USB盘的(镜像)问题,多格式化几次EXT4格式在镜像试试,不用插网线就能设置wifi。
然后选择下时区,一般是亚洲的香港。
poweroff//关机
挂载的USB磁盘需是exfat格式,否则armbian系统不认识。
//----------安装OMV-----。
在armbian下输入armbian-config在这里先设置好WIFI或者加入有线网络后在菜单里选择安装omv。
安装完成后在浏览器里输入IP就可以看见了,最好把端口改成8800。
OMV
admin 默认密码:openmediavault。
改源
nano /etc/apt/sources.list。
----------------------。
deb https://mirrors.ustc.edu.cn/debian stretch main contrib non-free。
#deb-src http://httpredir.debian.org/debian stretch main contrib non-free。
deb https://mirrors.ustc.edu.cn/debian stretch-updates main contrib non-free。
#deb-src http://httpredir.debian.org/debian stretch-updates main contrib non-free。
deb https://mirrors.ustc.edu.cn/debian stretch-backports main contrib non-free。
#deb-src http://httpredir.debian.org/debian stretch-backports main contrib non-free。
deb https://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free。
#deb-src http://security.debian.org/ stretch/updates main contrib non-free。
ctrl+o 回车保存
ctrl+x 退出
-----------------------。
---------连接网络---网络编辑命令nmtui---。
命令:armbian-config。
例如给N1设置一个固定IP只需。
命令行输入 armbian-config。
选 network
选 eth0
选 ip
选 static
然后按需求填写即可。
Wi-Fi设置命令行输入 armbian-config。
选 network
选 eth0
选 WiFi
找到对应WiFi信号回车
输入密码选OK
如果第一次没连上,可以多尝试几次。
-------mqtt安装---------------。
#更新下系统,更新前记得改国内源,不知怎么更换的看这贴:http://bbs.hassbian.com/thread-27-1-1.html。
sudo apt-get update。
sudo apt-get upgrade -y。
#安装mosquitto
sudo apt-get install mosquitto。
#更改mqtt设置(本来没有这文件,直接运行以下命令创建)
sudo nano /etc/mosquitto/conf.d/mqtt.conf。
#在上面文件里加入(为保持与hassio版mqtt插件一致,同时为了使用我提供的mqtt测试工具,这里必须要启用websockets支持):
port 1883
listener 1884
protocol websockets。
allow_anonymous false。
#设置用户和密码,这里用户为mqtt,可改为你想设的用户名,回车后会让你输入密码,密码自设输入两遍,建议都设为mqtt。
sudo mosquitto_passwd -c /etc/mosquitto/pwfile mqtt。
设置开机启动
sudo /etc/init.d/mosquitto enable。
#启动MQTT服务
sudo /etc/init.d/mosquitto start。
#重启系统
sudo reboot
#测试MQTT服务是否安装正常,请使用我最新发布的MQTT服务测试页面:
http://www.hassmart.com/products/switches/#tab=mqtt-test。
///---------安装hassio--推荐-------。
curl -sL -o install.sh https://raw.githubusercontent.com/neroxps/hassio_install/master/install.sh。
chmod a+x install.sh。
./install.sh
//-------安装插件CD1插座------。
hicomm_dc1m.py 放在/usr/share/hassio/homeassistant/custom_components/switch。
目录下,
phicomm_dc1m.yaml放在/usr/share/hassio/homeassistant/packages目录下,
configuration.yaml 放在/usr/share/hassio/homeassistant目录下。
把几个文件直接放TMP里执行下面命令。重启机器就Ok看了。
mkdir /home/root/domoticz。
mkdir /usr/share/hassio/homeassistant/custom_components。
mkdir /usr/share/hassio/homeassistant/custom_components/switch。
mkdir /usr/share/hassio/homeassistant/packages。
cd /tmp
cp -r switch.py /usr/share/hassio/homeassistant/components/arduino。
cp -r phicomm_dc1m.py /usr/share/hassio/homeassistant/custom_components/switch。
cp -r phicomm_dc1m.yaml /usr/share/hassio/homeassistant/packages。
cp -r configuration.yaml /usr/share/hassio/homeassistant。
//-----删除hass-命令--。
docker ps |grep "homeassistant/" |awk '{print $1}' | xargs docker rm -f。
docker images |grep "homeassistant/" | awk '{print $3}'| xargs docker rmi。
//----------------------------。
---------domoticz里我的纬度---------。
经度 105.110628
纬度 31.112097
https://api.caiyunapp.com/v2/Y2FpeXVuIGFuZHJpb2QgYXBp/105.110628,31.112097/realtime.json。
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/104.686164,31.473364/realtime.json。
https://api.caiyunapp.com/v2/Y2FpeXVuIGFuZHJpb2QgYXBp/104.6861,31.4733/realtime.json。
caiyun_paraser.lua。
重置网络
1、宽带总线(猫出来的网线)连接路由器的WAN口。
2、将网线一头连接路由器任意LAN口,一头连接电脑,启动电脑和路由器设备;
3、启动设备后,打开浏览器,在地址栏中输入路由器地址(路由器反面可以查看到)进入无线路由器设置。
界面。
4、设置界面出现一个登录路由器的帐号及密码,输入默认帐号admin。
(PS:路由器账号和密码一般都印在路由器的背面或周边,有些路由器密码是在首次设置的时候创建的,忘记的可以重置路由器再设置密码。)。
5、根据设置向导一步一步设置,选择上网方式,通常ADSL用户则选择第一项PPPoE,如果用的是其他的网络。
服务商则根据实际情况选择下面两项,如果不知道该怎么选择的话,直接选择第一项自动选择即可,方便新手操作,选完点击下一步;
6、输入从网络服务商申请到的账号和密码,输入完成后直接下一步;
7、设置wifi密码,尽量字母数字组合比较复杂一点不容易被蹭网。
8、输入正确后会提示是否重启路由器,选择是确认重启路由器,重新启动路由器后即可正常上网。
多刷新几遍,局域网里面是不需要中枢也可以控制的,如果是外网控制才需要中枢的,看你是什么情况下无响应,如果是局域网无响应,把homekit网关拔了断电,再通电,可能是网络不通 ,如果是外网无响应,这就是很正常的,外网控制走的是iCloud ,太封闭了,多刷新几次,但是要确保你的iPad不会因为锁屏而断开WIFI连接。