English version available here: PixelCompass: A Low-Cost, Web-Configurable Minecraft Compass IRL
背景
我觉得是时候重新打板, 把这个事情了结一下了.

2024年底,我曾发布过一款基于ESP32-C3的我的世界罗盘. 那个版本有着和游戏里一样指向具体地点的功能, 但成本相对于后来TiX简易版高出不少, 续航也远不如简易版. 起初我试着弄了个4G互相指向, 捣鼓了好一整子, 又是弄4G模块,又是写服务器代码, 到最后就是感觉4G是’方向错了, 感知不强,徒增功耗‘的典型, 深受其打击. 随后我心里一直有重构的念头, 换成便宜的硬件, 保留指向具体地点的功能. 去年辞职有了时间后开始拾起这件事情, 但是这个过程中, 我不断的冒出怎么还在做做过的东西, 真的有意义吗. 老做一样的东西难道不烦吗, 一点创新都没有. 就这样,项目以极其缓慢的进度推进. 到了今年初, 大体功能算是完成了, 只剩下一些小问题,迫于动力不足, 每个月打板次数就是我推进的次数. 再后来我就开始找工作, 这件事情又开始搁置, 打好的板子都不知道丢哪去了. 也忘记上次改动到底改动了啥, 修复了什么问题. 在当上牛马的第一周,我看着桌上那些吃灰的半成品,突然觉得是时候重新打板,把这个纠缠了一年多的执念彻底了结一下了。
这一次有什么区别
- 硬件从之前的ESP32-C3降级为王翠花(WCH)家的CH592F;
- ESP32C3模块售价10元, 而CH592F最低2元拿下
- 同等灯珠亮度配置下, 电流从100mA降低到了60mA
- 还多了USB, 既能打印日志, 也能从在线网页进行配置
- GPS模块直接焊接在板子上, 而非做成可选模块;
- 更好的电源开关, 最初的电源开关不知道被多少人说过, 确实很难用;
- 硬件开源, 固件不开源, 不过固件激活码能免费获取;
- 更好的灯珠, 发光更加均匀;
- 选用雾状灯珠, 发光效果更优
获取
去我的夸克网盘获取,转存下载全套资料包(包含 Gerber、BOM 及固件): https://pan.quark.cn/s/7ac388ab6cd9
下载资源包中包含:
- PCB 打板所需的 Gerber 文件 与 原理图;
- 焊接防呆必备的 交互式 BOM (Interactive BOM);
- 已编译完成、可直接烧录的 固件 (.bin) 文件。
模型
由于我的3D打印机搬家之前被我卖掉后还未购入新的, 所以模型上的问题都无法验证修改

物料
只介绍在交互式BOM里面未列出的电池和螺丝.
电池
601535 Li-Po battery (280mAh) 理论上还可以用701435(330mAh)的,但是我没验证过701435.
接头的规格是1.25mm
螺丝
两颗Torx CB1.4 x 4mm螺丝
GPS天线
选择有源陶瓷天线, 尺寸为16mm × 6mm × 6mm. 线长5CM即可

电子料
见交互式BOM, 太长的列表在这里列举没有意义.
结构件
我将外壳上传到了MakerWorld上, 按需选择你想打印的版本, 亚克力面板的版本, 或者多色打印版本. 多色打印版本我未上色, 所以需要你手动上色. 多色版本所需的耗材颜色如MakerWorld所说:白色,黑色不做特殊要求, 深灰色为10105,浅灰色为16101 盘3里面则是可供参考的6色方案. 如果没有打印机, 还请去正规合适平台寻找代打服务.
面板
我个人喜欢的亚克力面板方案, 拥有更加均匀清晰的显示效果

也提供类似于TiX的4色
6色方案则是适合拥有两台AMS的方案, 我尝试了不少颜色组合, 买了一堆料也没找到最好的效果, 所以这个仅供参考吧.

额外说明
再次强调亚克力面板参数, 厚度1mm, 黑色半透, 如果是立创商城下单, 记得顶面印刷, 无需背胶. PET.dwg则是设计好的PET膜切割文件, 当然你用剪刀裁切一个也可以.
制作
推荐买钢网刷锡膏, 因为这次焊接比之前难了, 我在淘宝上花了15块钱订做这张钢网, 相信我, 这15块钱花的绝对值,能让你少走很多弯路, 甚至一次焊接成功. 不然你会受尽折磨, 还有可能弄坏很多东西.

焊接
刷上锡膏
使用钢网刷好锡膏后,

元件摆放
使用交互式BOM摆放好所有的元件, 元件稍微产生偏移也是允许的, 因为焊接过程中会依靠锡膏的张力将元件回正.

确认QMC6309的焊接方向正确, 不然它一沾上助焊剂, 就难以确认方向
锡膏融化焊接
放到加热台上融化锡膏执行焊接, 这时候如果你发现张力无法纠正元件的偏移, 就需要手动干涉一下.

清洗(可选但是推荐)
还是建议清洗一下电路板, 不然表面脏脏的实在是难受, 而且还有可能对发光产生影响.
注意务必在通风良好的环境下操作,做好防护

焊接检查
上电前,必须进行万用表测量!. 比如是否存在虚焊或者连锡的问题, 不然插上电脑会没有反应, 连锡导致的短路还有可能损坏电脑的USB口. 上电后检查一下LDO输出是否3.3V, DCDC部分输出是否是5.0V
烧录
当检查完毕后, 就可以连接电脑烧录固件了. 烧录使用的工具是
WCHISPTool, 这是WCH官方提供的一个烧录工具.
打开工具后, MCU系列选择 低功耗蓝牙系列 CH57x-CH59x;
在DataFlash文件选项卡中选择提供好的固件文件, 设置下载接口为USB, 并且勾选连接设备后自动下载.
此时PCBA左边开关向左推, 按住右边BOOT按钮的时候插入Type-C数据线, 电脑识别到后会自动烧录固件到装置.
若未能识别到或者其他异常情况, 请检查焊接是否正常,

激活
关于硬件开源与固件激活的说明
本项目的硬件设计已完全开源。但考虑到过去许多优秀的同人 DIY 项目在发布初期,往往会被无良商家直接打包,并使用劣质用料进行商业量产,高价卖给普通玩家却不提供任何技术支持,这极易伤害真正热爱这个项目的社区生态。
因此,本项目在初期选择将固件闭源,并采用免费激活码机制。我希望通过这道小小的门槛,能够尽可能确保每一个 PixelCompass 都真正诞生在愿意动手的 DIY 玩家手中。当项目运行稳定、社区生态成型后,我会在后续阶段将固件源码完全开源。
去我的Ko-Fi店铺获取激活码, 商品链接是PixelCompass Activation Code 购买成功后会收到激活码的邮件. 打开dashboard 选择连接到设备, 此时若设备未激活则会提醒激活, 输入邮件获取到的激活码即可.
设置‘家’
Dashboard提供设置‘lodestone’的选项, 你可以在地图上选择希望设置成目标的位置.
也可以自定义这个lodestone用什么颜色指针显示.

组装
我以亚克力版本为例说明.
先放置PET膜
别忘记点上胶水
然后放置亚克力面板
背面则是直接盖上, 拧上两颗螺丝就好.
安装时候保证GPS天线朝向是向着正面的, 这样握着的时候他能够正对天空, 接收GPS信号.

结束
至此, 装置制作完成了.

故障排查
下面列举一些可能遇到的常见问题
焊接完成后插上USB没反应
- 是否存在短路, 断路问题,尤其注意CH592F和Type-C引脚是否连锡;
- 检查USB焊接, 甚至是数据线是否能够传输数据,而不是只能充电的线;
- CH592F焊接问题, 因为我第一次用CH582F(CH592F的姊妹芯片)焊接了不知道多少次才识别出来;
- 检查一下晶振方向, 因为这个东西比较难以分辨, 所以请反复确认方向没错;
烧录以后所有灯珠显示白色
检查一下QMC6309的焊接, 识别不到地磁传感器就会卡在这个白色页面;
烧录以后灯珠显示不全
检查灯珠焊接, 这个版本我标明了每一行灯珠方向, 确认你的方向没问题, 焊接也没有问题;
长时间无法定位
确认GPS焊接无误, 在dashboard里面可以看到GPS状态, 是主控和GPS无法通信, 还是没有天线导致的; 室内是无法定位的, 需要到开阔地带;