#Velocity's Macro Armpad and ring

1 messages · Page 1 of 1 (latest)

lime veldt
#

So, goal is to make a macro arm pad with attachable ring that has 12 body buttons, 4 ring buttons, 2 dials, on and off switch, and a small info screen displaying time, battery life, and if bluetooth is connected, as well as being compatible with an ipad to send macro commands

#

I think theres about 21 useable pins

#

For dials, I got 2 of these

#

And for the keypad, got this old keyswitch tester I've always wanted to turn into a macro pad

#

Im willing to accept all advice and criticisms, I'm not knowledgeable in electronics, not yet, so any help is great

#

If im good at anything, its 3d modeling

atomic swan
#

I may have missed it, but on a first run through I didn't see any explanation of a keypad matrix.

#

That page gives a really good description of exactly how they're wired, and how you work them.

#

The example they show has 16 keys using only 8 wires altogether. A good rule of thumb is to make the array as close to square as possible, that will tend to minimize the wire count.

#

e.g. for a 20 key matrix, you'd want to go 5 by 4, using 9 wires. You could do it 10 by 2, but that would be 12 wires: that's three more.

lime veldt
#

Currently testing some placements

#

So a keypad matrix needs good code to handle multiple buttons it seems?

atomic swan
#

It's not trivial. Not just the code, but the wiring as well. Think what would happen if the driver lines were "active high", meaning they have transistors that drive them both up and down. For any of the driver wires, only one of those is ever turned on at a time, so that's OK in isolation.

#

Now think what will happen if you drive one line low, and leave the others high, and then press two keys on a common output, but one connected to the low driver, and another to one of the highs.

#

That means you'd have one driver trying to pull the line high, and another trying to pull it low, effectively a short from vcc to ground through two transistors. That's bad.

#

The usual solution is to use single ended drivers with pullup resistors to vcc. In that scenario, pressing two keys at once doesn't cause a dangeous short.

#

All that said, the programming for it needs to be done carefully to handle multiple keys being pressed at once.

atomic swan
#

Then you need to worry about de-bounce, since many switches don't have a perfect switch, they open and close a few times before closing permanently. Again, there's many explanations of that, but it is something to be aware of.

#

That said, all this is well documented if you take the time to look on the web, and ask here. Many of us (me included) have made one or more of these mistakes in the past, and can provide help with getting your setup going.

lime veldt
#

I hope to get it made up right, if i can use less cables, saving ports and room, it be perfect

atomic swan
#

Another random thought. When making the case, make the sides shorter, and then rather than have it be an inverted U shape, make it just a gentle curve. Then put some slots in the sides so you can thread a padded cloth band though it, using velcro to hold it closed. That'll "breathe" a lot better, so your wrist won't get so hot and sweaty. Think like a NATO watch band but on major steroids.

lime veldt
#

Oh the part that sits on the arm would be the bottom plate, its only curved on the part that touches my arm, the part that connects to the rest would be flat

lime veldt
#

Chosen screen

lime veldt
#

Now to figure out how to fit the controller, battery and wires

lime veldt
#

So, looks like I may look into a custom PCB for this whole system

#

This is already more advanced then I think I could ever make

lime veldt
#

Current body design, placement, size, etc etc

lime veldt
#

Back on the arm pad design, but i scrapped most of the old design for this

#

Using stemma will make life easier, as well as using low profile switches will make the height and weight less of an worry, making the whole design more slim