8000 GitHub - simonemargio/mcompass
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

simonemargio/mcompass

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

一个现实世界中的Minecraft罗盘

Index

Front Bottom
Front Bottom

声明

  • Minecraft游戏素材版权均归微软所有, 所以本项目不提供游戏中罗盘的图片素材
    • 面板文件仅提供外形, 像素块已绘制好
    • 罗盘取模原始图片恕不提供
    • PCB背面丝印的标准银河字母字体版权不明确. 如果有任何借此项目进行商业的行为, 请删除背面标准银河字母

编译说明

不会编译

仓库已添加Github Actions, 可以直接点击Actions找到最近一次的"Build Firmware Workflow"构建成功的记录,

点击后的页面下方有四个文件, 按需下载一个即可, 除了默认配置不同外, 其余没有区别; 使用WiFi配置还是蓝牙配置, 后续仍可通过网页/蓝牙切换.

名称 描述
mcompass-639b762-LITE-BLE.bin 标准版, 蓝牙模式, 使用小程序配置
mcompass-639b762-GPS-BLE.bin GPS版, 蓝牙模式, 使用小程序配置
mcompass-639b762-LITE-WIFI.bin 标准版, WiFi模式, 使用网页配置
mcompass-639b762-GPS-WIFI.bin GPS版, WiFi模式, 使用网页配置

下载后解压文件得到mcompass.bin文件使用Flash Download Tool选择ESP32C3->USB下载固件.

固件已将bootload.bin, partitions.bin, firmware.bin, littlefs.bin合并, 直接烧录到地址0x0即可, 其余参数保持默认, SPI SPEED:40Mhz;SPI MODE:DIO

手动编译

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

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

网页资源编译

WiFi模式自带的服务端使用next.js开发, 安装好node.js后,进入Server文件夹执行npm i安装所需依赖.

执行npm run build后构建网页服务所需文件,拷贝生成的Server/out文件夹内容到Firmware/data文件夹下, 此时可以使用Firmware/assets/compass_web_data.py进一步压缩网页资源,以减少flash占用,并显著提高页面打开的成功率. 最后使用PlatformIO自带的Build Filesystem ImageUpload Filesystem Image指令上传服务器文件到设备.

功能说明

蓝牙后台模式

mini_program

启动后1分钟内可以通过罗盘控制台小程序搜索并连接, 使用罗盘控制台时候要确保授予小程序必须权限(蓝牙, 选择地点),别忘记开启蓝牙. 在小程序中可以自定义指针的颜色,校准传感器, 地图选择目标地点

网页后台模式

  • 首次启动检测出生点配置, 如果没有配置出生点, 则会创建一个名为The Lost Compass的热点, 连接该热点后打开浏览器输入esp32.local进入后台, 如果无法打开网页, 也可以尝试使用ESP32C3热点的默认网关地址192.168.4.1,配置完成后重启装置生效;
    • 如果你在后台配置了WiFi地址, 那么下次启动会尝试连接WiFi, 如果连接失败, 会再次创建热点, 供你重新配置;
    • 不管是热点模式还是连接到WiFi, 快速点按按钮四次,会显示当前设备的IP地址;

按钮

  • 连续快速按下按钮四次
    • WEB服务器模式下,会显示当前设备的IP地址;
  • 连续快速按下按钮六次, 会进入传感器校准模式, 此时会显示数字倒计时,倒计时结束,拿起罗盘在控制画8字,并尽可能让装置在各个方向上旋转;
  • 连续快速按下按钮八次, 会进入出厂设置, 会清空所有配置, 恢复出厂设置;
  • 长按按钮
    • 出生针模式下在有GPS信号时, 长按按钮可以设置当前地点为新的出生点;
    • 指南针模式下, 长按按钮会切换到nether模式,指针会开始乱转;

注意: 在室外开阔环境下才能够有GPS信号, 没有GPS信号指针会乱转.

材料说明

  • PCB板厚选择1.0mm, 黑色阻焊, 嘉立创制作;
  • 面板立创商城制作, 参数选择1.0mm 半透黑色亚克力强遮光,无需背胶, 后续借助胶水胶合;
  • 匀光材料选择PET LGT075J, 无需背胶, 后续借助胶水胶合;
  • 电池参数 213455 500MAH
  • 滚花螺母 M233.2
  • 螺丝 M2*4 内六角
  • GPS ATGM336H 5N71模块+天线, 尺寸13.1mmx15.7mm

模型

MakerWorld MakerWorld CN

PCB工程及面板文件

PCB工程文件和面板

参考资料

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

更新记录

update 623B .md

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 59.0%
  • C++ 38.0%
  • Python 0.9%
  • HTML 0.8%
  • JavaScript 0.6%
  • TypeScript 0.5%
  • Other 0.2%
0