『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 4966|回复: 27

[硬件DIY] ESP8266这破玩意为啥还没淘汰?

[复制链接]

51

主题

1341

帖子

5604

积分

论坛DIY达人

积分
5604
金钱
4263
HASS币
20
发表于 2024-1-1 20:26:41 | 显示全部楼层 |阅读模式
本帖最后由 sorrypqa 于 2024-1-1 20:33 编辑

ESP32只比它贵几块钱,IO口、功能、硬件配置、稳定性全面超越,手上的8266模块几乎没有能稳定跑半年uptime不重置的,最离谱的就是下图这种,一通电后内存不断变少,大约低于5K时,模块就会自动重启:

SNAG-2024-1-1_00001.png
固件配置如下,这么简单的配置都不能稳定跑
substitutions:
  device_name: ac-dimmer-01  #设备名称
  friendly_name: ac_dimmer_01
  led_state_pin: GPIO2 #绿色指示灯引脚
  u0txd_pin: GPIO1 #刷机用串口
  U0Rxd_pin: GPIO3

esphome:
  name: $device_name
  comment: 交流调光/调速器。esp-12F模块、DS18B20温度传感器。 #有关此节点的注释文本信息。仅用于在 UI 中显示。
#  name_add_mac_suffix: true #设备名字后面添加MAC地址

esp8266:
  board: esp01_1m
  restore_from_flash: true
preferences:
  flash_write_interval: 5min #自定义数据刷新到闪存的频率

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption: #启用API层的传输加密
    key: !secret api_key #用于加密的预共享密钥
  reboot_timeout: 0s #与客户端(如HA)失去连接多久后重启设备,秒s/分钟min/小时h,不需要此功能设置为0s

ota:
  password: "e52d77214d5c74f9a9b3d44ee2fc678a"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  fast_connect: true #快速连接,如果SSID是隐藏的,必须设置为true
  reboot_timeout: 0s #WiFi离线多久后重启设备,秒s/分钟min/小时h,不需要此功能设置为0s

status_led: #状态指示灯
  pin:
    number: $led_state_pin
#    inverted: true #反转输出状态

captive_portal:

dallas:
  - pin: GPIO14
    update_interval: 60s
    
#i2c:
#  - id: bh1750_i2c
#    sda: $u0txd_pin
#    scl: $U0Rxd_pin
#    scan: true #启动时搜索I²C地址空间    

output:
  - platform: ac_dimmer
    id: dimmer1
    gate_pin: GPIO13 #用于控制可控硅的引脚。
#    inverted: true
    method: leading pulse
    zero_cross_pin: #用于感测交流过零事件的引脚
      number: GPIO12
      mode:
        input: true
#      inverted: true

light:
  - platform: monochromatic
    output: dimmer1
    name: "${friendly_name}_Light"
    id: "${friendly_name}_Light"
    restore_mode: RESTORE_DEFAULT_ON #
    on_turn_on:
      then:
        - light.turn_on:
            id: "${friendly_name}_Light"
            brightness: 10% #默认亮度

switch:
  - platform: restart #重启开关
    name: "${friendly_name}_Restart"
    icon: mdi:car-esp #自定义图标

  - platform: safe_mode
    name: "${friendly_name}_SafeMode"

  - platform: factory_reset #恢复出厂设置
    name: ${friendly_name}_factory
    
sensor:
  - platform: uptime
    id: ${friendly_name}_raw_up_time
    update_interval: 15min
    internal: true
    on_raw_value:
      then:
       - text_sensor.template.publish:
           id: ${friendly_name}_uptime_human
           state: !lambda |-
             int seconds = round(id(${friendly_name}_raw_up_time).raw_state);
             int days = seconds / (24 * 3600);
             seconds = seconds % (24 * 3600);
             int hours = seconds / 3600;
             seconds = seconds % 3600;
             int minutes = seconds /  60;
             seconds = seconds % 60;
             return (
               (days ? String(days) + "d " : "") +
               (hours ? String(hours) + "h " : "") +
               (minutes ? String(minutes) + "m " : "") +
               (String(seconds) + "s")
             ).c_str();
    
  - platform: wifi_signal #WiFi信号强度
    name: "${friendly_name}_WiFi_Signal"
    icon: mdi:signal #自定义图标
    update_interval: 60s

  - platform: dallas
    address: 0x6d00000032bb9628
    name: "${friendly_name}_Temperature"
    
#  - platform: bh1750
#    name: "${friendly_name}_Illuminance"
#    i2c_id: bh1750_i2c
#    address: 0x23
#    update_interval: 30s

  - platform: template
    name: "${friendly_name}_CpuFreq"
    id: "${friendly_name}_CpuFreq"
    icon: mdi:cpu-32-bit #自定义图标
    lambda: |-
      return ESP.getCpuFreqMHz();
    unit_of_measurement: "MHz"
    update_interval: 10s

  - platform: template
    name: "${friendly_name}_FreeMemory"
    id: "${friendly_name}_FreeMemory"
    icon: mdi:memory #自定义图标
    lambda: |-
      return ESP.getFreeHeap();
    filters:
      - multiply: 0.001
    unit_of_measurement: "KB"
    update_interval: 10s

text_sensor:
  - platform: template
    name: '${friendly_name}_Uptime'
    id: ${friendly_name}_uptime_human
    icon: mdi:clock-start #自定义图标

  - platform: wifi_info
    ip_address:
      name: ${friendly_name}_IP #IP地址
      icon: mdi:ip-network #自定义图标
    ssid:
      name: ${friendly_name}_SSID
      icon: mdi:wifi #自定义图标
    mac_address:
      name: ${friendly_name}_mac
      icon: "mdi:wifi-marker" #自定义图标    



手上的esp32除了停电或ota固件,全部能24x7不间断长年运行而不会出现重启

SNAG-2024-1-1_00002.png

SNAG-2024-1-1_00003.png


回复

使用道具 举报

38

主题

405

帖子

4324

积分

元老级技术达人

积分
4324
金钱
3864
HASS币
250
发表于 2024-1-1 20:57:31 | 显示全部楼层
1704113762895.png
比esp32模块差一点,但是也没有你说得这么夸张吧。2周了也没出现问题,
回复

使用道具 举报

51

主题

1341

帖子

5604

积分

论坛DIY达人

积分
5604
金钱
4263
HASS币
20
 楼主| 发表于 2024-1-1 21:11:55 | 显示全部楼层
trz0332 发表于 2024-1-1 20:57
比esp32模块差一点,但是也没有你说得这么夸张吧。2周了也没出现问题,

我说的不是2周,是半年哦!呵呵!
回复

使用道具 举报

146

主题

2268

帖子

7008

积分

元老级技术达人

积分
7008
金钱
4735
HASS币
30
发表于 2024-1-1 21:25:36 | 显示全部楼层
应该8266只能处理简单任务的,可以理解成单核
回复

使用道具 举报

51

主题

1341

帖子

5604

积分

论坛DIY达人

积分
5604
金钱
4263
HASS币
20
 楼主| 发表于 2024-1-1 21:43:36 | 显示全部楼层
bugensui 发表于 2024-1-1 21:25
应该8266只能处理简单任务的,可以理解成单核

应该出比ESP32更高级的·型号,起码蓝牙是独立的,不要与wifi抢资源
回复

使用道具 举报

146

主题

2268

帖子

7008

积分

元老级技术达人

积分
7008
金钱
4735
HASS币
30
发表于 2024-1-1 21:53:08 | 显示全部楼层
sorrypqa 发表于 2024-1-1 21:43
应该出比ESP32更高级的·型号,起码蓝牙是独立的,不要与wifi抢资源

双wifi不知道可以行不?2.4G专门给蓝牙做,,5G走其他和基础联网服务
回复

使用道具 举报

51

主题

1341

帖子

5604

积分

论坛DIY达人

积分
5604
金钱
4263
HASS币
20
 楼主| 发表于 2024-1-2 06:31:55 | 显示全部楼层
bugensui 发表于 2024-1-1 21:53
双wifi不知道可以行不?2.4G专门给蓝牙做,,5G走其他和基础联网服务

用5G的话,大场所wifi覆盖成本会高不少
回复

使用道具 举报

10

主题

184

帖子

1822

积分

论坛技术达人

积分
1822
金钱
1633
HASS币
20
发表于 2024-1-2 08:40:27 | 显示全部楼层
挺稳定的啊
10C1ECBE-E086-48EF-9D51-2D29537774C6.png
回复

使用道具 举报

40

主题

2176

帖子

8288

积分

元老级技术达人

积分
8288
金钱
6097
HASS币
110
发表于 2024-1-2 09:03:59 | 显示全部楼层
这明显是内存泄漏看不出来吗 呵呵
esp32和esp8266就不是替代关系,怎么可能被淘汰?
要说淘汰,也得是8266的升级款8285去淘汰8266
民用品考虑到出货量、焊接难度、测试工序、出货量等等因素,别说几块的差价了,就是几毛、几分都要算!
小米大方后期出厂的不就阉割了限位开关、光线传感器吗?通过软件去弥补功能。然而这个摄像头出货量才有多大?
基于8266设计的产品有多少就不说了吧

别说贵几块钱了,就是价格一样也不会被淘汰!
回复

使用道具 举报

51

主题

1341

帖子

5604

积分

论坛DIY达人

积分
5604
金钱
4263
HASS币
20
 楼主| 发表于 2024-1-2 09:09:25 | 显示全部楼层
ghostist 发表于 2024-1-2 09:03
这明显是内存泄漏看不出来吗 呵呵
esp32和esp8266就不是替代关系,怎么可能被淘汰?
要说淘汰,也得是8266 ...

上面的配置都是常用的,想不出为啥就内存泄漏了....感觉新版本的ESPHome让ESP8266特别不稳定,2023.3之前的没那么多怪现象
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 18:48 , Processed in 0.132683 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表