An ESP32 based plane radar for my desk
An ESP32 based plane radar for my desk
基于 ESP32 的桌面飞机雷达
This project made for a perfect lazy Saturday unwind, after a busy week giving a talk at Devrelcon in NYC. Makerworld had this thing as one of their featured models about a week or two ago, and the parts came in while I was away.
在纽约 Devrelcon 发表演讲并度过忙碌的一周后,这个项目成为了我周六放松的完美选择。大约一两周前,Makerworld 将此项目列为精选模型之一,而我外出时零件刚好送达。
Plane radar is a neat little project that turns an ESP32-C3 and a 1.28-inch round display into a live aircraft radar. It pulls nearby ADS-B traffic, plots each aircraft by distance and bearing, and shows the details directly on the screen. It was an easy build, although it did require a little soldering. I always enjoy doing that as it reminds me of my days building racing drones. Thin, silicone based wires made quick work of the cabling. And after about 15 minutes, we were ready to go.
“飞机雷达”是一个精巧的小项目,它将 ESP32-C3 和一块 1.28 英寸圆形显示屏变成了一个实时飞机雷达。它能获取附近的 ADS-B 航空交通数据,根据距离和方位绘制每架飞机的位置,并直接在屏幕上显示详细信息。这个项目的制作过程很简单,尽管需要一点焊接工作。我一直很享受焊接,因为它让我想起以前组装竞速无人机的日子。使用细硅胶线让接线工作变得非常迅速,大约 15 分钟后,一切就准备就绪了。
It is insanely easy to flash firmwares to a fresh esp32 these days using the browser-based ESPHome web flashing tool. Under 30s and you’re done.
如今,使用基于浏览器的 ESPHome 网络刷机工具给全新的 ESP32 烧录固件简直易如反掌。不到 30 秒即可完成。
A quick note about the 3d model: The original model was featured on Makerworld, because it looks great. Reality though was, in practice, it’s not actually that great. Unfortunately the tolerances are just too tight to be usable with the batch of boards I got. So I’m likely going to model my own replacement at some point, but for now I ended up printing this model instead.
关于 3D 模型的一点说明:原始模型曾在 Makerworld 上被精选,因为它看起来很棒。但现实情况是,在实际操作中,它并没有那么好用。遗憾的是,对于我手头这批开发板来说,它的公差太紧了,无法使用。所以我可能会在某个时候自己建模设计一个替代品,但目前我最终打印了另一个模型来代替。
Customising the firmware: I’ve spent today improving my fork of ESP32 Plane Radar project, with the help of pure vibes. The biggest improvement is proper flight context. Where the data is available, aircraft now show their origin and destination instead of just their tail number, with the callsign used as a fallback. Aircraft types are also more descriptive, something like B737-800 rather than simply B737.
固件定制:今天我花时间改进了我的 ESP32 Plane Radar 项目分支,全凭感觉行事。最大的改进是增加了完整的飞行背景信息。在数据可用的情况下,飞机现在会显示起飞地和目的地,而不仅仅是尾号,并以呼号作为备选。机型描述也更加详细,例如显示 B737-800 而不仅仅是 B737。
I added local weather, temperature, humidity, time and date as well. The web interface can now modify coordinates after initial setup. Display options can now be changed without resetting the Wi-Fi configuration, and there are controls for units, runways, weather, temperature format and 12/24-hour time. Text is 10% larger by default, with a persistent 80–130% slider for adjusting it.
我还添加了当地天气、温度、湿度、时间和日期显示。现在的网页界面支持在初始设置后修改坐标。显示选项无需重置 Wi-Fi 配置即可更改,并增加了对单位、跑道、天气、温度格式和 12/24 小时制的控制。默认字体大小增加了 10%,并提供了一个 80%–130% 的滑块用于实时调整。
Finally, the firmware now supports authenticated OTA updates, so future builds can be installed through the browser instead of connecting the board over USB. This is a bit like how ESPHome applies firmware updates. Compile the binary on your local laptop and then upload it to the ESP32 wirelessly. Next up might be porting it to a larger display, and designing a more forgiving 3D printed enclosure for it.
最后,该固件现在支持带身份验证的 OTA 更新,因此未来的版本可以通过浏览器安装,而无需通过 USB 连接开发板。这有点像 ESPHome 应用固件更新的方式:在本地笔记本电脑上编译二进制文件,然后无线上传到 ESP32。接下来的计划可能是将其移植到更大的显示屏上,并为其设计一个容错率更高的 3D 打印外壳。