-I'd need some sort of knob that cycles through the color spectrum as you rotate it.
Quote-I'd need some sort of knob that cycles through the color spectrum as you rotate it.Good luck with this part. There is no a linear relationship between R, G, and B values that you can calculate based on a desired position along the spectrum.
Or you can use a (mini/micro) joystick or touch-area with white at center and shades all around.
It depends entirely on how your code interprets stick input. Read the input as force/relative-movement instead of absolute position and center stick == stop where you are. That's how the keyboard nub mouse on my ancient Thinkpad works. I quit pushing it and the cursor stops, it doesn't go to screen center.
Using beam interrupt or capacitive sensors you wouldn't need a physical stick, just a small area to wiggle a finger in or over.
Assuming that you'll have "something" to change the brightness with, one more control, e.g. a rotary encoder is enough to change along a "spectrum".Instead of the usual RGB color space use the HSV (Hue, Saturation, Value) model. Changing the Hue would change the color and Value the brightness. You'd have to clamp Saturation.
Quote from: GoForSmoke on Sep 11, 2012, 01:02 amIt depends entirely on how your code interprets stick input. Read the input as force/relative-movement instead of absolute position and center stick == stop where you are. That's how the keyboard nub mouse on my ancient Thinkpad works. I quit pushing it and the cursor stops, it doesn't go to screen center.True enough, but to address this in code the input device's behavior and conditions within the car have to be considered. There's enough vibration or changes in speed or direction during normal driving to cause a roughly inch tall "thumb" joystick to move, possibly enough to cause unwanted input while using a freeway ramp, hitting a bump, etc... So for that type of input device there either needs to be a "dead zone" larger than motion not directly caused by the user, or a way to enable the input only when it is wanted (as I previously described). Of course, not all input devices have this problem. Tiny joysticks like the Thinkpad nubs, or tumb slide sticks wouldn't have the mass to generate enough inertia to move during normal driving. Similarly your other two suggestions below, or a touch pad, would be a good way to avoid this concern all together.
Once again, something easily taken care of in software. A stick only tells how far from center it is. The rest is completely interpretation, including dead zone. Best way to start is to not assume it must 'act' like other stick user-interfaces.
I'd rather go with something that has no physical stick to have no moving parts to break or wear. A point of light that if a finger is held a bit above or to the side would change values for RGB per second (or 10th of a second) that the finger is held there, using the color of the dash led as feedback. Or 3 lights, R G & B and holding a finger right over the light makes that color element brighter and holding a finger close but not over makes it dimmer, though that would be slower and maybe less or more intuitive depending on user concepts.
There's got to be at least 20 variations on position sensing to output, all of them with limits to engineer around.I'm just throwing suggestions and hope the main one is to think freely about input and application, to not ape what has been done but see what you actually get and make a leap from there to what suits the user.