If you need want have-to-have a custom dial, scale, or different type of output device you can use a voltage meter (this one is from Sparkfun, though they can be found lots of places). You simply need to open up the meter, print your own scale, put it into the meter and reassemble the unit. Obvious usage is for some increasing or decreasing values, such as temperature, light level, etc. But you can use discrete values, such as ‘YES’, ‘NO’ and ‘MAYBE’ and make your own novelty decision maker.
Step 1- Print the template and cut it out

Make sure you cut out all the extra material outside of the lines. Leaving this material will cause the needle to get caught up, or not having it fit into the case.
Step 2-Disassemble your analog meter
There are four screws to remove, in mine they are Phillips #1. I’m sure you can figure out how to take it apart.
Step 3 – Insert the new scale
Make sure you don’t bend or force the indicator needle.
Step 4 – Reassemble
Put the cover back on, and you’re ready to go.

Wiring Diagram for Example
Code for Example
#include <Button.h> const int BTN_DECIDE = 2; const int PWM_DISPLAY = 9; #define DEBOUNCE_MS 20 #define PULLUP true #define INVERT true Button btnDecide(BTN_DECIDE, PULLUP, INVERT, DEBOUNCE_MS); void setup() { pinMode(PWM_DISPLAY, OUTPUT); randomSeed(analogRead(0)); analogWrite(PWM_DISPLAY, 50); } void loop() { btnDecide.read(); if (btnDecide.wasReleased()) { goDecision(); } } void goDecision() { int intAnswer = random(0, 4); int intNumSpins = random(10, 20); for (int x = 0; x < intNumSpins; x++) { analogWrite(PWM_DISPLAY, random(50, 200)); delay(500); } switch (intAnswer) { case 0: analogWrite(PWM_DISPLAY, 0); break; case 1: analogWrite(PWM_DISPLAY, 127); break; case 2: analogWrite(PWM_DISPLAY, 255); break; } }
Video of Example
Downloads:
This template is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. Original attribution: Ethan Smith.