Hello. New here and thinking that I may need to use Arduino for a prop for a friend of mine.
I'll start off with: I have not used Arduino for anything, but willing to learn and will look around to see if I can find what I'm looking for. However, I have used simple circuits and PCBs. I also have a habit of over-thinking things, so looking for any options.
He wants me to build a gauntlet like in the Predator movies, but he'd like a countdown timer in addition to it.
I've been looking and I've seen binary clocks, and clocks/timers with standard numerals, but nothing in the Yautja (Predator) numerals, so I'll have to do something more custom.
I'm sure that standard countdown timers shouldn't be TOO difficult, however the problem is that there's not really a consensus I've found about the numerals.
The gauntlet will have 4 windows corresponding to individual digits (10 minute, minutes, seconds, 1/10 second) and at least three momentary switches: Set Minutes, Set Seconds, Start Countdown (Maybe a fourth to reset the timer) and powered by a battery. (probably a rechargeable battery via USB, depending on what's needed.)
While I was looking around, I saw a store that has 2 packs of dual alphanumeric displays (14-segment), which I think could possibly work. Otherwise, I would be using 40 individual LEDs that turn off in sequence as the time counts down.
Would this project be feasible while remaining small enough for a wrist-mounted gauntlet?
I suggest you spend some time with a great book called the Arduino Cookbook. Skim it from cover to cover and stop on parts that are pertinent to your project. If my memory is correct your project is in there in parts but I am not sure about the numbers but you can do that with a dot matrix, OLED, etc display if you want.
That would probably work out better than what I was thinking, although I'm sure once the initial timing is figured out, it shouldn't be TOO difficult to adjust up or down as needed.
I've looked online at Books A Million and Barnes & Nobel and saw several books called or close to called Arduino Cookbook. Are you talking about the one by Michael Margolis, or a different one?
Also, for the numbers while I was looking around, I had found 14 segment LED displays.. I'm wondering if something like this would work, if I get two and have one positioned above the other.
This is what I was thinking of: Display Segment on Amazon
Hola evibrian,
This is a very ambitious project, but if you can imagine it and code it, it can be done! I have a friend asking me for something very similar. I am not a "Predator" movie wizard by any means, but I did look up the Yautja numerals, and did see that 14 LED segments are used, but it is a very different layout than a typical 7 segment LED. I did not research if there are any PCB boards ready made your project ...although I can imagine it's been done before. Without knowing your previous coding experience (in C/C++), I would ask you this.... How quickly and easily do you expect this to be accomplished? How accurate does the timer need to be... do you need a RTC (Real-Time-Clock)? Do your momentary switches require a debounce delay? Can you code a switch case statement? These questions are by no means meant to be discouraging, but to visualize the path in front of you. There are many great resources available to get you on your Arduino journey if your are truly just starting out.
Thank you.
I figured a 14 segment display would be the way to go and easier on space than ~40 or so individual LEDs. In the link above there's a 2-pack, with each board having 4 numerals. I figured having one above the other could work.
As far as your questions:
Previous coding experience - I've gone to college (albiet not a great college since it's not around anymore) for computer programming where they taught us Visual Basic, C++ and COBOL (of all things.) I haven't used it, so it may be a refresher if it's needed.
How quickly do I need this to be accomplished: Ideally everything would be done around September, so I have about 3/4 of the year.
How accurate does it need to be: I'll have to ask my friend that.
I've seen videos of other props like this, and looks like they only do a 50 second countdown. But most of these videos are over or near 10 years old. Predator 1 gauntlet
I'll be a contrarian here (no surprise to anyone who knows me!!) and announce that this would be much easier if it were built around one of those ESP32 with onboard OLED or TFT combo boards. You'll need to create (copy) a Yautja font but that's likely far less work than assembling multiple components, including 14-segment displays.
Yes, but the nice thing about the integrated units is that there's less wiring to do. You can also find OLED displays with an attached ESP32. Displays come in many different sizes.
I'll see if my local Microcenter has anything. I know they have some arduino stuff, so they might have the displays so I can get a better idea on their size.
It's been a while and I've done some digging, like ALOT of digging and I found a solution.
Somehow I managed to stumble upon an old instructable (like 3 years old) that uses a 32x8 LED matrix along with a 16x2 LCD display, and from what I'm able to test, it works well and does what it needs to do.
I have the parts and re-created the wiring schematic and I'm going to use that to convert it over onto a PCB.
I'll likely use the USB to provide power via a power bank a USB with switch.
I'm using EasyEDA to try to create the PCB schematic and would like to know what width should the traces be? At the moment I have them at a default of .254mm and would like any additional feedback (even on the spacing.)
P1 at the top is connecting to the matrix (the other four lines from the matrix connects to the Nano itself.)
And I'm using a 1x10 header footprint for the LCD screen. The buzzer I have detached, but can have it attached if need be.
//We always have to include the library
#include "LedControl.h"
/*
Now we need a LedControl to work with.
pin 8 is connected to the DataIn
pin 10 is connected to the CLK
pin 9 is connected to LOAD
We have only a single MAX72XX.
*/
LedControl lc=LedControl(8,10,9,1);
/* we always wait a bit between updates of the display */
unsigned long delaytime=100;
void setup() {
/*
The MAX72XX is in power-saving mode on startup,
we have to do a wakeup call
*/
lc.shutdown(0,false);
/* Set the brightness to a medium values */
lc.setIntensity(0,8);
/* and clear the display */
lc.clearDisplay(0);
pinMode(12, OUTPUT);
}
void testSequence() {
// The decimal point is the most significant bit in this whole mess.
// Segment g is the least significant bit.
byte yautjaDigits[10] = {B00000000, B11110001, B11111101, B10100101, // Yautja digits 0-3
B10111101, B11010111, B10011111, B11010011, // Yautja digits 4-7
B11111101, // Yautja digit 8, which is the same as 2
B11111111 // Yautja digit 9
};
for (int i = 1; i < 10; i++) {
lc.setRow(0, 0, yautjaDigits[i]);
lc.setRow(0, 1, yautjaDigits[i]);
lc.setRow(0, 2, yautjaDigits[i]);
lc.setRow(0, 3, yautjaDigits[i]);
// Twiddle the LED pin to indicate that I changed something
twinkle();
delay(1000);
}
}
void twinkle()
{
for (int twinkle = 0; twinkle < 6; twinkle++) {
digitalWrite(12, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
}
}
void loop() {
lc.clearDisplay(0);
digitalWrite(12, LOW);
delay(1000);
testSequence();
digitalWrite(12, HIGH);
delay(1000);
}