mirror of
https://github.com/whowechina/mai_pico.git
synced 2024-12-18 04:45:51 +01:00
README update with touch and AIME support
This commit is contained in:
parent
096e5f6948
commit
a69bc79a16
14
README.md
14
README.md
@ -8,6 +8,7 @@
|
|||||||
* Made with a 15.6 inch portable screen.
|
* Made with a 15.6 inch portable screen.
|
||||||
* Arcade-like experience.
|
* Arcade-like experience.
|
||||||
* Dual-player is possible.
|
* Dual-player is possible.
|
||||||
|
* Built-in AIME support.
|
||||||
* All source files open.
|
* All source files open.
|
||||||
|
|
||||||
Thanks to many respectful guys/companies who made their tools or materials free or open source (KiCad, OnShape, InkScape, Raspberry things, JLCPCB).
|
Thanks to many respectful guys/companies who made their tools or materials free or open source (KiCad, OnShape, InkScape, Raspberry things, JLCPCB).
|
||||||
@ -61,6 +62,9 @@ It's CC-NC. So DIY for yourself and for your friend, don't make money from it.
|
|||||||
* 16x WS2812B-3528 RGB LEDs (each button needs two).
|
* 16x WS2812B-3528 RGB LEDs (each button needs two).
|
||||||
* 8x Kailh Choc v1 key switches, linear, 30gf to 45gf ones.
|
* 8x Kailh Choc v1 key switches, linear, 30gf to 45gf ones.
|
||||||
https://www.kailhswitch.com/mechanical-keyboard-switches/low-profile-key-switches/burnt-orange-switch.html
|
https://www.kailhswitch.com/mechanical-keyboard-switches/low-profile-key-switches/burnt-orange-switch.html
|
||||||
|
* 1x PN532 NFC module and some thin wires, only needed if you want AIME.
|
||||||
|
https://www.elechouse.com/product/pn532-nfc-rfid-module-v4/
|
||||||
|
You need to solder it to the same I2C as the MPR121 (GPIO 6 and 7).
|
||||||
|
|
||||||
### ITO Glass
|
### ITO Glass
|
||||||
* Find a service to make custom etching ITO coated glass. The AutoCAD file is `Production\CAD\mai_pico_ito_v*.dwg`. Use 2mm thickness, 10-20ohm sheet resistance ITO coated glass.
|
* Find a service to make custom etching ITO coated glass. The AutoCAD file is `Production\CAD\mai_pico_ito_v*.dwg`. Use 2mm thickness, 10-20ohm sheet resistance ITO coated glass.
|
||||||
@ -112,10 +116,15 @@ It's CC-NC. So DIY for yourself and for your friend, don't make money from it.
|
|||||||
* UF2 file is in `Production\Firmware` folder.
|
* UF2 file is in `Production\Firmware` folder.
|
||||||
* For the new build, hold the BOOTSEL button while connect the USB to a PC, there will be a disk named "RPI-RP2" showed up. Drag the UF2 firmware binary file into it. That's it.
|
* For the new build, hold the BOOTSEL button while connect the USB to a PC, there will be a disk named "RPI-RP2" showed up. Drag the UF2 firmware binary file into it. That's it.
|
||||||
* LED and Touch protocols are implemented following Sucareto's research at https://github.com/Sucareto/Mai2Touch.
|
* LED and Touch protocols are implemented following Sucareto's research at https://github.com/Sucareto/Mai2Touch.
|
||||||
* It has a command line to do configuration. You can use this Web Serial Terminal to connect to the USB serial port of the Mai Pico. (Note: "?" is for help)
|
* It has a command line to do configuration. You can use this Web Serial Terminal to connect to the USB serial port of the Mai Pico. (`?` to display help message.)
|
||||||
https://googlechromelabs.github.io/serial-terminal/
|
https://googlechromelabs.github.io/serial-terminal/
|
||||||
<img src="doc/cmd.png" width="80%">
|
<img src="doc/cmd.png" width="60%">
|
||||||
|
* Please note that when you click "Connect" button, you'll actually see the name of each port.
|
||||||
|
<img src="doc/ports.png" width="60%">
|
||||||
* Button GPIOs can be remapped using `gpio` command. Firmware supports 8 main buttons on the ring and 4 auxiliary buttons (Test, Service, Navigate and Coin).
|
* Button GPIOs can be remapped using `gpio` command. Firmware supports 8 main buttons on the ring and 4 auxiliary buttons (Test, Service, Navigate and Coin).
|
||||||
|
* Touch keys can be remapped using `touch` command. For people who's using Mai Pico to drive a custom ITO film or a ITO glass, this command will be very useful. For example:
|
||||||
|
* `touch` with no parameter is to detect touched keys.
|
||||||
|
* `touch 1 9 E6` is to set the second MPR121's electrode 9 to key "E6". Key name of "XX" means "Not Connected".
|
||||||
* Daisy chained RGB LED numbers for each button can be assigned using `rgb` command.
|
* Daisy chained RGB LED numbers for each button can be assigned using `rgb` command.
|
||||||
* LED brightness can be adjusted by `level` command.
|
* LED brightness can be adjusted by `level` command.
|
||||||
* There are MPR121 parameter tuning and sensitive settings, explore them yourself.
|
* There are MPR121 parameter tuning and sensitive settings, explore them yourself.
|
||||||
@ -124,6 +133,7 @@ It's CC-NC. So DIY for yourself and for your friend, don't make money from it.
|
|||||||
* key1: `WEDCXZAQ`-Ring Buttons, `3`-Select
|
* key1: `WEDCXZAQ`-Ring Buttons, `3`-Select
|
||||||
* key2 (Numpad): `89632147`-Ring Buttons, `*`-Select
|
* key2 (Numpad): `89632147`-Ring Buttons, `*`-Select
|
||||||
* Above two sets both have: `F1`-Test `F2`-Service `F3`-Coin
|
* Above two sets both have: `F1`-Test `F2`-Service `F3`-Coin
|
||||||
|
* `factory` to reset to default. When there's a firmware update, the old configuration may become corrupted, you can reset configuration, then re-plug the controller.
|
||||||
|
|
||||||
## CAD Source File
|
## CAD Source File
|
||||||
I'm using OnShape free subscription. It's powerful but it can't archive original designs to local, so I can only share the link here. STL/DXF/DWG files are exported from this online document.
|
I'm using OnShape free subscription. It's powerful but it can't archive original designs to local, so I can only share the link here. STL/DXF/DWG files are exported from this online document.
|
||||||
|
12
README_CN.md
12
README_CN.md
@ -10,6 +10,7 @@
|
|||||||
* 使用 15.6 英寸的便携式屏幕制作。
|
* 使用 15.6 英寸的便携式屏幕制作。
|
||||||
* 类似街机的体验。
|
* 类似街机的体验。
|
||||||
* 可以双人游戏。
|
* 可以双人游戏。
|
||||||
|
* 内置支持 AIME。
|
||||||
* 所有源文件开放。
|
* 所有源文件开放。
|
||||||
|
|
||||||
感谢许多尊敬的爱好者和公司将他们的工具或材料免费或开源(KiCad,OnShape,InkScape,Raspberry 相关工具, 嘉立创)。
|
感谢许多尊敬的爱好者和公司将他们的工具或材料免费或开源(KiCad,OnShape,InkScape,Raspberry 相关工具, 嘉立创)。
|
||||||
@ -70,6 +71,9 @@ https://github.com/whowechina/
|
|||||||
* 16x WS2812B-3528 RGB LED(每个按钮需要两个)。
|
* 16x WS2812B-3528 RGB LED(每个按钮需要两个)。
|
||||||
* 8x Kailh Choc v1 键盘开关,线性的,30gf 到 45gf 的。
|
* 8x Kailh Choc v1 键盘开关,线性的,30gf 到 45gf 的。
|
||||||
https://www.kailhswitch.com/mechanical-keyboard-switches/low-profile-key-switches/burnt-orange-switch.html
|
https://www.kailhswitch.com/mechanical-keyboard-switches/low-profile-key-switches/burnt-orange-switch.html
|
||||||
|
* 1x PN532 NFC 模块和一些细电线, 只有需要 AIME 的时候才用得上.
|
||||||
|
https://www.elechouse.com/product/pn532-nfc-rfid-module-v4/
|
||||||
|
你需要把它焊接到 MPR121 所在的 I2C 总线上(GPIO 6 and 7)。
|
||||||
|
|
||||||
### ITO 玻璃
|
### ITO 玻璃
|
||||||
* 找一个服务定制蚀刻 ITO 镀膜玻璃。AutoCAD 文件是 `Production\CAD\mai_pico_ito_v*.dwg`。使用 2mm 厚,10-20ohm 平方电阻的 ITO 镀膜玻璃。
|
* 找一个服务定制蚀刻 ITO 镀膜玻璃。AutoCAD 文件是 `Production\CAD\mai_pico_ito_v*.dwg`。使用 2mm 厚,10-20ohm 平方电阻的 ITO 镀膜玻璃。
|
||||||
@ -122,8 +126,13 @@ https://github.com/whowechina/
|
|||||||
* LED 和 Touch 协议的实现遵循 Sucareto 在 https://github.com/Sucareto/Mai2Touch 上的研究。
|
* LED 和 Touch 协议的实现遵循 Sucareto 在 https://github.com/Sucareto/Mai2Touch 上的研究。
|
||||||
* 它有一个命令行进行配置。你可以使用这个 Web Serial Terminal 连接到 Mai Pico 的 USB 串口。(注意:"?" 是帮助)
|
* 它有一个命令行进行配置。你可以使用这个 Web Serial Terminal 连接到 Mai Pico 的 USB 串口。(注意:"?" 是帮助)
|
||||||
https://googlechromelabs.github.io/serial-terminal/
|
https://googlechromelabs.github.io/serial-terminal/
|
||||||
<img src="doc/cmd.png" width="80%">
|
<img src="doc/cmd.png" width="60%">
|
||||||
|
* 当你点击这个网页的 Connect 按钮后,你能看到每个端口的名称。
|
||||||
|
<img src="doc/ports.png" width="60%">
|
||||||
* 可以使用 `gpio` 命令重新映射按钮 GPIOs,固件支持 8 个主按钮和 4 个辅助按钮(分别是:Test, Service, Navigate, Coin)。
|
* 可以使用 `gpio` 命令重新映射按钮 GPIOs,固件支持 8 个主按钮和 4 个辅助按钮(分别是:Test, Service, Navigate, Coin)。
|
||||||
|
* 可以使用 `touch` 命令重新映射触摸键。对于用 ITO 膜手作触摸板,或者自己定制了引脚不同的 ITO 镀膜玻璃的朋友,这个命令会很有用:
|
||||||
|
* `touch` 不带参数,可以用来检测当前按下的触摸键。
|
||||||
|
* `touch 1 9 E6` 是映射第二个 MPR121 传感器的电极 9 到 “E6”,注意 “XX” 表示不连接任何触摸键。
|
||||||
* 可以使用 `rgb` 命令为每个按钮分配串联的 RGB LED 数量。
|
* 可以使用 `rgb` 命令为每个按钮分配串联的 RGB LED 数量。
|
||||||
* 可以通过 `level` 命令调整 LED 的亮度。
|
* 可以通过 `level` 命令调整 LED 的亮度。
|
||||||
* 有 MPR121 参数调整和灵敏度设置,自己探索。
|
* 有 MPR121 参数调整和灵敏度设置,自己探索。
|
||||||
@ -132,6 +141,7 @@ https://github.com/whowechina/
|
|||||||
* key1:`WEDCXZAQ`-按键环,`3`-Select
|
* key1:`WEDCXZAQ`-按键环,`3`-Select
|
||||||
* key2(小键盘):`89632147`-按键环,`*`-Select
|
* key2(小键盘):`89632147`-按键环,`*`-Select
|
||||||
* 上述两套都有:`F1`-Test `F2`-Service `F3`-投币
|
* 上述两套都有:`F1`-Test `F2`-Service `F3`-投币
|
||||||
|
* `factory` 用来复位到默认配置。当固件升级时,老配置可能失效,这时候请复位到默认配置,然后重新插拔一下控制器。
|
||||||
|
|
||||||
## CAD 源文件
|
## CAD 源文件
|
||||||
我正在使用 OnShape 的免费订阅。它很强大,但不能将原始设计存档到本地,所以我只能在这里分享链接。STL/DXF/DWG 文件是从这个在线文档导出的。
|
我正在使用 OnShape 的免费订阅。它很强大,但不能将原始设计存档到本地,所以我只能在这里分享链接。STL/DXF/DWG 文件是从这个在线文档导出的。
|
||||||
|
BIN
doc/ports.png
Normal file
BIN
doc/ports.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 58 KiB |
Loading…
Reference in New Issue
Block a user