通过手术植入3D-Touch电容式触控板来代替原始的模拟操纵杆。
前言
到了2020年,在大流行的无聊中,要想摆脱创造力的压倒性生存并非易事 。 但是……当您意识到自己拥有一个内部装有大量电子设备的工具箱时,以不同的方式看到摆在桌上的相同旧物件并不难。 我的Nintendo Switch就是这种情况:以前我从来没有拆过Joy-Con控制器的机会。 把手伸进去,开始新的旅程,这真是一个绝佳的机会。
“好吧,让我看一下互联网,如果有人像马一样疯狂,有个疯狂的主意,那就是用电容性触控板替换旧的模拟摇杆。” —未找到结果。
MacGyver批准。
阶段0
我习惯于在记事本上草绘想法,这是我的第一幅画,是关于我如何用电容式触控板代替原来的模拟游戏杆来想象Joy-Con。
“优点”要点中最好的是NO-DRIFT声明。 如果您在这里,可能您已经知道某些Joy-Con控制器受到Joystick Drift的困扰。 想一想:没有操纵杆=没有漂移。
阶段1
首先,如果您不对透明的酸性绿色材料着迷,那么您不是一个真正的书呆子。 因此,为了在Joy-Con上穿上新衣服,在Bezos网站上键入了几次击键。 卸下外壳并不复杂 ,这里唯一困难的部分实际上是如果有大手的话,要轻轻地处理一把镊子。
模拟操纵杆不是一个复杂的实体-实际上,它是一个2通道电位器加一个按钮-并且通过5位置,间距为0.5mm的FPC连接器连接到主板。 我订购了具有相同规格的扁平扁平带状电缆 ,以将信号带出电路。
然后,我重新组装了Joy-Con,并直接用Switch对其进行了测试,以检查一切是否正常。
好了,我必须用数字电位计代替模拟电位计。
阶段2
为了以更清洁,更和平的方式进行工作,我在KiCad中绘制了几个组件的原理图, 导入了它们的封装,并为其设计了一些分线板。
我选择测试具有不同价格和性能范围的各种数字电位计,以及用于扁平电缆的连接器(一个用于模拟操纵杆输入,一个用于电容触控板输出)。 我命令他们在网上花几美元。
一周之内,我从最喜欢的PCB经销商处收到了包装。 随着锡膏的散布和热风枪的工作,分线板已准备就绪。
现在该执行一些测试了。
第三阶段
不可避免地要说一个Arduino ,一块面包板和一堆跳线会帮助协调整体。
整个测试设置涉及:
- [0] 1个微控制器
- [1] 2 x 12位电压输出数模转换器(通过I2C连接)
- [2]用于模拟游戏杆的1 x 5位置0.5mm间距FPC连接器
- [3] 1 x 5位置0.5mm间距FPC柔性扁平带状电缆
- [4] 1 x 12位置0.5 mm间距FPC连接器,电容式触控板
- [5] 1 x 12位置0.5mm间距FPC柔性扁平带状电缆
- [6] 1个数字3D-Touch电容式触控板(通过I2C连接)
在我开发和测试的所有数字电位器中,我选择了最适合,成本更低且不可避免地完成工作的数字电位器。 第一步是检查所有组件的接线,营养和响应是否正确。 我将标准的i2c_scanner示例闪入了开发板,结果取得了成功。
只需几行代码,就可以初始化I2C总线上的DAC和电容式触控板 ,然后我专注于实施一种有效的策略,以探索数字电位计如何模拟原始X轴和Y轴模拟操纵杆。
由于DAC的分辨率为12位,因此它们接受的值范围为0到4095,因此我以10的步长将其传递给循环。
在Switch控制台上,我从主要设置中启动了Control Stick Calibration工具,以查看是否会发生某些情况。
电容式触控板是一种有趣的电子产品,以非常小巧的通用型外形承载。 令人惊讶的是,它还提供了2048 x 1535 x 63(X x Y x Z)的惊人分辨率-是的,它具有63级的压力敏感度(我将在稍后利用此功能以数字方式模拟按键模拟操纵杆)。
隐含地说,第二步是实现体面的映射,以匹配电位计的分辨率。 幸运的是,Arduino提供了map方法的帮助,因此几乎可以立即获得不错的结果。
关于pushStick(); 方法调用指令,因为Joy-Con侧的相应引脚处理简单的闭路逻辑,所以我可以通过代码模拟按钮按下。
凉。 在我看来,第一个原型的最终结果很有希望。
第四阶段
好的。 我们在这里有一架飞机,现在让它飞行。
我想到的下一步是创建第一个原型的嵌入式且可移植的解决方案。
我决定从UNO切换到采用更小封装的PRO MINI,并构建一个可以将其与所有连接器和数字电位计一起容纳的电路板。 为了保持较高的优化水平,我发现可以用同一系列的双通道DAC代替两个单通道DAC,从而节省了PCB上的空间。
我启动了我忠实的KiCad,绘制了原理图,然后将所有组件按照强制性(混乱)的顺序放置在它们的位置。
5期
快递员像往常一样守时,将绿金与其他组件一起携带。
同样的仪式。
焊锡聚会。
用数字万用表进行测试。
6期
PRO MINI需要补充:我直接从主板上偷走了所有所需的毫安,从一个未被覆盖的焊盘上吸走了它们。
主要想法是使用专业的双面胶带将电路板直接粘贴到Joy-Con的背面,在塑料外壳上打一个Kong,然后将所有电缆穿过其中。
7期
电容式触控板从其原始包装中裸露出来,因此我必须自己设计和开发3D外壳。 Tinkercad在这种情况下非常方便:通过添加和减去几个基本形状,可以很好地完成工作而不会出现复杂性。
在与Cura快速切片之后,经过了几分钟的等待时间,然后3D打印机催生了新生婴儿。
超。 它非常适合第一次拍摄。 我必须说,所使用的长丝很好地保留了机械性能。 干得好FILOALFA 。
8期
由于用于补充PRO MINI的电源直接取决于Joy-Con的电池,因此我决定增加一个小开关,以便在不使用时关闭植入物,从而避免了多余的消耗。
安全第一:我用一块好的Kapton胶带覆盖了所有裸露的电子设备,以免手出汗时使任何东西短路。
最后结果
现在我们开始。 最终就是这样。 它仍然是便携式的,因此可以连接使用它或以无线模式使用。
让我们来看看它的作用。
享受世界上第一个带有3D电容式触控板的Nintendo Switch Joy-Con控制器。
下一步
更认真地做事:在我的计划中,有一个想法是使整个电路小型化,以便创建一个较小的PCB,该PCB可以直接适合Joy-Con控制器内部,以代替Analog Joystick小盒子(大约19 x 16 x 4 mm)。尺寸。
如您所见,该工作已经在进行中。
我知道这可能会引起一小部分狂热者,改装者和游戏玩家的兴趣,但是它的硬件和成本却很高。 这个项目意味着大量的工作,在您的支持下,我很乐意做。
如果有市场需求,我很乐意为您提供第一笔小批量开发的资金,您可以在未来的将来从Tindie购买。
这显然是号召性用语。 如果您想使这个Joy-Con Touch Mod-Kit成为现实,请捐赠 。
先前发布在 https://medium.com/@matteo.pisani.91/how-i-hacked-nintendo-joy-con-controller-8ac22d75b0b8
翻译自: https://hackernoon.com/hardware-upgrades-at-home-hacking-nintendo-joy-con-controller-yuba3w6n