站内搜索
发作品签到
MCompass一个现实世界中的Minecraft罗盘
专业版

MCompass一个现实世界中的Minecraft罗盘

简介

一个现实世界中的Minecraft罗盘

简介:一个现实世界中的Minecraft罗盘
复刻成本:70

开源协议

MIT License

创建时间:2024-11-04 21:54:45更新时间:2025-06-09 09:32:19

描述

一个现实世界中的Minecraft罗盘

Frame.png

Bilibili
项目主页
源码

声明

  • Minecraft游戏素材版权均归微软所有
    • 罗盘取模原始图片恕不提供
    • PCB背面丝印的标准银河字母字体版权不明确. 如果有任何借此项目进行商业的行为, 请删除背面标准银河字母

编译说明

固件使用PlatformIO平台Arduino框架编写, 已将依赖库迁移至本地lib文件夹下.
PlatformIO的安装方式请自行搜索;

Fimware/assets文件夹内附带了一个extract_pixels.py脚本, 会检测Fimware/assets文件夹内compass{id}.bmp的10x5图像, 根据LED灯珠排布取模,生成对应的头文件.

服务端程序使用next.js. 安装好node.js后,进入Server文件夹执行npm i安装依赖.

执行npm run build拷贝生成的Server/out文件夹内容到Firmware/data文件夹下,使用PlatformIO自带的Build Filesystem ImageUpload Filesystem Image指令上传到设备.

功能说明

  • 首次插上电脑启动会创建一个The Lost Compass的热点, 连接后打开浏览器输入esp32.local, 输入WiFi和密码进行配网,配网完成后装置会重启;
  • 当罗盘插上电脑后开机, 此时会启动后台服务, 使用esp32.local访问后台;
  • 开机后显示彩虹图案时按住按钮会进入罗盘校准模式, 请举着罗盘飞来飞去, 尽可能多的让罗盘在各个方向旋转.
  • 在室外开阔环境下才能够有GPS信号, 没有GPS信号指针会乱转的.
  • 在有GPS信号的情况下, 长按按钮可以设置当前地点为新的出生点.

API

path类型描述参数
/ipGET获取当前设备IP
/setIndexPOST调试用, 直接显示第N帧index: Int
/infoGET获取设备基本信息
/wifiGET获取设备保存的WiFi
/wifiGET获取设备保存的WiFi
/spawnGET获取当前出生点
/spawnPOST设置当前出生点latitude:Float,longitude:Float
/setColorPOST调试用,所有灯珠显示该颜色color: String, eg: #ff5252
/setAzimuthPOST设置方位角, Mod用的就是这个接口azimuth: Float
/setWiFiPOST设置WiFissid: String, password: String

材料说明

  • PCB板厚选择1.0mm, 黑色;
  • 面板选择1.0mm 半透黑色亚克力,无需背胶(省钱),更遮光(1层黑底);
  • 匀光材料选择PET LGT075J,无需背胶;
  • 电池选择 213455 500MAH
  • 滚花螺母 M233.2
  • 螺丝 M2*4 内六角

模型

MakerWorld

说在最后

项目制作不易, 并非一次就会成功, 你所看到的成果都是在投入时间金钱得到的.
如果可以的话请给我的github项目star, Makerworld点赞收藏, B站关注和视频一键三连.
您的支持就是我最大的鼓励.

更新记录

2024.11.27:锂电池充电芯片原理图选用有误,现在已更正为MCP73831T-2ATI/OT SOT-23-5

参考资料

使用GPS坐标来计算距离和方位角 by 蓝色的飘漂

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
暂无数据
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航