数码之家

标题: ozwi智能插座改造点灯科技+小爱同学 [打印本页]

作者: snake43165    时间: 2022-7-25 16:22
标题: ozwi智能插座改造点灯科技+小爱同学
在淘宝淘了几个ozwi智能插座,能找到官方app但配网不成功,不知道是不是我的开始方式不对。拆开看看发现应该很好改造,拆得过程很简单,就不上图了,直接上改造图吧。


实现按插座上按键、点灯科技APP、小爱同学控制插座开关。

代码我不会,都是东拼西凑乱写的,有点基础的同学应该都能看懂,就不要喷我了。

[attach]1554937[/attach]

外观

[attach]1554926[/attach]

IO口对应图

[attach]1554927[/attach]


[attach]1554928[/attach]

飞线用于烧录

[attach]1554929[/attach]

连接烧录器

上代码
#define BLINKER_WIFI
#define BLINKER_MIOT_LIGHT  
#include <Blinker.h>
#include <Arduino.h>
#include "OneButton.h"
char ssid[] = "你的wifi";
char pswd[] = "wifi密码";
char auth[] = "点灯科技设备ID";

#define RELAY_PIN 12//继电器
#define RED_PIN 4//红色LED
#define BLUE_PIN 14//蓝色LED
#define PIN_INPUT 13//按键

OneButton button(PIN_INPUT, true);
void click()
{
  digitalWrite(RELAY_PIN,!digitalRead(RELAY_PIN));
  digitalWrite(RED_PIN, !digitalRead(RED_PIN));
}

BlinkerButton Button1("btn-switch");

void button1_callback(const String & state)
{
  digitalWrite(RELAY_PIN,!digitalRead(RELAY_PIN));
  digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    Blinker.vibrate();
}

void miotPowerState(const String & state)
{
    BLINKER_LOG("need set power state: ",state);
    if (state == BLINKER_CMD_OFF) {
    digitalWrite(RELAY_PIN, LOW);
    digitalWrite(RED_PIN, LOW);
        BlinkerMIOT.powerState("off");
        BlinkerMIOT.print();
    }
    else if (state == BLINKER_CMD_ON) {
        digitalWrite(RELAY_PIN, HIGH);
            digitalWrite(RED_PIN, HIGH);
        BlinkerMIOT.powerState("on");
        BlinkerMIOT.print();
    }
}

void setup() {
    Serial.begin(115200);
      Serial.println("start...");
      button.reset();//清除一下按钮状态机的状态
  button.attachClick(click);
    pinMode(RED_PIN, OUTPUT);
    digitalWrite(RED_PIN, LOW);
    pinMode(BLUE_PIN, OUTPUT);
    digitalWrite(BLUE_PIN, LOW);
    pinMode(RELAY_PIN,OUTPUT);
    digitalWrite(RELAY_PIN,LOW);
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(500);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
    delay(500);
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(500);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
    delay(500);
    Blinker.begin(auth, ssid, pswd);   
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(100);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
    delay(100);
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(100);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
    delay(100);
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(100);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
        delay(100);
    digitalWrite(RED_PIN, !digitalRead(RED_PIN));
    delay(100);
    digitalWrite(BLUE_PIN, !digitalRead(BLUE_PIN));
    Button1.attach(button1_callback);   
    BlinkerMIOT.attachPowerState(miotPowerState);
}

void loop()
{
  Blinker.run();
  button.tick();
  delay(10);
}


作者: alangxl    时间: 2022-7-25 16:50
会代码的都是大佬
作者: srw781    时间: 2022-7-25 16:56
会烧录的都是大佬
作者: 锰子    时间: 2022-7-25 17:18
膜拜大佬  手工点赞
作者: 闪耀的空白    时间: 2022-7-25 17:35
会代码的都是大佬
作者: yiguangqiang    时间: 2022-7-25 17:57
会烧录会代码的都是大佬
作者: hzw6834    时间: 2022-7-25 22:48
能看明白的都是大佬
作者: nemesis_126    时间: 2022-7-26 05:56
我也改好了,准备加个功率计进去
作者: qjt19810204    时间: 2022-7-26 08:23
什么玩意不能入大佬的手,入了就上档次了。
作者: make798    时间: 2022-7-26 08:59
会编程的都是高手。
作者: liuhaob    时间: 2022-7-26 09:00
这个太牛了
作者: xueyuking    时间: 2022-7-26 09:29
又会代码又会烧录的都是大佬
作者: zzw0912    时间: 2022-7-26 09:39
坛友修改的优化版:https://www.mydigit.cn/thread-373294-1-1.html


作者: ph3203485    时间: 2022-7-26 10:56
这个固件是怎么来的?
作者: E遥想天时    时间: 2022-8-10 13:54
官方app可以分享一下吗
作者: vip2128    时间: 2022-8-24 21:28
8266其实也不难,加个互联网平台,这些平台大多都有些应用案例,代码东拼西凑都能搞出个智能控制系统。
作者: wym258258    时间: 2022-9-5 22:38
这个固件是可以用,但是呢,从这个代码来看,没有wi fi AP配网的设置的话,如果想更换WIFI就要重新收录代码,这不太方便,但是固定在一个地方,固定一个WIFI名的话,没有问题
作者: ty_qzh    时间: 2022-9-9 14:37
官方app可以分享一下吗
作者: fukei    时间: 2022-9-13 15:07
各大神可以試下這個可以後期設定內容

作者: soma    时间: 2022-9-14 12:53
esp8266加micropython会好点想改随时可以改
作者: 366261061    时间: 2022-9-17 12:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: 格安特    时间: 2022-10-3 08:10
fukei 发表于 2022-9-13 15:07
各大神可以試下這個可以後期設定內容

这个是tasmota 选哪个模组了 哈哈 可以控制但是按纽无法用
作者: tonytcf    时间: 2022-10-4 22:36
提示没有OneButton.h文件
作者: zdkzym2008    时间: 2022-10-18 10:11
谢谢分享,正需要这个
作者: 日月征途    时间: 2022-10-18 12:25
羡慕全能型人才。
作者: fphoenix84    时间: 2022-10-20 14:18

谢谢分享,正需要这个
作者: fukei    时间: 2022-10-21 21:37
Tasmota 就這吧
[attach]1639305[/attach]
作者: 131452038075    时间: 2022-10-22 05:05
ESP8266烧录特别难,用CH340还是8266烧录器,不知道那种方式好用,前者价格便宜,后者要几十元,有精通这方面的大佬推荐一下,那种方式好用,通俗易懂!谢谢!
作者: 18675929920    时间: 2022-11-24 08:53
看起来还可以,就是有点过时了
作者: 196364    时间: 2022-12-21 01:42
大佬我的怎么烧录不进去
作者: yanghaisu    时间: 2023-1-3 14:42
感谢,正好一样的插座,不知道引脚,省了拆机测量了
作者: 1588858    时间: 2023-1-19 21:49
会代码的都是大佬
作者: whcfwm    时间: 2023-1-24 10:31
都是高手,跟着学习一下
作者: 366261061    时间: 2023-2-2 21:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: chenyixianqaz    时间: 2023-2-3 19:30
会烧录,会代码,看的懂的才是超级大佬。谢谢分享!
作者: bafjdn    时间: 2023-2-24 14:22


会编程的都是高手。
作者: brianlee    时间: 2023-2-27 13:45
竟然是这么简单的代码就行了
作者: greatfun2006    时间: 2023-6-11 17:08
看起来还可以,感谢分享!
作者: cv130    时间: 2023-7-11 22:01
现在又有卖这个插座了
作者: 纯今    时间: 2023-7-16 22:57
原创楼主大佬,这插座只有一个电感的ac-dc电源,属于什么类型电源?日规是110伏特
作者: confessor    时间: 2023-7-18 13:54
8266还是神器,比较方便。

作者: ntw002    时间: 2023-7-20 20:07
收藏备用
作者: BadGuy10836    时间: 2023-7-26 21:21
大佬6666
作者: 根根    时间: 2023-9-27 00:33
我手上有三个,也想弄一下

作者: /sun安安    时间: 2023-9-28 10:33

会烧录会代码的都是大佬
作者: coolfever    时间: 2023-9-29 17:14
能告诉我怎么把板子拆下来吗,似乎插座焊在板子上,3个爪子又和外壳黏在一起了。
作者: woshids    时间: 2023-10-17 07:56
正好手头有一个,就不需要自己查资料了。多谢啊~~
作者: 纯今    时间: 2023-11-21 12:56
格安特 发表于 2022-10-3 08:10
这个是tasmota 选哪个模组了 哈哈 可以控制但是按纽无法用

你好,请问它这个按钮,原本能实现什么功能?
作者: 格安特    时间: 2024-2-13 05:48
纯今 发表于 2023-11-21 12:56
你好,请问它这个按钮,原本能实现什么功能?

原本有什么功能我不清楚 我只刷了tasmota
作者: cj7633    时间: 2025-1-23 00:14
膜拜大佬




欢迎光临 数码之家 (https://www.mydigit.cn/) Powered by Discuz! X3.4