Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Cory Parsnipson
Nov 15, 2015
It’s time to get serious for a second.

This thread has been a huge help to me, not only because it helps me remember what I did, but also because there’s people in here who like talking about portable video games, electronics, and 3d printing. A lot of the interactions involve giving engineering advice and opinions on what to do next. All fine, it’s great. Sometimes we even joke around. Even better! But I’ve been feeling lately like I’m being “backseat driven” regarding the engineering process and on the practicality of some things. To clarify my position, I don’t mean that merely suggesting a differing opinion and backing it up with reasoning is the problem. Suggesting things and saying “I would do this if I were you” or “this way is better/this way is worse” is fine and welcome. I do think it is beneficial to have different perspectives and options available to choose from and that’s what makes everyone’s input so great. When I have to repeatedly explain myself on reasoning is when it starts to become an issue for a couple reasons.

The first is that this project needs to be fun. At present, the most important factor to actually delivering something isn’t time or money. It’s how fun it is. If I’m not motivated to finish it, the project is in trouble. The second is that I’m not willing to compromise on the creative aspects. What this means is that I’m doing this project on my own and this is a rare opportunity to explore threads of experimentation outside financial or temporal constraints. Maybe it could look completely unpromising (e.g. making something out of cardboard, or putting all the buttons on the back of the system for some reason) but I want to experience the pros and cons for myself and fully understand why things are the way they are. Through experience. I’m not going to accept being told something is a bad idea without a drat good reason. Open to interpretation, I know, but it has to make sense to me specifically.

On the bright side, I don’t turn away advice very often, but I would appreciate it if my decision was respected when I do so. If I feel like I’m getting “steered” into a certain direction, I start second guessing myself. It slows down my progress, gives me anxiety, and kills the fun of everything. I could have handled the latter scenarios better in most cases and I want to say sorry to csammis from when I snapped at him in the Learning Electronics thread. I’ll try in the future to express my firm opinion in the most pleasant and levelheaded way I can. Again, 99% of the interactions in the thread are great, so I don’t want anyone to get the idea that things are terrible or anything. I hope there’s no hard feelings. I’m glad that there are people invested in this and I want to see it through.

Adbot
ADBOT LOVES YOU

Cory Parsnipson
Nov 15, 2015
Dpad continues to be a pain in the rear end

There’s only two footprints left: the dpad button cross traces and the ABXY button cross traces on the other side. These will be the most complicated footprints on the PCB by a wide margin. I found plenty of video game controller related projects from people using KiCAD to make single layer traces that look like this:



As opposed to the double layer setup like this:



I think the top is commonly used with four legged metal domes instead of the completely round ones with a rim like the 3DS, but both can work with some proper measuring.

I came across a single post in the KiCAD forum that seems relevant. The answerer lays out how to make the trace shapes in the footprint editor (nice). Along with the snaptron spec, this was enough to make the complete shape in the footprint editor.


Viola.

I also needed to search for how to make a via in a footprint (you can’t in KiCAD) and how to make the solder mask layer a different shape to completely follow the recommendations in the snaptron datasheet.

Via for venting in dome switch trace

I mentioned before that they recommend you put a small hole in each of the center pads of every button. This helps actuation because when you press down on the metal dome, it compresses the air that may be trapped inside and if there’s nowhere for it to go, the air pressure could interfere with the button press.

According to the KiCAD forum, you can’t make vias in a footprint because that requires the footprint to be aware of the PCB type (how many layers, what material, etc). If you don’t need a buried via (one that doesn’t go all the way through the board), you can hack one in by using a plated through hole pad with a hole radius that’s the same as the size. You can see that I put those in and they appear as small grey circles on the center pads in the footprint screenshot above.

Making a custom solder mask

For the solder mask, the developers commented that the KiCAD standard libraries do 1 pad per layer. So they have one pad with copper layers (and nothing else checked), one pad per solder mask, one pad per adhesive, etc if necessary. So the purple solder mask pieces above are actually separate pads from the numbered copper ones. Also snaptron recommends that the solder mask stop at the outer diameter of the pad with the void extending all the way in the interior.

Using the back copper layer for the return trace

The green portions are the back copper layer (on the opposite side of the PCB). I use the vias I made to simultaneously vent the buttons and connect the middle pads together on the backside. I’m just improvising here as I’ve not found any guidance for this part online. It matches the schematic I made before, where it’s easier to connect one half of the switches all in one group and I’ve decided to connect the inside halves together. I need to figure out how to hook up pin 5 to an external component. What I’m thinking right now is to use a via in the overall PCB layout and just route a trace to overlap on the back. Not sure if KiCAD would like that so I might have to come back and move some things around if that’s the case.

Also note that the entire back half does not have holes in the solder mask. We don’t need to solder anything to it, so let’s keep it covered.

Cory Parsnipson fucked around with this message at 21:39 on Apr 26, 2021

Cory Parsnipson
Nov 15, 2015
Inspiration

Massive props to this guy from BitBuilt.net. I came across this site that is a forum for enthusiasts who like making consoles portable. There was this guy who made a portable raspberry pi project and, drat, is it good.

Raspberry Pi Fusion


It looks like he put this together in about a month or two way back in the before times of 2019.



Probably obvious to a bunch of you but as you can see in his project, he buys a bunch of small component boards and then wires them up together directly and shoves all of that into an enclosure. I think this is what most people do when they’re tinkering and I don’t know why it wasn’t obvious to me before, but it’s really what I should have done too.

There’s a lot of really cool things he does to save time and effort. The Dpads he used are salvaged from some old gamecube controllers and he managed to fit a multi-cell lithium ion battery pack in there. I think he might have also made his own breakout boards for the 3ds circle pads because I couldn’t find any through quick search. If that’s the case, it’s pretty impressive and a lot of skill and work hidden in that.

I don’t know much about battery charging yet but I did read somewhere that multiple cell setups require you to charge and measure each cell simultaneously and things can easily go wrong resulting in fire etc. He got something called a Battery Management System (BMS) which is a fairly common component for hobbyist projects. I’m not sure if what I said is applicable or true here, but the point is he got all the hard stuff for free, in a sense.

Cut back to me, sitting here like a loving dumbass. What am I doing making a




vvv. Thanks, that is true. Gotta keep my eyes on the prize.

Cory Parsnipson fucked around with this message at 19:14 on Apr 27, 2021

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

Remember if you just wanted a finished product you'd have bought a switch, you're learning lots of stuff and making something unique.

Cory Parsnipson
Nov 15, 2015
Wake-up Call

“How are you feeling?”

I jolted up, not able to recall what I was just doing. I’m in a tidy office and sitting on a reclined sofa that’s much too low. It’s unfamiliar to me. I look up across from me at a petite woman, who normally would barely be at shoulder height but I have to look up at her. In a wavering voice I say to her, “I-...I don’t think this is working”. She nods slowly and blinks for a long time to think about what to say next.

“You have too much going on.”, she says in a slow and measured tone, opening her eyes. “Discard everything that does not spark joy. To put things in order means to put your past in order too.”

I want to believe her, but I don’t understand.

“From the moment you start tidying, you will be compelled to reset your life.”, she continues, unconcerned that I might not be following. Marie furrows her brow and sits up straighter. Her aura changes completely. She turns to the television in the room. On the screen is a crowd of people sitting around it in a circle. They’re making direct eye contact with her like they can see us through the TV. She speaks to them, “Does this man spark joy?”. Her voice is much harsher now.

They respond in unison, “NO.”

“This man does NOT spark joy.”

I could only manage a feeble, “...wha...t…?” as my hands start shaking. An ache in the center of my head begins to form. Marie crosses her legs again and sits back, beaming at me.

“Does this spark joy????”, I think as I hold my head in my hands.



It does not spark joy.

It.
Does.
Not.
SPARK.
JOY.

Does
Not spark
Joy

DOES
NOT
SPARK
JOY


Ḍ̶̡̨̧̨̛̟̫̪̝͔̱̟͙͖̙̲̥̠͈̹̩̮̪̤̖̊̀͌̇̔͋̏̊̏̈́̑̉̀̽̀̈́́͋͛̈́͌̅͆̒̿͜͝͝͝͝͠͝ͅͅŌ̵̧̡̻͖͈̮̘̳̣͕̱̟̤̙͚̠͇̼̣̪̱̭͉̼̫̦̭̱̥̍̿͆̏̅̉̀͒̋̄̐͂̎̀̈́͑̋͑̊̎̕͘͜ͅͅͅȨ̷̧̧̧̞͉̣̲̘̯̝̩̤̘̞̦̲̙̦̼̘̠̟̗͉̝̔̌̓̊̇͐̇͋̓̋̈́͐̐́̀͐͊̄́̑͋̀̇̕̚͜͜͝͠͝ͅS̵̛̞͎̺̣̖̽̆̔̄̎̊̐͋̾ ̷̡̢̬̪͓̰̭̰̬̹̣̘̭͇̖̠̱̱̝̜̟̙͚̱̬̦̮̙̂̀̌͂͜͜͝
Ṋ̶̢̡̡͚̱̦͙͇̭͓̻͍̬̟̼͙̱͉̰̼̞͍̾͌͒̅͑͂̒̂͌̓̇̉͐͌̿́̿̓͘̕͜͝͝͝͝O̷͎͉̰̖̬̺̣͛̔͌͂́̎͋͛̒̓͐͐̓͊Ţ̷̡͙̱̺̟̦̖̞̞͈̯̱̗̱̇̐̏̊̑̏͆̋̐͂͛̏͛̿͘͝ ̴̠͔̜̜̻̻̖̞̮̟͇̣̙̱͓̘̩̖̥̖͉̮̫̇̽̓̏̎́̓͐̆͌̏̌̌́̇̾͋̆͆̽̾͛̔̉̀̌̍̕͝͝͠
S̵̢̨̨̳̩͖̦̹͇̳̩̪̮͖̤͖̙̞̗̣̼̰̱̐́̎̉̅̈́̓̕͘͜ͅP̴̢̨̨̡̨̗̭̻͙̞͓̲̦̫̱̩̟̘͇̝̱̪͔̹̮̖͖̭͚̺̒͊̈͛̓͌̒̿̿̂͐͗̄́̈́͐̑̈́̓̈́͑̑͘͜͜͝͝͝ͅĄ̸̧̡̡̢̨͍̙̟̜̩̳̩̯̤̱̹͆Ŗ̷̠͔̞̲̬̘̹̯͕̼͕̖̙͓͇͚̾̉̏̈́͗̀͆̀̎̓͊̽͒̇͒̍́̽̈̇̿̉́̓̐̏̕̚͘͝͠͝Ḳ̸̳͍̳͔̃̀̌̐̀̈́̓͋̉̏͋̅́̋̎͂̒̋̐͗̈́̚̚͝͝͝͝͝ ̸̨̡̡̥̝̖͔̭̤͔̞̲̲̻̙̼̥̺̤̮̮͔̬̦̭̰̈́̿̐̊̋͊̋̿̓͒̈́̐̇͗͝͠
J̶͔͙̤̜̈́͗͒̽̿̈́̌͆̀̓͋̃̔̒̔͛̊̈̇͘̕͝͠͝O̷̲̳̪̺̭̤̩̝̘͙͕͕͓̦̼̪͚̼̼͔̱̗̝̠̝̘̪̪̍̋̇̔͆͂̉̈̓́̈́̋͒̑͒̚̕͘͠͝Y̸̨̨̨̧̧͎̜͕̫̠͇̦̗̜̝̬̟̺̳̞̥̗͕̟̯̰̭̻̙̝̙̊͐̿̑̌̓̔͌̈̀̐̅͜͝






My headache screams in a shrill howl that fills the room, piercing my vision with red pulsing spears. I clench my hands against my head even harder. The room blurs and undulates and I fall through the floor.

Cory Parsnipson fucked around with this message at 11:10 on Apr 28, 2021

babyeatingpsychopath
Oct 28, 2000
Forum Veteran


Cory Parsnipson posted:


Viola.

I also needed to search for how to make a via in a footprint (you can’t in KiCAD) and how to make the solder mask layer a different shape to completely follow the recommendations in the snaptron datasheet.

Via for venting in dome switch trace

I mentioned before that they recommend you put a small hole in each of the center pads of every button. This helps actuation because when you press down on the metal dome, it compresses the air that may be trapped inside and if there’s nowhere for it to go, the air pressure could interfere with the button press.

According to the KiCAD forum, you can’t make vias in a footprint because that requires the footprint to be aware of the PCB type (how many layers, what material, etc). If you don’t need a buried via (one that doesn’t go all the way through the board), you can hack one in by using a plated through hole pad with a hole radius that’s the same as the size. You can see that I put those in and they appear as small grey circles on the center pads in the footprint screenshot above.

Making a custom solder mask


I think the KiCAD forums get a bit full of themselves. You personally know that you're using a 2-layer board for this d-pad, so you can just make your plated through-hole in the center of your pad. I don't see how this isn't a via? Nomenclature?

Will having a solid solder mask on the back cover the vent holes in your fake-vias? Obviously not a problem for any real board vias, but these are supposed to be vent holes too, right? Seems like that PTH pad you place could have the bottom soldermask drawn as well. Like, if you're using .3mm via hole, you'd place a .4mm pad with .3mm hole, soldermasked both sides. Won't matter at all on top, because of the larger footprint pad up there, but the bottom will be clear of mask just in case.


Cory Parsnipson posted:

My headache screams in a shrill howl that fills the room, piercing my vision with red pulsing spears. I clench my hands against my head even harder. The room blurs and undulates and I fall through the floor.

:ohdear:

Cory Parsnipson
Nov 15, 2015
The puckered rear end in a top hat of spacetime engulfs me.



I’m sucked through a pin sized hole with such force and speed that it stretches me into a single dimensional string of atoms. I emerge into an elaborate backdrop of cosmic radiation and dust. I snap back to normal like a rubber band breaking the sound barrier. Waves of pain reverberate throughout my body. I see reticulated patterns of light and energy dance in the farthest corners of the universe. Glittering fractals of space dust and migrating ice particles cut complex shimmering patterns into every quadrant of space. I start spinning. I spin and spin and spin. I spin so fast that the stars and the planets meld into a kaleidoscopic blur.



The colors and light reach into me as I spin ever faster and more out of control. I feel warm and blissful. Suddenly everything starts to make sense. Knowledge. Concepts like time and space and velocity no longer apply. I view the entire Earth, every point simultaneously, comprehending every motion, every movement of every molecule.










I can feel all the moments of my life coming together, past, present, and future. I examine each and every single one with my full attention, studying nuances of meaning and observing the cycle of life before unceremoniously discarding them when there is nothing left to understand. Memories and knowledge slough off of me like a dying star ejecting shells of hydrogen. I slowly forget everything until there is nothing left. I don’t need these memories anymore.



I assume the fetal position, shrinking as each layer of essence leaves my being. As my mind and the universe around me empties, I hear the shrill howl from before. It’s faint, far off in the distance. I could hear it wandering back and forth, eventually getting closer and louder until it settles inside me and fills my entire space. I realize the sound is me and I’m screaming. I have no reason to scream anymore.

I stop eviscerating. There is so little left of me that I am now the size and shape of a small toddler. I am only a feeling. I am the platonic idea of being--save only for a single-minded expression of desire that cannot be put to words. I understand now. I must rid myself of all worldly attachments and only then can I be free. I understand what I must do now.



S P A R K
J O Y


I fly faster than the speed of light through deep space, propelling myself with considerable telekinetic power. The surrounding molecules melt away on contact. I leave behind a trail of continuous nuclear explosions. I hurtle towards the Earth careening in on a specific location on the west coast of the United States. I slow my approach to human comprehensible speeds to preserve the delicate balance of the small planet. I descend like a plane, watching small trees and buildings grow larger until they no longer look like toys. I reach my apartment and I float down to look at the screen on my computer. I manipulate each individual electron to press the red “x” button on the window labelled “KiCAD”.


Goo goo ga ga.

Cory Parsnipson
Nov 15, 2015
Third time’s the charm

Ok wow, that was something. So I had a small realization... It’s become pretty clear that I am skipping quite a few steps ahead going on to the PCB design, and I was quite a few steps behind trying to make everything by hand using cardboard, paper, and glue. Why am I spending so much time fretting over getting everything lined up and nice and neat when I don’t even have a working prototype in front of me? The PCB should be for later. I’m going to put this away for now and come back to it when the time is right. All the stuff will be on github (https://github.com/CoryParsnipson/rpi-shell-v1) and it’s not going anywhere.

Right now I should make portions of the enclosure and start wiring the guts together with regular ole 22AWG solid core wire.

Working on the dpad… again

Ok so I could harvest a dpad pcb from an existing controller. Let’s see… I got a couple PS4 and PS3 controllers each, a spare set of joycons and a 3DS. I’m still using all of these things so I don’t really want to rip any of it apart... I also didn’t feel like shopping for a broken controller just for this. The quickest and easiest way would be to use what I have on hand. And luckily that includes a 3d printer. So let’s try...



Hmmm… 3 iterations later and I’m dubious that this is going to go well. The plan was to cut tape to fit in the indented areas, but man, I don’t want to do that anymore. This doesn’t spark joy. Let’s toss it.

By the way, those little round pegs were made to hold 22AWG wire in place and they happen to work really, really well. They fit in with a nice snap like a lego kit. Gonna use that in other places.

More low tech

I should just use tactile switches for now and be done with it. What’s even the difference? I had to look it up and the advantages of metal dome switches over tactile switches is two fold:

1. They are very compact and can still integrate directly into the PCB.
2. They are more reliable and have a lifespan that’s an order of magnitude higher than tactile switches. (Snaptron lists most of their domes as having >1,000,000 presses while the omrons I have are estimated at >100,000.)

Ok so at this point, I can forget about using dome switches because I’m not at the point where I’m worrying about space and reliability. I don’t have any hard data but I’m sure 100,000 button presses will last me at least a few years. I can do this later when I’m trying to iterate on a working design. Also, the tactile switches give an equally satisfying click when the buttons are pressed, so there’s no loss in sensation there. I made a quick slab to hold the switches in a very specific pattern:






The fastening arm was replaced with snap in pegs on the undercarriage part

Ok sweet. I also want to put in a piece on the top to hold the dpad in place. Ok so about this piece, it can either morph into a template for the dpad hole on the exterior case, or it can remain its own piece that goes underneath the exterior of the enclosure. That second one would be redundant, but I want to keep it as a separate piece because I think it would be nice to have a "chassis" that will hold everything (including the buttons) in place even when the enclosure is taken off. I'm imagining maybe that replacing the case would happen often because I could make a lot of different colored cases like the 3DS does or at least I might be taking it apart often to replace the RPI or other components.


A long day of prototyping later…



The dpad jig is loving solved for now. I think the next step is to work on the thumbstick holder and then part of the frame to hold other parts and the screen in place.


Just as planned

Oh and by the way, I’m keeping the stl’s and models (made in FreeCAD) on github too. https://github.com/CoryParsnipson/rpi-proto-1

Cory Parsnipson fucked around with this message at 21:41 on Apr 29, 2021

Cory Parsnipson
Nov 15, 2015

babyeatingpsychopath posted:

I think the KiCAD forums get a bit full of themselves. You personally know that you're using a 2-layer board for this d-pad, so you can just make your plated through-hole in the center of your pad. I don't see how this isn't a via? Nomenclature?

I dug around in my search history to find it again: https://electronics.stackexchange.com/questions/547652/kicad-addting-a-micro-via-to-a-footprint I mean, I guess it's mostly just nomenclature, but I also don't know exactly what a via is other than a small hole through the board? I called it a "hack" since they say you can't put a via as recognized by the program in a footprint, but if a through hole is basically the same thing then yes it is possible. Also I wouldn't have thought to use a through-hole pad in place of a via until I read about it in the thread so that is also another reason why I figured there's a difference.

babyeatingpsychopath posted:

Will having a solid solder mask on the back cover the vent holes in your fake-vias? Obviously not a problem for any real board vias, but these are supposed to be vent holes too, right? Seems like that PTH pad you place could have the bottom soldermask drawn as well. Like, if you're using .3mm via hole, you'd place a .4mm pad with .3mm hole, soldermasked both sides. Won't matter at all on top, because of the larger footprint pad up there, but the bottom will be clear of mask just in case.

Oh, good catch on the solder mask. I'll add that in so I don't forget to do it when I come back to it.

BlackTie
Oct 23, 2008

Cory Parsnipson posted:

I dug around in my search history to find it again: https://electronics.stackexchange.com/questions/547652/kicad-addting-a-micro-via-to-a-footprint I mean, I guess it's mostly just nomenclature, but I also don't know exactly what a via is other than a small hole through the board? I called it a "hack" since they say you can't put a via as recognized by the program in a footprint, but if a through hole is basically the same thing then yes it is possible. Also I wouldn't have thought to use a through-hole pad in place of a via until I read about it in the thread so that is also another reason why I figured there's a difference.

I don't use KiCAD, but it seems that the reply to the stackexchange post is referring to having buried vias (vias that go from one internal layer to another internal layer without them being accessible on the top or bottom), not vias in general. Look at the image in this page to see what they mean. You can totally have vias in your footprints.

Cory Parsnipson
Nov 15, 2015
Ok. I think I'm making things more confusing than they need to be.
  1. Yes, you can make a through-hole via in a footprint, by using a plated through-hole pad with no label and with the pad equal to or just slightly larger than the hole diameter.
  2. No, you can't make a blind or buried via in a footprint.
I was saying it's a hack to put a through-hole via in a footprint by using a through-hole pad because the software wouldn't recognize the through-hole you made as a via. in KiCAD there is a button in PCBnew called "Place Via" but that's not available in the footprint editor. Taking a look at the picture you linked, I suppose if it looks and sounds like a via, it is a via.

Cory Parsnipson
Nov 15, 2015
Here's an attempt to making some sort of mounting block for the thumbstick and breakout board:





I've not given much thought to how everything is going to connect together. But I'm toying with the idea of making this one big piece together with the dpad and then fastening it all to a "chassis" like how they make some kinds of pickup trucks. I think I need to learn how to design using supports because it's not looking like I'll be able to avoid them for much longer.

e. took a look at the inside of a joycon again. It uses two M1.6 (0.063") screws with 0.35mm pitch and they're about 3.5mm tall for future reference. It'll be helpful if I bought screws that were much longer in case I decide to put a nut on the other side instead of having it tap directly into the plastic.

Cory Parsnipson fucked around with this message at 21:11 on May 2, 2021

babyeatingpsychopath
Oct 28, 2000
Forum Veteran


You are using a 3d printer in a way that makes me very happy. Your designs look great and are wonderfully functional.


This is pro AF; it took me a few seconds of HARD looking to determine it wasn't a factory part. Amazing work.

As far as supports go, see how good your slicer is at supporting stuff before you worry about throwing them into your design.

Tapping into plastic: Don't worry about it too much. It's plenty strong if your screw is long enough. Especially M1.6. If you put a 1.5mm hole in your design then you'll get a nice solid wall to thread into. If you have one, you can drill and tap with an actual tap kit. Above M6, you can model the threads into the part directly.

Cory Parsnipson
Nov 15, 2015
I believe that would be the Prusa doing it's thing. :smugdog: Up close the pieces have pretty noticeable elephant's foot that I'm trying to calibrate away and I think the lines on the bottom layer are kind of gross looking. That's probably why they're so hellbent on moving away from the smooth PEI sheet, which works perfectly and is made of literal magic. Tapping into the plastic would work well enough, but also I need to remember to look around for how durable it will be under repeated screwing/unscrewings. If someone ends up taking the case off and putting it back on once a week, I don't think it would be very pleasant if the threaded holes wore out. That's a really high frequency but within the realm of possibility imo.

I made a thumbstick-v2 that is the other design but flipped over. I think this uses less material and has less unnecessary mass to it, though it requires printing with support.





I thought I could get away with one piece but I needed to add some pegs and a bottom piece to hold everything in place.





Prusa slicer is a bit wonky when it comes to supports. It printed a bit of the corner in mid-air, which ended up as a tiny bit of spaghetti on the side in the photo. I found you can adjust the supports to be a bit better by manually painting on the supports before slicing. Also it appears that the texture of the supported layer is not that great, as expected.





I think it is possible to consolidate the thumbstick holder and dpad jig into one big piece. The underside of the dpad jig and the bottom of the thumbstick holder can also be combined. The good news is that it means I could print the part without supports again if I go with the second orientation. I haven't decided which way I want to combine them yet but probably favoring the second one. Also I can get rid of the pegs ASAP and replace them with some sturdy screw holes.

Cory Parsnipson fucked around with this message at 07:31 on May 5, 2021

babyeatingpsychopath
Oct 28, 2000
Forum Veteran


https://www.mcmaster.com/inserts/heat-set-inserts-for-plastic-7/

Plastic inserts. Either drill or print your hole a nominal diameter, then press these in with a soldering iron and you have a permanent brass thread.

https://hackaday.com/2019/02/28/threading-3d-printed-parts-how-to-use-heat-set-inserts/

Cory Parsnipson
Nov 15, 2015
I'll pick up a couple of those when I order nuts and bolts off mcmaster to experiment. They look a bit pricey and complicate the case-making procedure so it would be good to reserve them for the important "load-bearing" screws holding the case and chassis together. And then maybe having a mix of trapped nut or just tapping directly into the plastic for the rest. Gonna try going all-in on the latter two methods first and see if they are sufficient. They look really cool, though. It gives the 3d printed part a "premium" feel to it.

Shoulder Buttons Jig

This was quite a challenge... I had a lot of trouble visualizing the basic shape that I needed to get in my head if I wanted to use the 3DS shoulder buttons. The ridges that need to be on the case that go around the lip of the buttons aren't on a single plane. Instead, the bottom lip is about 0.5mm inset and then the ridge going over the top requires a large, curvy bridge that hovers over thin air. I decided to create my own buttons with a simpler shape and spent a considerable amount of time scratching out possible ideas on paper. That really didn't get me anywhere so I started noodling around in FreeCAD just to get something down.



The first version is kind of a mess. As you can see in the pic above, the fastening peg is so long it snapped off after one use and the backing piece is flexible and still rotates a little when it's fastened into the hole.



The buttons I made were underwhelming too in a cosmetic sense. The grooved text gets lost in the noise of the 3d printing texture on the top of the buttons. For the final thing, maybe I will look into making them out of resin like those people who make custom keyboard keycaps. Maybe even make the whole outer casing out of it too? Dunno anything about resin, it's probably a huge pain in the rear end.

*googles "How to make Resin Artisan Keycaps Getting Started"*





:stare: Ah yes by "resin" they mean that kind of resin. Ok f-that. It looks like quite an investment. It doesn't look like a good idea to get into this until I'm trying to min-max the quality. If I can get that far. Yet another problem for future me.

Left Shoulder Buttons Version 2

Now that I had something to look at the spin around, I was inspired to make a different design that is cut in such a way to make it easier to 3d print.





Much sturdier, but still overcomplicated. It's really cool seeing my idea come together though...

https://i.imgur.com/MzCgFJ2.mp4
They're very clicky (view the video on Imgur for sound). They're actually probably too loud. The cool thing is that now switching out my own buttons with the 3ds buttons doesn't seem so difficult now. I have some ideas on how to modify the button holes to work with the printer without having to throw out of the rest of the design. I am also going to save that for later because now that I have all the buttons figured out on the left side, I want to fuse everything together.

Next: Left controller chassis mount



Save for the select button, everything is encased and laid out here in roughly their final relative positioning. Each of these parts is basically made up of 2 pieces, a top and bottom. Now I gotta fuse all the top pieces together and all the bottom pieces together, and then make the housing for the select button and I'll have the interior of the left controller done.

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

Awesome, you're obviously either a very quick learner or talented to start with.

For the surface of those buttons try enabling ironing, you could also try a different top surface pattern which will disguise the text less. You may simply need a wider gap for the text.

Cory Parsnipson
Nov 15, 2015
I'm rear end-deep in this poo poo, bro. I'm getting hooked on solids modelling the way people get sucked into minecraft. I just see things in blocks and simple convex polygons and cutouts and negative space now. Man people should really try getting a 3d printer and learning to create models because it's like crafting in a video game except real things pop out when you're done. I can't believe that such a short, engaging feedback loop is possible with physical design. That's what I like about programming where you can make a change and hit compile or refresh the page and try out your changes. Now I can model something and then about an hour later*, I have it in prototype gray right in front of me. It's like I just beamed an idea in my head directly into a TV Willy Wonka style.

Also, whoa, that's interesting. I will try ironing the tops of the buttons and see how it goes.

*less if I use the rougher settings

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

Cory Parsnipson posted:

Man people should really try getting a 3d printer and learning to create models because it's like crafting in a video game except real things pop out when you're done.

Absolutely onboard with you there, I love looking at problems, visualising the solutions then handing it over a couple of hours later.

Cory Parsnipson
Nov 15, 2015
After a couple months of looking and thinking and not pressing the order button, I've finally pressed the order button. I think it's time to think about fasteners.


Saving this for later...

It's kind of annoying that they only sell in relatively large quantities, but I guess it would be kind of stupid to mail someone, like, 5 nuts and bolts.

I'm using M1.6 0.35mm pitch screws and nuts and fasteners because that's what the joycon thumbstick uses and using fewer different types of parts is easier. I bought the 5mm long ones instead of the 4mm ones, but going even longer might have been more helpful. The joy con screws actually have a flat head and not a 45 degree countersink on them. That's ok because it's only 0.5mm tall so I can just leave it sticking out in certain places. The countersink will actually be very helpful for 3d printing stuff. The M2.5 nuts are there for me to fasten the LCD screen to a 3d printed part. The OSOYOO screen has 4 of these nuts held in place by the LCD controller PCB and I can't remove them without taking everything apart. I could only get a minimum of 100 of these, so I hope I can find a use for the rest of them later. Also I said I was gonna pick up a couple inserts, but the ones I wanted only came in quantities of 100... I'm really curious to try them out though so maybe I'll go overboard and bury them in everything. Looking at my part and how much clearance I need seems to present some challenges. I might need to widen the design in some areas to make room. For instance...



The top plate with all 3 pieces fused together is coming together nicely. There's a few places with enough room to put a heat set insert but a whole bunch of areas that I need to fasten that might not be structurally sound. This might require me to remake some portions of it. And speaking of that, I feel like I'm running into the limitations of FreeCAD. A piece of this complexity is causing my aging laptop to lag real hard whenever I add a constraint. More importantly, I think the biggest thing that's giving me problems is the "topological naming" issue*. Basically, when you need to change something in your part, it shuffles all the ID's of the faces and edges and stuff around and that breaks all the steps that come after. Making an edit usually involves going through everything step by step and making minor adjustments. It's really slow. I've had to rebuild an entire part three or four times this way. Sometimes it feels like they made a CAD program that lets you create models, but not edit them. I haven't quite hit my limit for trying out Fusion360 or Solidworks, but I might be getting there..

*don't even think about bringing it up to a FreeCAD dev lest you find yourself in the middle of a piss fight; I'd like to take this opportunity to once again reflect on what absolute horseshit the FreeCAD forums are.

Cory Parsnipson
Nov 15, 2015
I modeled the bottom plate and a new thicker, stronger dpad holder and finally got everything printed out.


huehuehuehuehuehuehue

I cut my speeds in half and lowered the temp by 15 degrees and got a much higher quality print than I've ever gotten. As a result, it took 3 hours to print this, unfortunately.

Here's the left controller frame next to the screen.



Even with the bulky switches and 3d printed stuff in the way, I managed to get pretty close to the minimum vertical clearance. It's going to be somewhat wider than the mockup though.



Here I've put in the M1.6 screws and everything fits perfectly. Building the assembly in CAD first really saved me a lot of time by getting a lot of the obvious issues out of the way first. I used 9 screws just for this tiny section (my thumb is covering the last hole). This is really going to add up...

I still need to add a cover to the select button holder and turn on ironing and print out new shoulder buttons. I'm going to do that next. Perversely enough, right when I was finishing these pieces up, it occurred to me that the benefits of having an inner frame are quite dubious if there's no PCB to hold the rest of the parts in place. I think that if I fused the top plate into the front of the enclosure, I can do this with less pieces, easier modeling, and stronger structures. Also I'm really thinking that it'll be a good idea to re-separate the plates into thumbstick/dpad and shoulder buttons again. Gonna stick with this design and build out everything and then revise later. I find that it's much easier to edit and re-arrange things than to synthesize everything completely from nothing. A couple iterations down the line should iron out all these issues...

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

It really gives you an appreciation for industrial design and the complexity of a team designing a product from the ground up.

Cory Parsnipson
Nov 15, 2015

cakesmith handyman posted:

It really gives you an appreciation for industrial design and the complexity of a team designing a product from the ground up.

I used to look at people who did "product design" and think that all the stuff they did seemed like black magic. I remember this one guy who made his own barebones smart watch and that blew my mind (fake edit: here*). It feels really cool to look back and see that they were doing some sort of version of what I'm doing now. Also, I don't think I can yet comprehend the amount of work and iterations that go into making something like a macbook. Although, so far this is way more fun than what I normally do for work. It's so exciting to see an empty canvas and just daydream wildly about cool things to build and try out (and then get anxious as I design myself into a huge mess).

Holy loving shitballs, Batman!





The ironing really works! This prusa is starting to feel like one of those spy cars that have buttons for every specific situation. This is really cool! The camera captures all the reflections and imperfections, but actually the ironed parts look even smoother in real life.

Good enough



The select button holder is in place. It's... not my best work. The tiny superfluous piece is flimsy as hell and a pain in the rear end to screw in. It's not going to survive a second revision. I already have some ideas for improving the shoulder buttons area. Good enough for now. I get to move on to the frame to hold the controllers in line with the screen next.

* Man, when I first read this, there's the part where he just says "I 3d printed the case with woodfill" and then moves on, but now do I comprehend how difficult that is. I hear that woodfill nozzle clogs are pretty common, but also adding to the difficulty is that he managed to successfully print that shape he made and then got the wood grain effect in there and sanded everything down so you can't even see most of the infill lines, on a delta no less. I mean, I guess it's not that hard in the grand scheme of things, but there was a lot more work and experience put into it than I thought.

Cory Parsnipson
Nov 15, 2015
Chassis to hold controller halves and screen in place

Uhh, I made this?




Just as planned

I figured I should make something sensible and then see if it breaks/flexes and then reinforce the parts that break/flex until it doesn't break/flex anymore. This is only about half of the chassis. I wanted to print out this much to make sure everything fits and to see how to connect the left controller frame to the chassis.



The three columns that are sticking out in random directions are for fastening down a protoboard. This one is going to hold the Arduino and a bunch of diodes and wires for the controller circuitry. There's going to more columns to hold a second protoboard to the left for the speaker circuitry.



:thunk: Hmmmm....


One modification to the left controller bottom plate and 3d print later...


WALA

I don't think this is going to be a very strong connection. Mostly worried about forces from my hands bending the controllers out of alignment with the screen (on the axis going into and out of the screen). But then again, this isn't going to be design to be played without the case on it, and at that point there will be plenty of opportunities to reinforce it. Also, this whole design goes out the window the moment I decide to replace the LCD or put in a PCB, so it just needs to be good enough for the first prototype. I feel like there's an easier way to make a stronger frame. I'll figure it out eventually. :shrug:



Ok so now I gotta add on the pieces for the right hand side...



:thunk: :thunk: :thunk:

babyeatingpsychopath
Oct 28, 2000
Forum Veteran


I love everything you've done! The gray plastic looks so Nintendo; it's perfect.

Cory Parsnipson posted:

Good enough

The select button holder is in place. It's... not my best work. The tiny superfluous piece is flimsy as hell and a pain in the rear end to screw in. It's not going to survive a second revision.

There are two "extra" pins on those switches. Could you just fold those flat for mechanical retention for the switch instead of trying to secure it (flimsily) from the front?

Cory Parsnipson
Nov 15, 2015

babyeatingpsychopath posted:

I love everything you've done! The gray plastic looks so Nintendo; it's perfect.

Yeah! It's not quite the right shade of gray for Nintendo, but I like that it still makes it look like a prototype. Like an unpainted metal object or an untextured 3d model. I'm hoping that I can print all the parts in this color before the spool runs out, but if I don't, I'm thinking of maybe picking up another spool of galaxy silver even though I have other colors already...

:thunk:

I've been kind of annoyed how deposition lines show up way more readily in this color but it's really grown on me.

babyeatingpsychopath posted:

There are two "extra" pins on those switches. Could you just fold those flat for mechanical retention for the switch instead of trying to secure it (flimsily) from the front?

I'm not sure if I completely follow, but this is what I visualized?



Then fold the tips of the pins sticking up back on top of the button cover? If not, my bad, let me know what you mean.



I think it's a neat idea. Unfortunately I didn't quite have the length from the pins to securely fasten the top in place. I also broke one of them off accidentally :sigh: Unless you mean fold them to hold the tactile switch itself in place? Holding the switch in place is no problem but the front fastener is more to hold the button cover and flexible silicon membrane in place.

Working on ABXY buttons

It's a good thing that I managed to arbitrarily pick the dpad to work on first, because it turns out the buttons were somewhat harder to make a jig for.



The jig is done! I think. There were some things about it that made it unexpectedly challenging. The first is this:



Looking at the inside of a joycon case, (the new 3DS XL or non-XL new 3DS are similar) you can see that the case has a thin lining around the buttons and small notches placed in unique positions for each button. This is to keep the buttons from spinning around inside the case. Originally the button holder I made didn't have anything to stop the buttons spinning around, but I was surprised at how often they ended upside down and how much it bothered me. The little notches are a bear to model in CAD and additionally are pretty gnarly to 3d print. Basically, they need to be a single 0.45x0.45mm dot that the printer lays down and that's exactly one nozzle width per side for me (I got a 0.4mm nozzle). This feature would be so small that it would melt the notch as it deposits more layers on top and lead to a lot of stringing. Most importantly, the feature will be very weak and snap off at the slightest provocation so that's a big no-no. To copy what Nintendo did would require a resolution that is juuust at the maximum my current 3d printer nozzle is capable of and also would require a stronger material than unannealed PLA. I also thought about whether or not the notches would be stronger if they were attached to a sidewall, but again, accurately printing the sidewall is really hard and also thinner than the 0.45mm that I can do.





After iterating back and forth a couple times, I decided to just use the flat part of the base to stop them from spinning. The freecad model has 3 small walls between each button hole (that have to be at most one nozzle width in size or else the buttons don't fit into the part). The ones on the diagonal are to keep the buttons in place and the ones at the perimeter push against the flat part of the base of the button to stop it from turning (see the second picture above. The outer edges of each button base is flat). There's still some wiggle room for the buttons to turn a little bit, but it works remarkably well.

I can forget about duplicating the notches completely, which are mostly there to make fitting the buttons into the right hole foolproof for works on the factory floor.

Cory Parsnipson fucked around with this message at 01:07 on May 24, 2021

babyeatingpsychopath
Oct 28, 2000
Forum Veteran


Cory Parsnipson posted:

I think it's a neat idea. Unfortunately I didn't quite have the length from the pins to securely fasten the top in place. I also broke one of them off accidentally :sigh: Unless you mean fold them to hold the tactile switch itself in place? Holding the switch in place is no problem but the front fastener is more to hold the button cover and flexible silicon membrane in place.

Ah. I meant to hold the switch.

Though, looking at that picture, maybe some thin wire to hold the membrane and button cover in place would work. There's going to be a case over top, right? Could something like blue tack or tape or a zip tie or silicone or... just hold the membrane and button cover in rough location until the front of the case goes on?

Cory Parsnipson
Nov 15, 2015

babyeatingpsychopath posted:

Ah. I meant to hold the switch.

Though, looking at that picture, maybe some thin wire to hold the membrane and button cover in place would work. There's going to be a case over top, right? Could something like blue tack or tape or a zip tie or silicone or... just hold the membrane and button cover in rough location until the front of the case goes on?

Yep all of that would work. I could even just put in a pocket in the case that will hold it place when the case goes on. I just added an arbitrary constraint that all the pieces must be held in place by only the frame that I'm too lazy to walk back on (though I might have to pick a workaround sooner rather than later). In hindsight that really should have been saved for a later iteration of the prototype.

Cory Parsnipson fucked around with this message at 02:33 on May 24, 2021

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

FYI a 0.2mm nozzle would solve that problem, but you don't want to be switching back and forth too often or trying to print large structural parts with it (merely due to speed).

Cory Parsnipson
Nov 15, 2015
Daemon in a Bottle

The day was overcast and moist. The weather was lovely enough to keep anyone in bed. I rolled to a stop in front of a lawn that had grass spread too thin on a bed of wet diarrhea mud. I took a candy cigarette out of my pocket and looked for my lighter before remembering that I didn’t need one. They had a two-story red brick colonial. It was a nice house, but something about it just didn’t sit right with me. I rang the bell and soon a wiry, dark-haired woman answered the door with a deer-stuck-in-headlights look that yielded as I introduced myself to an expression of deep sadness.

I sat on a leather couch in their dark living room.

“Can you explain the problem to me, ma’am?” I asked while looking down at my tiny notepad, pretending to take some notes. I scribbled a drawing of a little boat instead.

The woman wrung her hands nervously. “Please, help my boy. I need you to help my baby boy! He’s addicted to this… this ‘CAD’ software.”

“Cad software?”, I inquired with a raised eyebrow.

“CAD. I don’t know. C-A-D--CAD. That’s what he calls it. Everyday he wakes up and he sits in front of the computer with his little program and he just… stares at it and clicks things! All day he mumbles to himself, talking about extrusions and pockets or whatnot. He won’t sleep or eat. He won’t talk to me anymore. He hasn’t been to school for weeks. He won’t even play with his toys. He’s too busy making multi-segmented lofts out of complex cross sections and d-dimensioning a complex spline to fit a parametric enclosure or... whatever--I don’t even know what he’s saying. It’s madness!” Her voice broke as she said that and she welled up with tears.

“Don’t worry, ma’am. Everything is going to be okay. I see this all the time”. I stashed my notepad into the breastpocket of my trench coat and started up the stairs to the boy’s room.

Clearly and slowly, I spoke outside his door. “Hey, kid, why don’t we put the computer away for a while and have a little talk?” Nothing. I opened the door anyway and saw him transfixed.



“You have to go to school, buddy.” I waved my hand in front of his face to no effect. I left it there and he pushed my hand out of the way with an automatic motion of his arm. I thought for a minute about what to do, trying to find precisely the right words to say.

“Do you think that your all-encompassing obsession with solids modeling is due to your unconscious need to process the feelings of guilt and shame associated with your father leaving your mother? No matter what you do or how successful you become, you will never fill the hole left by an absent father figure.”



He turned and looked at me like I just stabbed him in the gut. The kid stood up out of his chair and walked over to his bed, mouse still in hand. His wired mouse dragged the monitor across his desk and it fell to the floor taking the rest of the computer with it. There was a loud clatter and the fallen computer parts yanked their power cords out of the wall sockets, abruptly cutting the power. The boy squatted in the corner, hugging his knees as he stared unblinkingly at the carpet, again entering a catatonic state.

I turned to go find the mother only to find that she was already standing there in the doorway with her arms crossed.

“Wow thanks, rear end in a top hat”, she glared. Clearly she was not amused.

I took the cigarette out of my mouth.

“No problem, ma’am. All in a day’s work.”

Cory Parsnipson
Nov 15, 2015

cakesmith handyman posted:

FYI a 0.2mm nozzle would solve that problem, but you don't want to be switching back and forth too often or trying to print large structural parts with it (merely due to speed).

When you say "you don't want to be switching back and forth too often" is it because it's just a huge pain in the rear end to take apart the extruder and then re-calibrate everything? Or are there other considerations?

Also, yeah, I don't really want to invest in a smaller nozzle if it's just to print this one part. My gut feeling says that I shouldn't really print features this small anyway to avoid having the parts become too brittle. When I switch over to PETG that might be a different story though. I am curious to see what kind of quality I can get out of miniatures from a 0.2mm nozzle. That might be fun to look into but later.

Cory Parsnipson
Nov 15, 2015
Hoo hoo hoo ooo ooo oo o





OOO OO OO O OO OOOK OKOOK OOKOKOOK



EEKK EEKEK EKE EEKE EKEK EK



I can barely control my monkey brain from the anticipation of finally putting together both controller halves and holding the whole thing in my hands.



Behold! The right controller parts. I thought I could just make a symmetric version of the left controller but then I forgot that the thumbstick wire only points in one direction and so I decided to rotate the breakout board by 90 degrees counter-clockwise. This took so much longer than expected. God, this was painful! Because I was getting impatient, I made a few mistakes and this required a couple of iterations of printing these parts, making corrections and small changes to mistakes I made initially. I ended up staying up really late a few days and skipping some meals just to try and "get this one last change done". CAD is a hell of a drug. Next I need to make the controller circuit and solder things together. The change of scenery is welcome. I was getting a little burnt out modeling little rectangles.



Look at 'er. She's a beaut, 'eh?

I think maybe I hyped this up to myself too much, because it's actually pretty uncomfortable to hold. Obviously this would be the case because there's nothing to grab onto near the bottom since the case is missing. But I think the buttons and thumbsticks are too far apart and too far down the controller. Gotta move those up in the next version. It's hard to get everything more compact than this because I'm using the big omron switches. I thought a lot of the 3ds components were unnecessarily small, but now it's really apparent why everything is the size it is.

Also, some miscellaneous notes about CAD/FreeCAD for when I come back to this to make the enclosure:

  • I think the controller frame pieces are too "overfitted". It's way too much effort to make these when simpler less form fitting shapes will do. I was being very conservative with the amount of mass on the parts because I didn't know how strong anything would be. Making the changes to the frame pieces is pretty high effort because all the walls are measured to fit all the parts pretty closely. Using less material and simpler shapes would be great the next time around.

  • Apparently, the design methodology in FreeCAD is to use base (XY, YZ, XZ) planes or datum planes to attach sketches to instead of existing geometry. I found this out from lurking around the FreeCAD forum for a while and seeing some douchebags make fun of n00bs for not doing this. It's strange because that's exactly the method that all the tutorials tell you how to make things. I gave it a tiiiny try by making a couple features and using the XY plane for all of them, but it still seemed to break everything when I went back and made a change to an earlier step, so this isn't a magic bullet or anything. Anyway, figuring out how to properly use FreeCAD would go a long way to making my models not read-only.

  • The right controller parts have a prusa slicer project file with everything laid out to be printed at the same time. I actually found that I needed to print the shoulder buttons separately to keep them from warping. Also related, the shoulder buttons jig I made doesn't tolerate warped shoulder buttons very well so I should alter the designs to make them more forgiving.

  • I'm again flip-flopping on whether or not the 5" screen is too big. Holding the two controllers and screen in my hands, I feel like the entire setup is too big. I don't know if I just need to get used to it, or if the screen is too big, or if the controllers are too big. I'll let this stew some more, but at this point, I think the way to go is to make the controllers more compact in all dimensions.

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

So an interesting concept I saw in a sci-fi somewhere was to have a load of switches and joysticks etc on the back of the unit, focused on using your fingers rather than your thumbs. The whole unit ends up thicker but not as wide? Super complex challenge version would be to have the controls fold flat or roll behind the unit for different ways of holding/playing, but that's more of a fun idea than a practical one.

Cory Parsnipson
Nov 15, 2015

cakesmith handyman posted:

So an interesting concept I saw in a sci-fi somewhere was to have a load of switches and joysticks etc on the back of the unit, focused on using your fingers rather than your thumbs. The whole unit ends up thicker but not as wide? Super complex challenge version would be to have the controls fold flat or roll behind the unit for different ways of holding/playing, but that's more of a fun idea than a practical one.

Dude that's awesome. I think it's a great idea because I've actually been playing my 3ds for a couple hour sessions while lying down in bed and it's making my wrists hurt trying to hold the thing. If the thumbsticks remain on the front and the rest of the buttons are on the back, you'd have a secure grip on the device that would be really comfortable. I think the only downside is that it might look unappealing or at least that's my un-neuroplastic brain that's used to the traditional gameboy look talking. I think it would be worth trying to make a version of this shell and seeing how well it works.

As for the multi-config idea, yeah that's tough. Totally not at the point where I can even begin planning how to do that one. But I did have a similar idea, because I had trouble deciding whether or not the thumbstick should go over the ABXY buttons. I thought it would be cool to have the front of the thumbstick and ABXY come in one piece and slot into the front of the device in such a way that you could swap out two versions (one with the thumbstick on top and one with the thumbstick on the bottom) depending on your preference or even the current game you're playing. I think you'd need to worry about dust or dirt getting in the cracks and the structural integrity of it. I wouldn't want the modularity at the expense of having the buttons slide around or rattle when I'm using it. There's too many variables I need to worry about to try this at the moment, but yeah this sounds like another cool thing to pursue after I have a baseline prototype (the foldable stuff and swappable plates, I mean).

Cory Parsnipson
Nov 15, 2015
I've been working on the controller logic this weekend and I think I've come across a good sign for the upcoming milestone. Beginning of wiring:



There's lots of diodes that I decided to arrange into a tight grid. Gonna have every hole next to each diode leading to a separate button. This took a while of planning and I still screwed it up and had to desolder a bunch of wires. Thankfully that wasn't as painful as I thought it would be.



Somehow the space on the board always disappears so fast... In this picture, I have the 4 row wires all hooked up to the Arduino and the two transistors partially wired up. I also went ahead and soldered the 4 switches that go to the dpad up too. As an aside, I decided to solder the Arduino and stereo decoder directly to the board because at $3 a pop, I think it should be fine to consider this one disposable if it gives me more vertical clearance. Besides I wired up the pin header on this one really weird so that really limits its reusability.

And here we arrive at the most difficult part, I think. I didn't explicitly plan out how the wires would go, but I also didn't expect things to be so cramped under the dpad. This is a real nightmare to line everything up and fit inside the dpad jig. I ended up going back to freecad and cutting the bottom plate of both sides into 2 pieces because it would just be too much to juggle between fitting all the switches in the holes, making sure the wires are out of the way, and trying to put the bottom plate back on while keeping the thumbstick and shoulder button switches are there too.



Yikes. Even with the dpad undercarriage as a separate piece, this took an hour to get everything lined up and shoved into the right spots.



Phew. I really, really don't want to have to do that a third time. Good thing I had already dusted off the Arduino key matrixing code I wrote because I uncovered a wiring mistake I made (hence my earlier comment about desoldering stuff). I think I'm going to do the right side in reverse (wiring up the switches, putting them into the controller frame and then wiring them to the board. This should be much easier. I did it the hard way on the left side because I thought it would be good to test the functionality before locking it in place, which requires the buttons to be completely soldered.

Some minor troubleshooting later and I have a working dpad!

https://i.imgur.com/KrrO2Ri.mp4

Man this feels good to have something working again. Also puts into perspective just how much more I have to go ahead of me... I think this highlights the benefits that a PCB would provide--compact-ness and less janky wiring. I don't know if I'm ready for that to be the next step but I feel like we are closer to it than before.



Here's a shot of the smaller bottom plates. I gotta replace the old ones when I wire everything else up. I can't wait to finish wiring up the thumbstick and hope that I didn't burn out the MOSFET during soldering. *knocks on wood*

PS: btw I uploaded the key matrix code to the models repository: https://github.com/CoryParsnipson/rpi-proto-1/tree/9b07807c459355df1a5d7aaae45ec9c3753eb8ae/code/controller. This repo is turning into storage for all types of assets going into the prototype.

Cory Parsnipson fucked around with this message at 09:35 on Jun 1, 2021

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

Well if you're planning on more wired iterations could you source some thinner gauge wire? What you're using looks overkill and is causing you space issues for sure.

Cory Parsnipson
Nov 15, 2015

cakesmith handyman posted:

Well if you're planning on more wired iterations could you source some thinner gauge wire? What you're using looks overkill and is causing you space issues for sure.

That's a good idea, thank you. I was actually going to stubbornly try and use this 2622 awg solid core wire I got from Amazon to feel like I didn't waste my money. The size is one thing, but the stiffness is also killing me and had me concerned about breaking off some leads if I jostled it around working on other things.

I dropped by a local electronics parts supplier (also surprised that one existed) and pick up some of these:


28 awg stranded wire. Who knew 1 size down would make such a big difference?

I think I'm going to redo the current button cross because I think this will make things much less miserable and that's good.

EDIT:

Here it is. I redid it a second time, cut the wires too short, and then had to redo it a third time. :suicide: But it works again.



This is much better. It only takes a few minutes to get the switches lined up in the holes and it flexes now, so it feels like it will play well when I have to go in and add more parts to it. Still a little concerned that the wires will snap if I jostle them too much, but if I'm careful I'm sure that won't happen.

EE:

whoops I thought it was 26 awg, it was 22 awg. Makes more sense now.

Cory Parsnipson fucked around with this message at 04:59 on Jun 2, 2021

cakesmith handyman
Jul 22, 2007

Pip-Pip old chap! Last one in is a rotten egg what what.

That looks a whole lot better, you could probably go much further too as current in those wires is going to be negligible? A quick Google turned up a load of tools for calculating trace width to awg conversion calculators but as there's a whole lot I don't know I'm not going to recommend one. I will say I've wired stuff up in the past with 0.15mm if it's just signals/switches and no active components, but I didn't do all the calculations, it just worked fine. I think that's about 34awg?

Anyway if it prototypes it's good enough.

Cory Parsnipson
Nov 15, 2015
Yeah I don't remember off the top of my head but I think it was around the order of 10-20 milli amps.

They did have spools of 30 awg wire but I didn't get that because it looked beyond what I could do with my current dexterity and really poor set of tools. The 28 gauge wires are a good size for now.

Adbot
ADBOT LOVES YOU

Cory Parsnipson
Nov 15, 2015
God damnit, I hit a speed bump.



Here's the thumbstick getting wired up.


Oh. My. Goooood...

The wiring is starting to get really hairy. I did not consider this phase at all. Definitely not keeping this around for the next version. The need for a PCB or something is obvious now. Gotta learn how to do that eventually...





All the wires sticking out make me feel like a mad scientist. These are some really cool pictures if I do say so myself. Here's everything wired up:





Ok so the good news is all the tactile switches are working perfectly. The bad news is that the thumbstick is all messed up. At first the analog values look like they were floating, but then I redid a couple solder joints and now it looks like a really noisy faint signal where the X and Y axes are assuming the same value for some reason (I went over the circuit a few times and I'm pretty sure the wiring between the two analog inputs is correct). Also the thumbstick button is not working too. When I press it, it gives me random values. This is the path involving the MOSFET so maybe I screwed something up there. I accidentally soldered the Schottky diode before the MOSFET instead of after it like in the cardboard schematic. I would say there shouldn't be a difference in functionality, but I don't know enough to be sure... :(

Now I gotta spend time to debug this. Blegh.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply