Best switch encoders according to redditors

We found 16 Reddit comments discussing the best switch encoders. We ranked the 4 resulting products by number of redditors who mentioned them. Here are the top 20.

Next page

Top Reddit comments about Switch Encoders:

u/Alaeron · 5 pointsr/starcitizen

After seeing a couple posts of people's custom button boxes on reddit I knew I had found my next project. I've been doing quite a bit of Arduino and small electronics lately, and this was the perfect fit. So off I went to Amazon, ordered a bunch of stuff I thought might be cool / useful and started piecing things together. Took a few weekends of working on it here and there, the most time consuming part just being tediously soldering and wiring the 38 inputs.

​

Was originally going to set it into some sort of project enclosure, but ended up getting impatient and just mounting it to two pieces of plywood with some feet. It added enough heft to it that I can lift the switch guard and rotate the somewhat stiff selector without issue. Eventually I'll get a better enclosure for it, probably grab one off of Hammond mfg or get someone with a larger 3D printer to make one. The Engine Start and black/red button (that I'm going to use for quantum jump) have leds in them that I don't currently have hooked up to the Arduino, but once we get some sort of API into Star Citizen hopefully I can tie them to engine state and jump spool/ready state.

​

The controls are:

Power on, flight ready, 3 misc buttons, zoom rotary encoder, 3 misc buttons, quantum spool, quantum jump

Hat switch + center for shield distribution and reset, engine, shield, and thruster power switches, power distribution profile selector, misc selector

Flare Fire button, flare select, 7 misc toggle switches, self destruct switch, eject switch.

​

I mapped everything to a button in the Arduino code (no rotary encoder as zoom in this screenshot) so that I can easily bind to functions in Star Citizen. Unfortunately without an API this means the switch positions can get out of sync with the actual ship status easily. If by the time of release / they make an API there still isn't a way to read / set state by API then I'll probably make a new version with only toggle buttons.

​

Code Libraries

PCF8574_library for interfacing with the IO expanders
- https://github.com/xreef/PCF8574_library

ArduinoJoystickLibrary for emulating a joystick on windows
- https://github.com/MHeironimus/ArduinoJoystickLibrary/

​

Useful Instructables

Joystick Library
- https://www.instructables.com/id/Create-a-Joystick-Using-the-Arduino-Joystick-Libra/

PCF8574
- https://www.instructables.com/id/PCF8574-GPIO-Extender-With-Arduino-and-NodeMCU/

​

Parts List

1 Terminal Expansion Board - https://www.amazon.com/gp/product/B07PGDWJ2V

3 PCF8574 IO Expansion Board - https://www.amazon.com/gp/product/B07B95LMLQ

1 Rotary Encoder - https://www.amazon.com/gp/product/B07DM2YMT4

1 4 Position Rotary Selector - https://www.amazon.com/gp/product/B07JN2967L

1 Red Ring Momentary Push Button - https://www.amazon.com/gp/product/B017ILTX60

1 Engine Start Momentary Push Button - https://www.amazon.com/gp/product/B07MK2394L

5 Heavy Duty Toggle Switch - https://www.amazon.com/gp/product/B078KBC5VH

1 12 Position Rotary Switch - https://www.amazon.com/gp/product/B074WMC9C8

1 5-Channel Rocker - https://www.amazon.com/gp/product/B07K5PFPNC

1 Arduino Micro - https://www.amazon.com/gp/product/B00AFY2S56

7 Red/Black Momentary Push Buttons - https://www.amazon.com/gp/product/B07BD2D96W

2 Red Cover Toggle Switches - https://www.amazon.com/gp/product/B07BD2D96W

8 Small Toggle Switches - https://www.amazon.com/gp/product/B013DZB6CO

u/BlankSourceCode · 4 pointsr/MechanicalKeyboards

Here is a copy and paste from an older post I had on it:

I basically ordered one from Amazon (well a pack of 5 I guess since that's the smallest they come in). This one: https://smile.amazon.com/gp/aw/d/B07DM2YMT4

Snipped off the 2 extra legs that are supposed to hold it to the board since they just got in the way. Then I soldered the two pins for the push button directly to the PCB using the regular switch holes. (Had to bend the other 3 pins up or if the way but after that they fit great). My PCB was the standard Lily58 from littlekeyboards.com (not the pro) so I only know they line up well on that board. (EDIT: actually with this build I'm now using the pro, the two push button pins don't line up nearly as well due to the board expecting hotswap sockets, but you can just solder a little wire between the pins and board, so it works ok for the pro too.)
The encoder itself already fit through the switch hole in the case so nothing needed there.

After that you need to attach the other 3 pins for the encoder to the PCB. The middle one I attached to ground by trailing a wire from the center pin the the ground pad for the underglow on the top side of the PCB. I lined it up so it ran directly between the switches and it covered by the case so you can't see it.

For the remaining 2 pins I soldered longer wires and fed them to the underside of the PCB through the hole for the case standoffs. Still plenty of room in the hole for the actual brass standoff. Then I ran them to the pro micro and soldered them to pins F4 and F5 (which I'm pretty sure went being used)

All that's left was to add a bit of glue to hold it to the board and add the config for encoder to my qmk using pins F4 and F5.

I'm happy with how it turned out.

Hope that helps.

u/arnavkomaragiri · 3 pointsr/FTC

Outside rev through bore encoders and the signwise encoders ( https://www.amazon.com/Signswise-Incremental-Encoder-Dc5-24v-Voltage/dp/B00UTIFCVA ), there aren't really many good cheap dead wheel encoders. However, keep in mind you don't really need dead wheels. Ignoring the fact that FTC auto can be accomplished using 1d motor encoders and some basic gyro logic, dead wheels only really allow you to move at max speed and still localize. I'd recommend looking at https://github.com/acmerobotics/road-runner/blob/master/doc/pdf/Mobile_Robot_Kinematics_for_FTC.pdf to see how most drivetrain encoders can be used to solve for a position on the field. The only downside to this method is that you can't move at max speed for mecanum. All the other drivetrain styles are completely fine. I guess the question you need to ask yourself is whether you really need to move at max speed in autonomous, which is only really advantageous for autonomous cycles and automating teleop. If you don't need that degree of precision, run the motor encoders. Teams like 5029 have had great success running just pure motor encoder odometry, having one of the cleanest autos at the OH state championships. Unless you need that extra 2 in/s, you won't feel any difference.

u/LastSpark7 · 3 pointsr/FTC

We are running these, they're a little big, but they're cheap, with a 6mm D shaft, and works just fine

u/Kizzycocoa · 1 pointr/diyelectronics

It would seem a friend of mine is versed in Arduino/C# coding, and is able to sort that out!

All I'd need is a part list. Are you able to help me out there? If so, this charity project could still go forward!

Will these do, and is there anything else I'd need? Also, how do I get it to be battery-powered?

Arduino, Light Strips, Toggle Button and the Dial.

RE Soldering, I notice a lot of these have metal strips on them. Particularly the button, you notice it prominently. do you just solder wire onto them, and treat them like any other component?

u/jimjacksonsjamboree · 1 pointr/raspberry_pi

So, if I'm understanding you correctly, you simply want position feedback, and not the ability to control motors? If so, I have had good results with these encoders. They are simple and fairly inexpensive. They are relative, which means they do not report a position inasmuch as they report a rotation. It is up to you to keep track of their rotation and to zero it out. A known position + a rotation gives you a known position, but you will have to zeroize them when you start up. this could be bad if your system crashes during a performance, you'll have to physically zero out the projectors position. so you may want to look at an absolute encoder, such as this one, which I've never used.

The other problem you will run into is that unless the encoder is mounted directly onto your shaft, you will have to use a transmission of some type (belt and pulley, gear, etc) to rotate the encoder. You will have to measure the turn ratio of shaft to encoder to ensure that the values you are getting back are accurate. For example, if there is a gear reduction of some amount, your encoder will spin fewer times than your shaft, give you bad values. Since I dont really understand where you will mount it, that may or may not be an issue.

Now, others in this thread are telling you to look into an arduino, but they do not have networking capabilities, so by the time you buy a network shield and code up a working osc/udp translation layer (there's probably a library for it, but who knows), you will have spent more time and money than if you just went with the pi, in my humble opinion. Python can run osc and python is very nice for beginners, compared to c++ which you'd be using on an arduino.

u/safetysandals · 1 pointr/arduino

Ha, right :-)

Tried it out with two types of encoder: This one, and something like this cheap-o style, though there could be some differences. Not fast at all in either case, just turning it with my fingers.

Hmm, maybe I'll give it a try with no debounce. I assumed it was needed, but maybe not.

Thanks!

u/dittonetic · 1 pointr/crankshaft

I figured all rotary encoders were the same. I'm fairly new to them, anyways I'm using these ones: https://www.amazon.com/Gufastore-Encoder-Anti-Static-Tweezers-Arduino/dp/B07BN3DGBS/ref=sr_1_1_sspa?ie=UTF8&qid=1536956359&sr=8-1-spons&keywords=rotary+encoder&psc=1

So all this program is doing is converting the rotary encoder directional input and allowing me to control media through the gpio header on the rpi. The gpio ability is already in crankshaft but hooking up a rotary encoder directly to the pi is exciting and doesn't work as you'd want it to. So this simulates pushing a button, or simply grounding the gpio pin you want to when you dial the encoder left or right.

At the top of the script is a sorta wiring guide for how it's currently scripted. I hook up the CLK and DT from the encoder to pins 7 & 8 on the pro micro, these are essentially the left and right rotational direction of the encoder. SW is connected to pin 9, this is pushing the rotary encoder button (center click like a joystick) - these are the inputs on the pro micro. Pins 4, 5 and 6 on the pro micro are the outputs and they output directly to the raspberry pi GPIO header. 5 and 6 go to the predefined vol up/down pins, and then you need to add the play/pause or whatever function you want to the gpio config on the rpi SD card.

I take the 5v out from the RPI gpio header to power the arduino, and that all connects to the + connection on the rotary encoder. Same with ground, to arduino and to the encoders. Once you program the arduino you don't need to plug it in via usb again. It gets it's power direct from the rpi.

​

I'll be using two rotary encoders (there are enough pins on the rpi to do two of these, if you wanted to have next/previous track on another encoder) so I'll have a copy of my GPIO config and installation pictures this weekend.

u/joe0400 · 1 pointr/3Dprinting

It's a potentiometer knob.

Cylewet 5Pcs 360 Degree Rotary Encoder Code Switch Digital Potentiometer with Push Button 5 Pins and Knob Cap for Arduino (Pack of 5) CYT1100 https://www.amazon.com/dp/B07DM2YMT4/ref=cm_sw_r_cp_apa_i_gnoqDbT62PMJE