0%

1.故障背景

  • 设备型号:小米 L43M5-ES
  • 故障现象
    • 正常观看过程中突然黑屏;
    • 重启后,开机前几秒可看到模糊图像,随后立刻黑屏;
    • 屏幕背光正常点亮,但无有效图像显示。

2.初步故障判断

根据现象可以初步排除:

  • 主板完全损坏(有短暂图像)
  • 背光系统故障(背光正常)
  • 电源板整体失效(可正常开机)

重点怀疑方向

  • T-CON 板供电或信号异常
  • 液晶屏边缘 COF(Chip On Film)驱动异常或短路

3.拆机与结构说明

3.1 屏幕显示系统结构

  • T-CON 板如下图:时序控制与信号分配;
    T-CON板

  • COF:将信号直接驱动到液晶像素(不可拆卸、不可单独更换)。


4.关键故障定位过程

4.1 排线单独测试法(关键步骤)

操作方法:

  • 断开 T-CON → 屏幕 的其中一条排线;
  • 开机观察显示效果;
  • 左右两条分别测试。

测试结果:

测试方式 显示情况
只接排线 A 半屏显示正常
只接排线 B 黑屏 / 花屏复现
两条都接 整屏异常

结论

有问题的那一侧排线所对应的 COF 驱动区域存在异常或短路


5.COF 简要说明(关键知识点)

  • COF(Chip On Film) 是封装在柔性薄膜上的驱动芯片;
  • 通过热压方式直接连接在液晶玻璃边缘;
  • 一旦损坏,无法用电烙铁维修
  • 常见表现:
    • 半屏异常
    • 插上就黑屏
    • 拔掉一侧反而恢复显示

6.实际修复方案:断 Y(信号隔离)法

⚠️ 原理说明

当某一侧 COF 内部短路或异常输出时,会拖垮整个 T-CON 的信号系统。

解决思路

隔离异常信号线,让正常部分继续工作。


6.1 实际操作步骤

工具准备:

  • 绝缘胶带(Kapton 胶带最佳)
  • 镊子
  • 剪刀
  • 放大观察(可选)

操作方法:

  1. 找到 有问题那一侧的 T-CON → 屏幕排线
  2. 在排线 插头端,对 第 1 ~ 14 Pin 进行胶带屏蔽
  3. 确保胶带只遮挡触点,不影响插入
  4. 插回排线,通电测试

6.2修复结果

  • ✅ 屏幕显示恢复正常
  • ✅ 背光、亮度、画面稳定
  • ⚠️ 理论上属于“非官方修复”,但可长期使用

七、结果分析

项目 结论
故障根因 屏幕一侧 COF 驱动异常
T-CON 本体 基本正常
修复方式 断 Y / 屏蔽信号
成本 0 元
风险 可能未来出现其他线条

八、安全与使用建议

  • ❗ 不建议带电插拔排线;
  • ❗ 避免高温(COF 对温度非常敏感);
  • ✔ 若长期使用无异常,可直接继续使用;
  • ❌ 若追求完美画质,只能更换整块屏幕(不经济)。

九、经验总结

当液晶电视出现“拔一边排线反而恢复显示”时,
80% 以上是 COF 驱动问题,而不是主板或 T-CON 故障。

“断 Y 修复法”是维修圈中非常成熟、低成本、成功率高的一种抢救方案。


消息通知系统搭建教程

1. 项目介绍

一个简易的开源消息通知系统,支持企业微信,telegram,邮件等

1.1功能支持

  • 通道设置
  • 用户管理
  • 系统状态
  • 代理设置
  • Github登陆
  • 外部日志

1.2 通道支持

  • 企业微信应用消息
  • 电报机器人消息
  • SMTP邮箱消息
  • BARK
  • 钉钉群机器人
  • 飞书群机器人
  • 自定义

2. 搭建方法

2.1 前置条件

  • 一台服务器
  • 域名
  • Cloudflare账户(可选,但推荐)

2.2 基础环境准备

  • 1.安装docker
    1
    2
    3
    4
    5
    6
    7
    8
    # 更新系统并安装 Docker
    sudo apt update
    sudo apt install -y docker.io
    # 设置 Docker 开机启动并启动服务
    sudo systemctl enable docker
    sudo systemctl start docker
    # 查看 Docker 版本确认安装成功
    docker --version
  • 2.用docker安装inotify发布版
    1
    2
    3
    docker run --name=inotify -d -p 8000:80 -v inotify_data:/inotify_data --restart=always xpnas/inotify:latest
    # 查看容器状态
    docker ps

2.3 Nginx 反向代理配置

  • 创建站点配置文件
    1
    sudo nano /etc/nginx/sites-available/inotify
  • 内容如下(示例域名)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    server {
    listen 80;
    server_name fw.example.com;

    location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }
  • 启用站点
    1
    2
    3
    4
    5
    6
    sudo ln -s /etc/nginx/sites-available/sms-forwarder \
    /etc/nginx/sites-enabled/
    # 测试配置是否正确
    sudo nginx -t
    # 重载 Nginx 配置
    sudo systemctl reload nginx
  • 用Certbot进行https证书配置
    1
    2
    sudo apt install -y certbot python3-certbot-nginx
    sudo certbot --nginx -d fw.example.com

2.4 github配置

  • 进入Github/Settings/Developer settings/OAuth Apps创建应用
    * 记录Client ID,创建Client secrets
    * Authorization callback URL回调地址填写https://{您的域名}/api/oauth/githubLogin

3. 踩坑记录

3.1 问题现象

  • 旧域名过期
  • 新域名访问后:
    * 页面跳转到域名下其他服务
    * 或直接 502 Bad Gateway
    * GitHub OAuth 登录跳转到旧域名

3.2 502 Bad Gateway 的真实原因

  • 通过排查发现”docker ps -a”发现容器服务没有启动
  • 解决方法:启动服务并设置自动重启
    1
    2
    docker start inotify
    docker update --restart unless-stopped inotify

3.3 GitHub OAuth 跳转旧域名问题

  • 表现为:
    1
    2
    3
    4
    {
    "code": 401,
    "message": "用户被禁用"
    }
  • 或者是跳转到旧域名登陆连接
  • 原因是GitHub OAuth App 回调地址已更新,服务后台仍保留旧 OAuth 配置
  • 解决方法:直接在短信转发服务后台删除旧 GitHub OAuth 配置(该配置并未写死在文件中,而是存储在服务内部数据中。)

4 常用 Docker 排错命令汇总

1
2
3
4
5
docker ps -a                 # 查看所有容器
docker start sms-forwarder # 启动容器
docker logs sms-forwarder # 查看日志
docker exec -it sms-forwarder bash # 进入容器
ss -lntp # 查看端口监听

如果仍有问题,可邮箱联系shumei反馈。
特别感谢!!!xpnas大佬
原创(https://github.com/xpnas/inotify)

短信转发工具教程

1. 项目介绍

本工具用于将sim卡接收到的短信转发到指定的通知渠道,如企业微信、电报机器人、邮件、BARK 等。它支持多种转发方式(短信接收端也可以通过短信控制sim卡发送短信),并提供灵活的规则配置,适用于个人及企业使用。

2. 安装与配置

2.1 前置条件

  • 合宙ESP32-C3开发板简约款
  • 合宙Air780E开发板
  • 焊接工具与必要的排针、排母
  • 接收短信的sim卡(中国电信不支持,电信短信走的cdma2000/volte air780不支持volte,cdma2000更不用说了,基本没什么模组会支持)
  • 2.4G Hz的wifi,用来联网
  • 用来推送短信的服务

2.2 硬件连接

  • 由于Air780E需要按下开机键才能开机,而我们需要上电即开机,所以可以将POW按钮与J227元件中间的焊盘短接,实现Air780E开发板上电即开机的功能
  • 接着,我们需要将Air780E开发板与ESP32-C3开发板的电源引脚相连(5V与GND)、将ESP32-C3开发板的UART1与Air780E开发板的MAIN_UART相连,引脚如下(两组的实际位置是相同的)

2.3 刷入固件与脚本

2.4 修改配置

  • 我们需要修改脚本中的notify.lua,按注释要求改为自己的逻辑:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    --你的wifi名称和密码,仅2.4G
    local wifiName = ""
    local wifiPasswd = ""

    --短信接收指令的标记(密码)
    --[[
    目前支持命令([cmdTag]表示你的tag)
    C[cmdTag]REBOOT:重启
    C[cmdTag]SEND[手机号][空格][短信内容]:主动发短信
    ]]
    local cmdTag = "1234"

    --这里默认用的是shumei提供的推送服务,无使用限制
    --官网:https://mei-mei.icu/ 点击GitHub图标登陆即可
    --支持邮件/企业微信/钉钉/飞书/电报/IOS Bark

    --使用哪个推送服务
    --可选:meiemi/serverChan/pushover
    local useServer = "meimei"

    --shuemi提供的推送服务 https://mei-mei.icu/ ,用不到可留空
    --这里填.send前的字符串就好了
    --如:https://mei-mei.icu/1426F55V965942ABBF153A38B9CD04A3.send/{title}/{data} 填入 1426F55V965942ABBF153A38B9CD04A3
    local meimeiPush = ""
    --server酱的配置,用不到可留空,免费用户每天仅可发送五条推送消息
    --server酱的SendKey,如果你用的是这个就需要填一个
    --https://sct.ftqq.com/sendkey 申请一个
    local serverKey = ""

    --pushover配置,用不到可留空
    local pushoverApiToken = ""
    local pushoverUserKey = ""

3. 使用指南

  • 设备连上USB上电后可以在合宙的串口工具上看到打印的日志,正常连上wifi与基站,短信正常推送
  • 使用cmdTag(命令标记)来向设备发送特定格式的短信,让设备执行命令,比如重启或者发送短信
    • 重启’C1234REBOOT’
    • 主动发送短信’C1234SEND[手机号] [短信内容]’,例:’C1234SEND13800138000 你好,这是一条测试短信’

4. 故障排查

4.1 串口打印出错

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[2023-03-04 17:26:10.440] ESP-ROM:esp32c3-api1-20210207
[2023-03-04 17:26:10.440] Build:Feb 7 2021
[2023-03-04 17:26:10.440] rst:0x15 (USB_UART_CHIP_RESET),boot:0xc (SPI_FAST_FLASH_BOOT)
[2023-03-04 17:26:10.440] Saved PC:0x4038b012
[2023-03-04 17:26:10.440] SPIWP:0xee
[2023-03-04 17:26:10.440] mode:DIO, clock div:1
[2023-03-04 17:26:10.440] load:0x3fcd5820,len:0xed4
[2023-03-04 17:26:10.440] load:0x403cc710,len:0x740
[2023-03-04 17:26:10.440] load:0x403ce710,len:0x2b74
[2023-03-04 17:26:10.440] entry 0x403cc710
[2023-03-04 17:26:10.815] I/main LuatOS@ESP32C3 base 22.12 bsp V1003 32bit
[2023-03-04 17:26:10.815] I/main ROM Build: Feb 16 2023 10:44:34
[2023-03-04 17:26:10.815] I/fs script zone as luadb
[2023-03-04 17:26:10.815] D/main loadlibs luavm 131064 13216 13216
[2023-03-04 17:26:10.815] D/main loadlibs sys 124600 53572 53572
[2023-03-04 17:26:10.815] I/user.main sms_forwarding 1.0.0
[2023-03-04 17:26:10.862] E (489) task_wdt: esp_task_wdt_init(593): TWDT already initialized
[2023-03-04 17:26:10.909] I/user.air780 sync at
[2023-03-04 17:26:10.909] I/user.air780 sent at AT
[2023-03-04 17:26:11.112] I/user.air780 sent at AT
[2023-03-04 17:26:11.315] I/user.air780 sent at AT
  • 因为两块单板接反了,上电后将esp32的flash芯片烧坏,更换flash(MX25L3233FM2I-08G)后恢复正常

4.2 无法连上推送服务

  • 特殊时期GFW可能会拦截上传到推送服务器的请求(无法确定,2025年两会期间推送服务网站无法打开(页面空白),但luaos的推送可以进行,shumei的服务无法正常推送(后面发现可能和DNS有关,但当时经验不足,已无法验证了))
  • Cloudflare的DNS代理打开一段时间后设备无法正常连上推送服务器,与tls证书无关

4.3 短信未能转发

  • 由于HTTP请求中的短信内容包含了特殊字符(如 +, ?, &, # 等),这些字符未被正确URL编码,导致HTTP请求格式异常,从而返回’http 400’,正常应该返回 200
    • 改进URL编码,短信正常转(否则包含特殊字符的短信无法被转发,也不会报错)
      1
      2
      3
      4
      5
      6
      7
      8
      function urlencode(str)
      return (str:gsub("([^%w%.%- ])", function(c)
      return string.format("%%%02X", string.byte(c))
      end):gsub(" ", "%%20")) -- 空格特殊处理为 %20
      end
      --在notify.lua中调用函数urlencode
      local encoded_data = urlencode(data)
      local url = "https://mei-mei.icu/" .. meimeiPush .. ".send/sms" .. sms[1] .. "/" .. encoded_data

如果仍有问题,可邮箱联系shumei反馈。
特别感谢!!!chenxu大佬
原创(https://www.chenxublog.com/2022/10/28/19-9-sms-forwarding-air780e-esp32c3.html)

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment