Second prototype finished and [extensively] tested. Many lessons learned.

A project log for Phonetroller

An excellent customizable game controller kit for your phone.

zakqwyzakqwy 04/18/2018 at 18:230 Comments

I wrapped up the second Phonetroller prototype this past weekend, just as a massive April snowstorm hit Minneapolis:

above, 14" of snow by Saturday evening with another 5" or so to come. Yes, we almost got half a meter of snow. In mid-fucking-April.

Getting wires tacked onto the right parts of the controller boards proved to be a bit more tedious than I'd hoped. The XBOX 360 PCB seems to use 6mil (0.15mm) traces and the vias are generally tented with the same conductive rubber crap that covers the membrane button contacts; even after scraping it off I had trouble soldering to the vias. I ended up sticking the end of the 34 AWG enamelled copper wire into the vias, scraping soldermask off traces for the soldered connection, then securing the connections with a bit of conformal coating:

These images show the righthand side of the controller; I didn't allow quite enough extra enamelled wire for the board to lay flat during assembly which made the whole process that much more difficult. Note the heatshrunk cable passthrough above as well; I hot-glued it flat to keep it out of the way of the PCB.

Then this shit happened:

Turns out soldering brass studs onto FR4 isn't a great technique. I suspect this one moved a bit during solidification; the fracture surface shows evidence of significant porosity:

Sounds like a job for . . .SPAAAACE GLUE! Not the prettiest solution but this (along with the remaining studs) has held up well:

above, a bit of space glue squeezed out between the FR4 and the ABS controller shell. Also note the continued heatshrink tube for the button signal wires.

The lefthand control was pretty simple to build. I added a few cm to the enamelled wires which made assembly substantially easier, and the PCB isn't nearly as complex as the righthand one (which has the processor and connector):

The last steps were to add mounting points for springs and strings, and build up the two JST cable assemblies:

After finishing the construction and updating the Teensy code (nothing terribly special there beyond a bit of debouncing), I bought the Android port of Square Enix's Final Fantasy VI and settled in for an excellent weekend:

above: ah yes, this is excellent.

Overall the experience was terrific. I put around 10 hours on the controller between Saturday and Sunday and learned a ton. A few notes that should guide the next iteration:

I can't control the biggest issue; lack of Shovel Knight, Ori and the Blind Forest, and Risk of Rain. Those three recent platformers are some of my favorites and would have been a delightful way to test the device. So if you have any recommendations for Android platformers with solid external controller support -- please let me know!