汽车男团 · ESP32-S3 · 466×466 圆形 AMOLED

一块圆屏
把机油压力做成仪表

自己做的车载机油压力表。读 OBD-II 的转速、水温、车速、涡轮压力,外接一个压力变送器测真实油压。 五页界面,4Hz 刷新,熄火自动深睡,装车封壳后还能无线升级。

网页一键刷机 先看看能做什么 不用装 Arduino、不用装驱动。电脑上的 Chrome / Edge 打开就能刷。

Web Flasher

插上 USB,点一下

浏览器直接写固件,全程在本机完成,不经过任何服务器。第一次刷机大约 1–2 分钟。

  1. 准备一块微雪 ESP32-S3-Touch-AMOLED-1.75,用能传数据的 USB-C 线连电脑。
  2. 点下面的按钮,在弹出的串口列表里选设备(Windows 是 COM 开头,macOS 是 cu.usbmodem 开头)。
  3. 如果连不上:按住板上的 BOOT 键不松,再点一次连接,识别到之后松开。
  4. 等进度跑完,拔掉 USB 再插上,屏幕就会亮。
这个浏览器不支持 Web Serial。
请用电脑上的 Chrome、Edge 或 Opera 打开本页。Safari、Firefox、手机浏览器都不行。
需要安全环境。
浏览器只允许 https 页面或 localhost 访问串口,请通过正式域名打开本页。

首次安装会擦除全部数据(包括 Wi-Fi 设置)。 已经装过旧版本、想保留设置的,用下面这个:

刷之前确认三件事
① 板子必须就是上面这款(别的 ESP32 屏不通用)
② 用数据线,不是纯充电线
③ 刷完第一次开机没有 Wi-Fi 设置是正常的,OTA 要自己填 SSID

五页界面

手上不用离开方向盘就能看清

触摸左右滑动切换。圆环贴屏幕边缘,数字用七段按位重绘,只有变化的位才刷新。

4.2 bar
机油压力
实时 / 报警
3200 RPM
转速
红线区变色
5.8 0-100 s
性能
加速计时
4Hz LINK OK
车辆状态
链路 / 电压 / OTA
+62 kPa
涡轮增压
VAC / BOOST

接线

只跑 OBD 的话,一根线都不用接

插上蓝牙 ELM327 适配器就能读转速、水温、车速、进气压力。 要做真实机油压力,才需要外接一个 0.5–4.5V 压力变送器和 ADS1115。

压力变送器经分压后进入 ADS1115,再经 I2C 接 ESP32 排针
信号链:变送器 0.5–4.5V → 10k/18k 分压 → ADS1115 → 软件 I2C → GPIO16/17
分压小板电路:R1 10k 串联,R2 18k 与 10nF 下地
分压小板:R1 10k、R2 18k、C 10nF(印字 103,不是 104)
ADS1115接到注意
VDD排针 Pin3 · 3V3接 5V 会烧坏 I2C 电平
GND排针 Pin2 · GND和变送器黑线共地
SDA排针 Pin8 · GPIO16软件 I2C,不占用板载总线
SCL排针 Pin6 · GPIO17—
A0分压节点不能直连变送器信号,必须分压
ADDRGND固件写死地址 0x48

车型

实测过的和没测过的

OBD-II 标准里没有车型字段,VIN 也不是所有车都支持,所以固件不做自动识别,红线等功能手动设。

车结果
斯巴鲁 BRZ / FA24转速 / 车速 / 水温 / 节气门 / 电压 / MAP 全部可用,稳定 4Hz
奔驰除机油温度(PID 5C 不提供)之外都能读,油温显示 -- 属正常
宝马 X3MAP 可读;涡轮实际增压值走 UDS 私有协议,未实现
大众高尔夫 7待补充实测数据
吉利星越 L实测可用,转速 / 水温 / 车速等常规 PID 正常
五菱星光 PHEV实测可用。插混车型纯电行驶、发动机停机时应答可能变慢,属正常
其他 2008 年后汽油车大概率可用。判断方法:能读到转速和水温就没问题

以上为实测记录。车友提交并通过审核的车型会在下方汇总显示。

车型库 · 众筹数据

你的车能读什么,交给实车来说

固件不做自动识别车型,所以这张表靠大家实测。提交后审核一下就会出现在上面, 同一款车有多个反馈时,会合并成一条。

某一页显示 -- 就是这台车不提供该项,不勾即可。

常见问题

刷之前先看这几条

刷坏了怎么办

物理 USB 口永远可用,重新刷一次就行。这个固件不是那种刷坏就变砖的东西——ESP32-S3 的 ROM 下载模式在芯片内部,除非硬件损坏,否则一定能救回来。

为什么一定要用 Chrome / Edge

网页刷机依赖浏览器提供的 Web Serial 接口,目前只有 Chromium 系桌面浏览器实现了它。Safari、Firefox 没有,手机浏览器也都不行。

刷完之后连不上怎么办

先按一下板上的 PWR 键重启。如果还不行:按住 BOOT 键插 USB,重新刷一次。串口监视器(115200)输入 s 能看到完整状态。

我的车能用吗

2008 年以后的汽油车基本都有 OBD-II。柴油车看情况,部分车型的协议不完整。最简单的判断:随便找个 ELM327 读一下,能读出转速就能用。

要拆发动机吗

不用。机油压力是从机油滤清器位置加一个转接板取压,换机油的时候顺便装,不需要动发动机本体。但涉及油路,建议找维修店施工。

为什么不自动识别车型

OBD-II 协议里没有厂牌和车型字段,VIN 要靠厂商自定义的 Mode 09 查询,很多车根本不回。做过尝试,不同品牌差异太大,不值得为这点便利增加误判风险。

能自己改固件吗

不提供源码,也不建议改。这是和机油压力报警挂钩的东西,阈值和熄火保护逻辑都是实车验证过的, 改错一个数可能表现为"偶尔误报"或"深睡电流偏大"——都是当场看不出来、但后果不小的问题。 想让它更好用,反馈数据(车型兼容性、油压实测值、异常现象)比改代码有用得多。

为什么不开源

这是装在车上、关系到发动机的东西。改过的版本一旦流出去,出了问题没法界定责任, 也容易让人误以为是官方版本。所以只发布编译好的固件,开机画面会显示版本号。 另外说明一句:ESP32 的 flash 物理上可以被读出来,所以这不是技术封锁,是授权约定。

免责声明

这是个人 DIY 作品,不是车规产品。没有做过可靠性、EMC 或功能安全认证,也没有量产一致性保证。

机油压力报警不能替代原厂仪表、机油尺检查和定期保养。传感器脏污、线束破损、接插件松动都可能导致误报或漏报。装车涉及油路改装,操作不当会造成漏油甚至发动机损坏,建议由专业维修店施工。

车载环境有高温、振动、电压瞬变等风险,作者不对任何车辆损坏、人身伤害或经济损失负责。下载、刷写、安装即表示你理解并接受全部风险。