diff --git a/README.md b/README.md index 6d0ff23..19323a1 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,38 @@ + +> [!NOTE] +> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。 +> [English](./README.en.md) · [原始项目](https://github.com/AnthonySturdy/micro-radar) · [上游 README](https://github.com/AnthonySturdy/micro-radar/blob/HEAD/README.md) +> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。 +

📡 Micro Radar

- a tiny open-source flight radar for your desk + 一款适合摆在桌面上的微型开源飞行雷达

drawing

- PREREQUISITES - ASSEMBLY - USAGE - FAQ + 前置条件 - 组装 - 使用 - 常见问题

-## Prerequisites +## 前置条件 -At the core of this project is the ESP32-C3 module with an integrated 240x240 IPS screen. No soldering required. The module does all the heavy lifting. +本项目的核心是集成了 240x240 IPS 屏幕的 ESP32-C3 模块。无需焊接。模块承担了大部分繁重工作。 -I used dark grey PLA filament for the print, but any colour will work just fine. For the lens (optional but recommended), you'll need clear-drying epoxy to secure it (not super glue, which will fog up the lens. Ask me how I know.) +打印我使用的是深灰色 PLA 线材,但任何颜色都可以。对于镜片(可选但推荐),你需要用透明干燥的环氧树脂来固定(不要用速干胶,它会让镜片起雾。问我怎么知道的。) -### Tools you'll need +### 所需工具 -- Small screwdriver (for M2 screws) -- Soldering iron (for setting the threaded inserts) +- 小螺丝刀(用于 M2 螺丝) +- 电烙铁(用于安装热熔螺母) -Set up a clean, organised workspace before you start. You'll be handling small components and epoxy, so a dedicated area helps. Keep a damp cloth nearby for cleaning if needed, and ensure your soldering iron has adequate ventilation. +开始前请搭建一个干净、整洁的工作空间。你需要处理小组件和环氧树脂,因此专用区域很有帮助。手边放一块湿布以便需要时清洁,并确保电烙铁通风良好。 -### Shopping List +### 采购清单 -Everything you need is below. I've linked products I used and recommend for ease of build, though alternatives exist on Amazon and elsewhere. If you deviate from this hardware, you may need to modify the enclosure and/or code. +下面是你需要的一切。我链接了我使用并推荐的产品,以便更轻松完成组装,不过 Amazon 等地也有替代品。如果你偏离这套硬件,可能需要修改外壳和/或代码。 - [ ] [1.28" Round GC9A01 240x240 IPS Display Module with ESP32-C3 (no-touch)](https://www.aliexpress.com/item/1005008482665220.html) - [ ] [USB-C Ribbon Extension Cable (5cm, CMUP-CFPCB-BK)](https://www.aliexpress.com/item/1005005371248824.html) @@ -34,194 +40,194 @@ Everything you need is below. I've linked products I used and recommend for ease - [ ] [32.5mm Round Mineral Glass Lens (optional, recommended)](https://www.aliexpress.com/item/1005004783554496.html) - [ ] [Gorilla Epoxy (necessary for fitting lens, useful anyway)](https://www.amazon.co.uk/Gorilla-Glue-25ml-Epoxy/dp/B009NQQJFC) -### Accounts / API +### 账户 / API -This project uses OpenSky's API for retrieving flight data. +本项目使用 OpenSky 的 API 获取航班数据。 -I highly recommend making an account, as it's free, and allows the radar to make many more requests per day (400 -> 4000), which makes the live view much more accurate. However, it isn't necessary if you prefer. +我强烈建议注册账户,因为它是免费的,并且能让雷达每天发出更多请求(400 -> 4000),从而使实时视图更加准确。不过如果你愿意,这不是必须的。 -You can sign up [here](https://opensky-network.org), or search "OpenSky". +你可以[在此](https://opensky-network.org),)注册,或搜索 "OpenSky"。 -Further info on what to do with the account is in the usage section. +有关账户后续操作的更多信息,请参阅使用部分。 -## Assembly +## 组装 -Once you've got all the parts, assembly typically takes 1-2 hours (excluding print time). +备齐所有零件后,组装通常需要 1-2 小时(不含打印时间)。 -**I strongly recommend reading the [Usage](#usage) section before you start assembly.** It'll help with troubleshooting if anything goes wrong. You might want to test the firmware and your hardware before closing everything up. +**我强烈建议在开始组装前阅读[使用](#usage)部分。** 如果出现问题,这有助于排查故障。你可能想在完全封闭之前测试固件和硬件。 -### Step 1: 3D Print +### 步骤 1:3D 打印 FFCBBECA-6165-4138-8C84-16AB375511A2_1_105_c -Print all four STLs from `./hardware/stl/`: +从 `./hardware/stl/` 打印全部四个 STL 文件: -- Main enclosure -- Front plate -- Bezel -- 2 spacers +- 主外壳 +- 前面板 +- 边框 +- 2 个垫片 -### Step 2: Heat-set Threaded Inserts +### 步骤 2:热熔螺母 -**You'll need:** Soldering iron, M2 threaded inserts +**你需要:** 电烙铁、M2 热熔螺母 -Start with the front plate: insert 2mm M2 threaded inserts into the larger holes using the soldering iron. +从前面板开始:用电烙铁将 2mm M2 热熔螺母压入较大的孔中。 IMG_7882 -Next, the two spacers. These might warp slightly, that's fine. Insert 6mm M2 inserts into each. +接下来是两个垫片。它们可能会轻微翘曲,没关系。在每个垫片中压入 6mm M2 螺母。 IMG_7887 -Finally, the main enclosure. Insert 5mm M2 inserts. +最后是主外壳。压入 5mm M2 螺母。 IMG_7891 -Et voilà. +大功告成。 IMG_7896 -### Step 3 (Optional): Fitting the Lens +### 步骤 3(可选):安装镜片 IMG_7902 -**You'll need:** Clear-drying epoxy, small applicator (match or cocktail stick works) +**你需要:** 透明干燥的环氧树脂、小型涂抹工具(火柴或鸡尾酒搅拌棒都可以) -This is the fiddliest bit. Keep it neat and you'll avoid frustration: +这是最费劲的环节。保持整洁可避免抓狂: -- Apply epoxy to the front plate, not the lens -- Lower the front plate onto the lens (easier to manage excess epoxy) -- Have a cleaner ready for the edges (I used nail polish remover, your mileage may vary) -- Less is more with epoxy -- Work on a surface that won't bond to epoxy +- 将环氧树脂涂在前面板上,而不是镜片上 +- 将前面板降低到镜片上(更容易处理多余的环氧树脂) +- 准备好边缘清洁剂(我用了洗甲水,效果因人而异) +- 环氧树脂少即是多 +- 在不会与环氧树脂粘连的表面上操作 IMG_7911 -Let the epoxy cure according to its label before moving on. +按照标签说明让环氧树脂固化后再继续。 -### Step 4: Bezel +### 步骤 4:边框 -**You'll need:** 2x5mm M2 screws, 2x10mm M2 screws +**你需要:** 2x5mm M2 螺丝、2x10mm M2 螺丝 -Secure the bezel to the front plate using 2x5mm M2 screws through the threaded inserts you added earlier. +使用 2x5mm M2 螺丝穿过先前安装的热熔螺母,将边框固定到前面板上。 IMG_7914 -Screw 2x10mm M2 screws through the remaining two holes. They should protrude from the back. +将 2x10mm M2 螺丝拧入剩余两个孔中。它们应从背面凸出。 IMG_7915 -Peel the protective film off the screen and position it over the lens. The screws you just inserted will guide the display into place. +撕下屏幕保护膜,将其对准镜片放置。刚插入的螺丝会引导显示屏就位。 -Before clamping it down with the spacers, **make sure the antenna is attached to the module**. Press it down firmly onto the flat surface until it clicks. Orientation doesn't matter, but you do need this connection otherwise you won't get any WiFi signal. +在将垫片夹紧之前,**确保天线已连接到模块**。将其用力按在平整表面直至咔哒一声。方向无关紧要,但必须有此连接,否则无法获得 WiFi 信号。 IMG_7917 IMG_7920 -Now screw the spacers into those protruding screws to clamp the module in place. I recommend keeping the board plugged in at this point to help with alignment. Don't use much force, too much pressure will stress the screen. +现在将垫片拧到那些凸出的螺丝上,以夹紧模块。我建议此时保持开发板插电,以便对齐。不要用力过猛,压力过大可能会损坏屏幕。 -Once you're happy with the alignment, you can add a small amount of epoxy around the module to lock it in place permanently (optional, but recommended if you're happy with the build). +对齐满意后,可以在模块周围涂少量环氧树脂以永久固定(可选,但如果你对组装效果满意,建议这样做)。 -### Step 5: Final Assembly +### 步骤 5:最终组装 -**You'll need:** USB-C ribbon extension cable, 4x7mm M2 screws, optional rubber feet +**你需要:** USB-C 扁带延长线、4x7mm M2 螺丝、可选橡胶脚垫 -Attach the USB-C ribbon cable to the case with the provided nuts and bolts. +使用随附的螺母和螺栓将 USB-C 扁带线缆固定到外壳上。 IMG_7921 IMG_7923 -If you like, remove the supports from the bottom and insert rubber feet. +如果需要,移除底部的支撑结构并安装橡胶脚垫。 IMG_7924 -Plug in the board, then attach the front plate using 4x7mm M2 screws. +插入开发板,然后用 4x7mm M2 螺丝安装前面板。 IMG_7925 -Done! +完成! IMG_7930 -## Usage +## 使用 -### Flashing the Firmware +### 刷写固件 -You'll need [VS Code](https://code.visualstudio.com/) with the [PlatformIO IDE extension](https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide) installed. Once installed, restart VS Code, open the repository folder, and dependencies will pull in automatically. +你需要安装 [VS Code](https://code.visualstudio.com/) 以及 [PlatformIO IDE 扩展](https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide)。安装完成后,重启 VS Code,打开仓库文件夹,依赖项会自动拉取。 -Plug the board in via USB-C, then hit the upload button (→) in the bottom status bar. If the board doesn't reboot with the new firmware automatically, hold the BOOT button on the back and press RESET once, then release BOOT. +通过 USB-C 连接开发板,然后点击底部状态栏中的上传按钮(→)。如果开发板没有自动重启并加载新固件,请按住背面的 BOOT 按钮,按一次 RESET,然后松开 BOOT。 -The board should auto-detect, but if you hit an upload failure, check that the correct board is selected in the status bar. If it still won't upload, try: +开发板应能自动检测,但如果上传失败,请检查状态栏中是否选择了正确的开发板。如果仍然无法上传,请尝试: -- Disconnect and reconnect the USB cable -- Check that your cable supports data transfer (some USB-C cables are charge-only) -- Try a different USB port on your computer +- 断开并重新连接 USB 线 +- 确认线缆支持数据传输(部分 USB-C 线仅支持充电) +- 尝试电脑上的其他 USB 端口 -Read more about PlatformIO [here](https://docs.platformio.org/en/latest/). +在[此处](https://docs.platformio.org/en/latest/).进一步了解 PlatformIO -### First Boot +### 首次启动 -On first boot, the radar broadcasts a WiFi hotspot called `MicroRadar-Setup`. Connect to it from your phone or laptop and a configuration page will appear automatically (or go to your browser if it doesn't). Enter your WiFi credentials and hit save. The board will restart and connect to your network. +首次启动时,雷达会广播名为 `MicroRadar-Setup` 的 WiFi 热点。用手机或笔记本电脑连接后,配置页面会自动弹出(若没有,请手动打开浏览器访问)。输入 WiFi 凭据并点击保存。开发板将重启并接入你的网络。 -If the hotspot doesn't appear straight away, give it a moment. If it still hasn't appeared after 30 seconds, exit the WiFi settings on your device and go back in to force a refresh. It'll usually show up then. +若热点未立即出现,请稍等片刻。若 30 秒后仍未出现,请退出设备上的 WiFi 设置再重新进入以强制刷新,通常此时就会显示。 -### Configuration +### 配置 -Once connected to your network, the radar config is accessible at [http://microradar.local](http://microradar.local) from any device on the same network. +接入网络后,同一局域网内的任意设备均可通过 [http://microradar.local](http://microradar.local) 访问雷达配置。 -Here you can set: +在此可设置: -- **Location** (latitude and longitude): the centre point of your radar -- **Radar radius**: how wide the scan extends (in degrees, 2 degrees is the limit to avoid rate limiting) -- **Display options**: toggle visual elements -- **OpenSky credentials**: your client ID and secret (if you've made an account - again, highly recommend!) +- **位置**(经纬度):雷达的中心点 +- **雷达半径**:扫描覆盖范围(单位:度;上限为 2 度,以避免触发速率限制) +- **显示选项**:切换可视化元素 +- **OpenSky 凭据**:客户端 ID 与密钥(若已注册账号——再次强烈推荐!) image -If you've made an OpenSky account (which I highly recommend), you can find your credentials under your account settings at opensky-network.org. With authentication, you get 4000 requests per day instead of 400, making the live view much more accurate. Read more about the API [here](https://opensky-network.org). +若已注册 OpenSky 账号(强烈建议),可在 opensky-network.org 的账号设置中找到凭据。认证后可享每日 4000 次请求(未认证为 400 次),实时视图会更加准确。在[此处](https://opensky-network.org).进一步了解该 API -This configuration page is accessible anytime the device is connected to WiFi, so you can tweak settings whenever you want. +设备连接 WiFi 期间可随时访问该配置页面,因此可随时调整设置。 -That's it! Once you've configured everything, you should see a live view of all flights over your location. Enjoy :) +就是这样!完成配置后,你应能看到所处位置上空所有航班的实时视图。尽情享用 :) IMG_7935 -## FAQ +## 常见问题 -> the port is busy or doesn't exist +> 端口忙碌或不存在 -Restart VS Code *after* plugging in the device. If VS Code was already open, it may default to a stale port from before the device was connected. +请在插入设备*之后*再重启 VS Code。若 VS Code 原本已打开,可能会默认使用设备连接前的陈旧端口。 -If that doesn't work, look for the button with a small "Plug" icon on VS Code's bottom bar (it might say "auto", "cu.usbmodem101", or similar). Click it and select the option that shows your device's name. +若仍无效,请在 VS Code 底部状态栏查找带小型 "Plug" 图标的按钮(可能显示 "auto"、"cu.usbmodem101" 或类似文字)。点击并选择显示你设备名称的选项。

-> the 3D print failed +> 3D 打印失败 -If you're using a Bambu Lab printer, make sure you're opening the `.3mf` file, since it includes the correct print bed and settings. +若使用 Bambu Lab 打印机,请确保打开 `.3mf` 文件,其中包含正确的打印平台与设置。 -Using a different printer? Open an [Issue](../../issues) and I'll try to help where I can. +使用其他打印机?请提交 [Issue](../../issues),我会尽力提供帮助。

-> `ModuleNotFoundError: No module named 'intelhex'` when building +> 编译时出现 `ModuleNotFoundError: No module named 'intelhex'` -This appears to be a Windows-specific issue. Either of these should fix it: +这似乎是 Windows 特有的问题。以下任一方案应可解决: -**Option A:** -1. Open the PlatformIO terminal (PlatformIO sidebar → Miscellaneous → PlatformIO Core CLI) -2. Run `pip install intelhex` -3. Rebuild +**方案 A:** +1. 打开 PlatformIO 终端(PlatformIO 侧边栏 → Miscellaneous → PlatformIO Core CLI) +2. 运行 `pip install intelhex` +3. 重新编译 -**Option B:** -1. Open a new terminal in VS Code (Terminal → New Terminal) -2. Run `python -m pip install intelhex` -3. Rebuild +**方案 B:** +1. 在 VS Code 中打开新终端(Terminal → New Terminal) +2. 运行 `python -m pip install intelhex` +3. 重新编译 -## Notes +## 备注 -> Designed and developed as part of a wedding present for a mate who loves aviation (congratulations to both him and his wife!) +> 作为送给热爱航空的朋友的婚礼礼物而设计与开发(祝福他和他的妻子!) -> Inspired by [therealhacksaw](https://www.instagram.com/therealhacksaw/)'s desk radar +> 灵感来自 [therealhacksaw](https://www.instagram.com/therealhacksaw/)'s 的桌面雷达 -> Built with ♥︎ in London +> 在 London 用 ♥︎ 打造