This is for other Ghostbusters Props that don't fit into the categories above.
User avatar
By Mercifull
#4980172
I’ve been working on my K.U.D Meter on and off for over a year now; partly because I wasn’t quite sure how I was going to do it, partly because it was a real struggle to find some utensils which looked “good enough” and partly because my toddler kept wanting to help!

Well over the last month, I’ve finally found the time to actually try it again and here it is…

Image

It, of course, utilises the Micronta 3001. I took apart the telescopic tubing and detecting pad. On opening it up it was a mess. The batteries had corroded and caused a lot of issues inside, it was never going to detect metal that's for sure. This wasn’t a problem though as I wasn’t going to use any of the existing circuitry anyway. I cut away some cables but I left in the original PCB because I wanted to keep the existing knobs without having to somehow create mounts for them. Maybe I'll revisit this in the future though.

I wanted to keep the original battery compartment but all the old terminals were corroded and really nasty looking so I ordered some more. I was erroneously sent terminals a little too wide but rather than fussing with sending back and re-ordering I just used some snips to trim them down. To make it easier to work on I then soldered a JST connector to the battery + and - terminals so I could disconnect it without risking snagging it.

For this initial meter, I wanted to just have a very simple circuit with a flashing red LED and the screen lit up. I drafted up a circuit in Tinkercad which is available here: https://www.tinkercad.com/things/1fQQk8 ... meter-2023 and tested it on a breadboard. Because I only needed 3v for this circuit I purchased from Amazon a bunch of “dummy” batteries so there are only actually 2 AAs in there despite having space for 6. The red LED is self-blinking in that it doesn't require any sort of timer chip or microcontroller. The screen was originally going to be illuminated in a clear white LED but in the end, I thought green looked cooler.

Image

The red LED comes out of a hole in the body, through a hole in the masher and then up to the top where it sits in a surface mount LED holder. Unfortunately during the drilling attempt, something must have slipped and it wasn't centralised. As this was already my second masher (the first attempt was a complete disaster) I decided to live with it and just drill the hole even bigger and use a washer to cover it. It's not a perfect solution but I was dreading making an entirely new third attempt and making sure all the other holes were in the right place and bent in the right way. It’s acceptable and if I find a smaller washer (that's still got an 8mm central hole) I'll swap it out so it's less obnoxious.

Image

It took me absolutely ages to find a strainer spoon even remotely close to what I wanted. The one I eventually used was the best-looking spoon part, which for me was the most important. It has a curved handle which was not ideal but I managed to Dremel in a suitable curve for it to go in. There’s actually a piece of wood inside which it’s then screwed into via a hole in the handle to keep everything tight and secure. A chrome coloured end cap hides all the sins.

Image

All in all, I’m very happy. It’s not perfect but it’s not like there are schematics of the thing we can use for full accuracy. We’re all just basing it off small slightly crappy angles in a couple of short shots. Plus I’ve got plenty of room inside for potential upgrades in the future maybe an Arduino and a speaker to make the needle go all fritzy and beep etc.

Image

Shopping list:
Micronta 3001 (broken) - Bought for £10.30 on eBay
Potato masher - 50p from the local market... but I bought 2 so £1
Self-blinking Red LED - Bag of 10 for £2.45
Green LED - Already had, probably about 10p each
Battery terminals - £2.50
Fake batteries - £4 although I could have simply soldered wires to join the terminals instead for free
Cabling - Various coloured cabling for the wiring which I already had. Let's call it 50p of wiring
JST connector - Bag of 10 for about £5
LED surface mount holder - £1.70
Washer - Few pence
Labelling - Few pence

Total spend around £30
RedSpecial, kahuna900 liked this
User avatar
By prodestrian
#4980235
Mercifull wrote:If anyone has any ideas on how to use an Arduino to control the needle then let me know, please. In the future, I'd like to add upgrades but for now, just wanted to get the bare bones working.
You'll need to use one of the PWM pins on your Arduino, with the AnalogWrite function to send 0-255 to the gauge. Unfortunately it depends what voltage the gauge needs, because the Arduino can only put out up to 5V.

I just bought some 20V gauges for my Tripod trap project, so connecting up to 5V meant I could only move the needle 1/4 of the way. So I replaced the resistor with a lower value (actually needed to use 3 of them) and now I can get it to move anywhere from 0-20V using a 5V signal.

Image
Image

In my code during startup it jumps to a random value, and then it jumps up or down by a random increment, after waiting for a random delay. So the needle twitches up and down fairly realistically rather than just jumping all over the place.



For a KUD Meter you could potentially connect one of the potentiometers to the Arduino Analog pins and read the value, and use this to adjust the needle. If it has a pushbutton under the handle you could also connect this, so the code only "scans" while the button is pressed (or maybe this could make it spike up to a higher reading).
User avatar
By prodestrian
#4980239
Mercifull wrote: March 20th, 2023, 6:08 am Given that it only has 6 AA batteries by default (9v) and that's gotta power everything else on the metal detector I wonder if 5v might be plenty.
It's not really about that though, you can connect 9V to an Arduino and it will run fine (depending on the model), but the pins themselves can only ever output 5V. An Arduino Nano can accept 7-20V to the VIN pin, for example.

It's not so much a matter of powering the gauge, it's about controlling its position accurately using the Arduino.

I have a Harbor Freight metal detector which is very similar to the Micronta, I'd just have to check how many volts it needs to move the needle.

I guess you could try the same thing yourself though.

Connect a 1.5V AA battery to the gauge and see how far the needle moves. Add more as needed. If you can get the needle to 100% (all the way to the right) using 5V or less (3 AA batteries), then the Arduino can control it without any modifications. If you need 4 or more batteries (6V or above) then you'd need to modify the gauge itself, which may not be as easy as the gauge mod I posted above.
Mercifull liked this
User avatar
By Mercifull
#4980242
I have been experimenting in Tinkercad but I didn't want to mega-complicate things for this initial build. In my mind, I have this scenario...

Toggle switch on/off... basically, this is a dumb switch which simply sends power to the Arduino or not from the battery pack.

By default, the red LED blinks normally and the screen is lit up in Green with a RGB led.

One of the existing knobs on the Micronta is a potentiometer which a mechanical on/off connection within it. I felt that this could be utilised as a trigger to go to the next loop which would begin by fluctuating the needle around the halfway mark, the screen colour would change to orange with a "beep" from a small speaker every few seconds. Maybe 20 seconds later the needle would then zip up to the higher end of the gauge, the screen would light up in Red with a speaker playing a long tone. This would last a few seconds before going back to the Orange/half way gauge. This loops until the switch is turned off and then it goes back to Green mode.

In wasn't going to fuss with making the other two knobs do anything.
User avatar
By Mercifull
#4980246
This is my work in progress so far using an Arduino to make it a bit more fancy. It assumes that there is 5-6v going into the microcontroller from the existing battery pack (4xAA batteries) which has a toggle switch. This is not included in the diagram.

I'm using the multimeter in Tinkercad in lieu of an analogue gauge/needle thingy, but hoping it does the same thing. I'm going on the assumption that 5v is the needle at full but I'll need to experiment with this manually at some point.

Effectively when it's switched on but the "spooky mode" switch is LOW/off then the self-blinking LED is turns on and the screen is lit up green with an RGB led. I could use a regular red led and get the Arduino to control the flashing speed but it seems like unnecessary extra complexity in the code.

When the "spooky mode" switch is HIGH/on then it begins the loop which, at the moment for testing, lights up the orange RGB led and sets the voltage pin to 127 (so about half), delays for 2 seconds, and then goes to red and 255 on the multimeter, 2 seconds delay and then starts again.

I still need to do some more tinkering with the speaker which I want to bleep slowly when orange and then fast/just on permanently when red. I may revisit this later in the week when I have more time.

Image

I don't have a spare Arduino at the moment so this is just a bit of fun, but it might be inspiration for others and I may get around to upgrading mine eventually.
User avatar
By prodestrian
#4980274
I'll try to send you some code later, but I just tested the Analog Gauge on my Harbor Freight metal detector and it looks like it runs well below 1.5V. In the video below I've connected a 1.5V AA battery and it's enough to bury the needle.



So, if yours is the same then we can definitely do this with an Arduino easily, it's just a matter of adjusting the code until we know what Analog range the gauge operates at.

Here's the rear connection:
Image

If you haven't bought an Arduino yet, I'd definitely go with a Nano as it's very compact but has the same basic features as an Uno. It can also run off 9V if that's what you prefer.
User avatar
By Mercifull
#4980275
Interesting to note the really low voltage needed on your meter, but it makes sense given the sheer amout of other electronics in the device also needing power. My initial code went on the assumption that 255 was max (5v) which is clearly overkill now. Could I use a couple of different resistors in series to get it so that 255 is max, 127 is about half way etc?

I've pulled a full-size Arduino out of some other project I started but never bothered finishing so I can start experimenting for real at the weekend. I think you're right about using a nano when it comes to the final project though as it's significantly more compact, I used one in my MT500 build. In order to better fit it all in I'll also need to take out the old PCB but that brings its own issues like "how will I mount the potentiometers". I wonder if I could just cut a piece of styrene sheet to shape and then either hot glue the existing knobs or get a couple of new ones that can surface mount with a locking nut.
User avatar
By Mercifull
#4980290
I realise this thread has sort of gone on a bit of a tangent from the original physical prop but it seems like it's ok to discuss electronics here. It's not like there's loads of conversation going on about my build that this is disrupting the flow of...

I'm most definitely an Arduino "noob" but I've been using chatGPT to help me create the bare bones of code that I'm using to build up something substantial that actually works.

I've been testing out a simple loop.
Code: Select all
int needlePin = 9; // Assign gauge needle pin

void setup()
{
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(needlePin, OUTPUT);
  randomSeed(analogRead(0)); // Set the seed for the random number generator based on the current time
}

void loop() {  
   
  digitalWrite(LED_BUILTIN, HIGH);  // Turn on built in LED

  for(int i = 0; i < 10; i++) // Set number of times this runs before moving on
  { 
  int randValue = random(10, 125); // Generate a random number 
  analogWrite(needlePin, randValue); // Write the random number
     delay(300); 
  }
   
  digitalWrite(LED_BUILTIN, LOW);  // Turn off built in LED
  analogWrite(needlePin, 0); // Flatline the meter
   delay(3000); // Wait before restarting loop
   
} 
What this does it start by turning on the built-in LED on the Arduino (so I know which part of the code is running) then it sends between 0-2.5v to the multimeter, then randomly changes it every 300 milliseconds. It does this 10 times in a row before turning the built-in LED off. After 3 seconds it then restarts.

This assumes that the meter is on full at 255 (5v) which we now think is completely wrong. If it's anything like yours then the Micronta could be full at just 50 (1v)! Until I can get a chance to open it up then I don't really know.

https://www.tinkercad.com/things/309k7N ... witch-test
User avatar
By prodestrian
#4980325
I finally connected my gauge to an Arduino PWM pin, and unfortunately it looks like "100%" is actually:
Code: Select all
analogWrite(15);
So, technically you could just set values from 1-15, having 15 different positions on the needle is pretty good.
Here's how that looks:


But if you want to increase the resolution you'll need resistors. For me it looks like I need around 15k Ohm, or I can use a lower value and just reduce the max number. With a 10k Ohm resistor I can drop the range from 0-255 to 0-175.

Here's a modified version of the code from my Tripod Trap gauge with a lot of the code abstracted out, no need for external libraries, and it uses timers instead of delays (so it won't block your other functions).

You can adjust a lot of the numbers and see what they do, in case you want wilder swings between updates or want it to be a little more stable. I wanted my gauge to never drop below a certain value so I've included limits there too.

Here's how it looks:


And here's the code:
Code: Select all
#define GAUGE_PIN 7

// Minimum value of the Analog Gauge (will never go lower than this value)
#define MIN_LIMIT 50

// Maximum limit of the Analog Gauge (up to 255)
#define MAX_LIMIT 175

// Minimum delay (in milliseconds) to wait between Gauge updates
#define MIN_DELAY 100

// Maximum delay (in milliseconds) to wait between Gauge updates
#define MAX_DELAY 800

// How often to update the Gauge (in milliseconds)
int interval = MIN_DELAY;

// Where should the Gauge Start? (0 - MAX_LIMIT)
// eg: To start in the middle, set this to half of MAX_LIMIT
int currentValue = 87;

void setup()
{
    Serial.begin(9600);
}

void loop()
{
    if (timerHasElapsed()) {
        setGaugeValue(currentValue);

        // Determine the next value to jump to
        // Increase or decrease by a random value
        currentValue = currentValue + random(-5, 5);
        currentValue = (currentValue < MIN_LIMIT) ? MIN_LIMIT : currentValue;
        currentValue = (currentValue > MAX_LIMIT) ? MAX_LIMIT : currentValue;

        // Set a random delay until the next update
        interval = random(MIN_DELAY, MAX_DELAY);
    }
}

void setGaugeValue(int value)
{
    Serial.println(value);
    analogWrite(GAUGE_PIN, value);
}


unsigned long lastRunMillis = 0;

bool timerHasElapsed() {
    if((unsigned long)(millis() - lastRunMillis) >= interval) {
        lastRunMillis = millis();
        return true;
    }

    return false;
}
If you wanted, you could read a button or potentiometer to adjust the values on the fly. Maybe one potentiometer controls how fast it updates the gauge (increases/decreases the interval between updates), and another one adjusts how far it swings up or down. So you could have it stay roughly in the same position, or you could have it swing wildly all over the place. A button could make it suddenly jump to 100%. If you controlled the front red LED to the Arduino you could also have this flash whenever the Gauge shows a new reading (although you'd need to swap out the flashing LED for a static one).

I still haven't worked out how to mount the potentiometers either, I think I'll need to do something similar to you.
If you do decide to buy new ones, you could consider making one of them a Rotary Encoder, so you can use it to manually set the current value on the Gauge.

I may also experiment with getting the speaker working. You can definitely have an Arduino generate tones and other sound effects (maybe a chirp/beep sound while it's scanning, which gets faster/slower based on the Gauge reading). But an Arduino can also play up to 4 seconds of PCM audio from a low quality WAV file, this could work too:
https://github.com/charliegerard/dev-no ... tSdCard.md
(The KUD meter does have a sound effect in the film for about 2-3 seconds but so far I haven't been able to extract a decent recording, so I'd probably just go with something close enough).
User avatar
By Mercifull
#4980326
That's really helpful thanks. Especially about the 15 being max. I'll try on my Micronta at the weekend but expect it's something similar. 15 points of resolution isn't too bad and will still give some satisfying movement. I already have a toggle switch for power but i want a toggle mode between Normal (where the needle is doing nothing) and "Spooky" where it goes wild. On mine the original vintage volume knob is also the on/off switch in that when the volume is turned to the minimum there's a mechanical disconnection. Can I simply piggyback off this by soldering onto the switch while leaving it connected to the rest of the vintage circuit board? I've already disconnected everything else from it?
prodestrian liked this
User avatar
By Mercifull
#4980350
I’ve been doing some more tinkering today and I’ve started from scratch again. This time I’m utilising a potentiometer and I’m hoping I can use the one that’s already on the PCB but I’ll need a multimeter to check the ohms rating of it. I’m still going to use the toggle switch to turn the device on/off by tapping into the VIN and GND on the Arduino but then using the pot to control the function, which I’ll refer to by the screen led colour. I’m converting the pot to 5 points of resolution with Green at the lowest, then Yellow, orange and red (red is technically twice so I can have a “max” setting. At its lowest green setting the needle barely moves at all, yellow wobbles between 0 and the first third, orange is a third to two thirds, red is the top third and at max the needle is just on full. This is assuming that the Micronta range is about 1-15 the same as the Other one. I’ve added a speaker to the circuit but haven’t written any code for it yet.

Image

Video: https://imgur.com/VTHPUiv

Work in progress sketch/code etc: https://www.tinkercad.com/things/7SQeMR ... o8jY7cUsaU
    The Support Thread

    I don't pretend to be a expert on any of this, but[…]

    Damn. Always loved this guy's work--I always look[…]

    My K.U.D Meter

    I’ve been doing some more tinkering today an[…]

    Mega Deluxe Ghost Trap Build

    A little update, I have been having trouble with[…]