The Button - slamming a big red button and music comes out of speakers

Hello people,

Just so start, I will happily accept all bashing from not finding the answer to similar requests as this one in other posts.
I have a trouble searching through vast amounts of information and that makes me shut down completely.

Therefore I am trying to take a step forward by simply asking for guidance.

Here is my project that I have started working on:
Few years ago a friend of mine and me wanted to have a big red button as a celebratory device.
To be used when you accomplish something that you are super proud about.
You nail something, slam the button down and your favorite song is played from a couple of speakers in the room.

I have aqcuired an Arduino Uno, and started fiddling with it. Super-fun!

My questions are:

  • Is there a specific button one could aquire for this to work?
  • Could this project work with the Uno?
  • Is it possible to do this with an iPod or is another mp3-player better?
  • Are there similar projects that I have missed that have done almost the exaxt same thing?

/D-bro

Get a DFplayer Mini board and save your Uno for another project.

2 Likes

This sort of button ?

4 Likes

An Uno, a DFPlayer, a big red button, and the State Change Detection Example should do 80% of what you want:

/*
  State change detection (edge detection)
  https://docs.arduino.cc/built-in-examples/digital/StateChangeDetection/

  Often, you don't need to know the state of a digital input all the time, but
  you just need to know when the input changes from one state to another.
  For example, you want to know when a button goes from OFF to ON. This is called
  state change detection, or edge detection.

  This example shows how to detect when a button or button changes from off to on
  and on to off.

  The circuit:
  - pushbutton attached to pin 2 from +5V
  - 10 kilohm resistor attached to pin 2 from ground
  - LED attached from pin 13 to ground through 220 ohm resistor (or use the
    built-in LED on most Arduino boards)

  created  27 Sep 2005
  modified 30 Aug 2011
  by Tom Igoe

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/StateChangeDetection
*/

// this constant won't change:
const int buttonPin = 2;  // the pin that the pushbutton is attached to
const int ledPin = 13;    // the pin that the LED is attached to

// Variables will change:
int buttonPushCounter = 0;  // counter for the number of button presses
int buttonState = 0;        // current state of the button
int lastButtonState = 0;    // previous state of the button

void setup() {
  // initialize the button pin as a input:
  pinMode(buttonPin, INPUT);
  // initialize the LED as an output:
  pinMode(ledPin, OUTPUT);
  // initialize serial communication:
  Serial.begin(9600);
}


void loop() {
  // read the pushbutton input pin:
  buttonState = digitalRead(buttonPin);

  // compare the buttonState to its previous state
  if (buttonState != lastButtonState) {
    // if the state has changed, increment the counter
    if (buttonState == HIGH) {
      // if the current state is HIGH then the button went from off to on:
      buttonPushCounter++;
      Serial.println("on");
      Serial.print("number of button pushes: ");
      Serial.println(buttonPushCounter);
    } else {
      // if the current state is LOW then the button went from on to off:
      Serial.println("off");
    }
    // Delay a little bit to avoid bouncing
    delay(50);
  }
  // save the current state as the last state, for next time through the loop
  lastButtonState = buttonState;


  // turns on the LED every four button pushes by checking the modulo of the
  // button push counter. the modulo function gives you the remainder of the
  // division of two numbers:
  if (buttonPushCounter % 4 == 0) {
    digitalWrite(ledPin, HIGH);
  } else {
    digitalWrite(ledPin, LOW);
  }
}

The next 10% might be moving the pins around to repurpose the LED to the DFPlayer control, and maybe change the %4 to %2 to make the button an on-off toggle button, and maybe wiring the buttons more safely with INPUT_PULLUP.

1 Like

I'll counter with a DF Player (Pro if stereo is needed) and a Big Red Button will do 100% of what OP needs. I posted this the other day. All it needed was the DF Player and a pushbutton (and of course, battery, speakers, etc...).

All the info you need is on DF Robot's site.

2 Likes

See post #2.

1 Like

Yeah, I saw that.
IME, sometimes having an example helps to illustrate the point though.

1 Like

Most big red buttons I am familiar with are E-Stop buttons, Much like this one. A Google of E-Stop buttons will give you plenty of large red buttons. :slight_smile:

Next as mentioned a simple DF Player should do just fine. They can be had for about $6.00 USD.

Gee normally people just ring a bell for a great accomplishment. :slight_smile:

Ron

1 Like

We're not normal. We'd rather play an mp3 of a bell ringing.

4 Likes

Red button example from game console...plus connect to a Christmas card...no need for Arduino or much else for that matter.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.