Disco_nnected! Useless Machine
by BilgeArslan in Circuits > Arduino
54 Views, 1 Favorites, 0 Comments
Disco_nnected! Useless Machine





This project conducted as art of the Computational Design and Digital Fabrication seminar in the ITECH master program.
Project by: Benan Ataulusoy, Bilge Arslan, Gonzalo Novoa
It’s not an ordinary necklace. Maybe from the outside, it looks like a small accessory but it carries a hidden purpose. A kind of game, a kind of invitation! A jewel that lets its wearer carry their own personal party around their neck. And anyone who enters its field of view unknowingly becomes part of a performance, pulled toward the sound by the excitement of music and dance. It’s a kind of experiment!
When a person approaches, the life inside the necklace begins to stir: a soft light turns on. The lights rise to form a glowing halo above the wearer’s head, and the first song begins to play. This opening track invites the person in front to dance, to come closer. As their steps get nearer, the rhythm speeds up, the song changes. The closer the guest gets, the more vibrant the music becomes, and it changes again.
This machine may be useless but its impact is undeniable! With Disco_nnected, become a shining, useless DJ.
Supplies


Electronics
- Arduino
- Stepper Motor SG90
- Stepper Motor Driver Module ULN2003
- Ultrasonic Sensor
- DF Mini Player
- Speaker 2W 8 ohm --- 2x
- Micro SD Card
- LED Strip, 10x LED 0,06W 3V
- NPN Transistor PN2222
- 1K ohm resistor
- 330 ohm resistor
- 5V 2A power supply
- 1.5V AA battery --- 2x
- Breadboard
Hardware
- 3D printed custom hinge system, includes breadboard and Arduino housing
- USB Cable compatible with Arduino input
- Battery case for 2 AA batteries
- Custom chamber construction for LEDs
- Custom necklace base cut from mesh/metal sheet.
- Foil to cover cables
- 2-sided tape
- Electrical tape
- Solder tools
Construct the Arduino Code

0.Set-up
The code uses the following libraries, all available to download inside Arduino IDE.
- SoftwareSerial.h
- DFRobotDFPlayerMini.h
- Stepper.h
- math.h
1. Start-Up
When the system powers on, it initializes:
- The ultrasonic sensor (for distance measurement),
- The stepper motor (for movement),
- And the DFPlayer Mini (to play music from an SD card).
The system is now ready to detect distance and respond accordingly.
2. Distance Detection and States
The system constantly checks how far an object is from the sensor. It uses a state machine with four states:
- Idle – Waiting for something to appear.
- Going Forward – The motor moves forward.
- Playing – A music track plays while the object remains detected.
- Going Back – The motor returns to its original position after the object leaves.
When an object enters a certain distance range, the system changes from Idle to Going Forward.
3. Motor and Sound Activation
Once an object is detected:
- The LED's turns on, signaling that the system is active.
- The motor rotates forward, lifting up the “party halo (light chamber)”.
After the motor finishes moving forward, the system enters the Playing state. One of three audio tracks is played depending on the measured distance:
- Far: Track 1
- Medium: Track 2
- Close: Track 3
If the object moves closer or farther while still in front of the sensor, the system automatically switches tracks to match the new distance.
4. Waiting and Returning
When the object leaves:
- The system waits a short moment (1 second) to avoid reacting to sudden glitches or quick movements.
- If the object does not return:
-The sound stops,
-The motor rotates back to its starting position,
-And the LED's turns off.
The system returns to the Idle state, ready for the next interaction.
Downloads
Construct the Circuit
- Connect the DF Player to the Arduino
- Rx --- > 1K Ohm resistor --- > pin 9 (advised digital pin)
- Tx --- > pin 10 (advised digital pin)
- VCC --- > 5V of Arduino
- GND --- > GND of Arduino
- Spk_1 --- > Speaker (+) of each
- Spk_2 --- > Speaker (-) of each
- Connect the Stepper Motor and Driver to the Arduino
- Preordered 5 wire --- > Driver's ABCD pinout
- Driver IN1 --- > pin 2 (digital pin)
- Driver IN2 --- > pin 4 (digital pin)
- Driver IN3 --- > pin 3 (digital pin)
- Driver IN4 --- > pin 5 (digital pin) (* pay attention to orders)
- (+) --- > 5V of Arduino
- (-) --- > GND of Arduino
- Connect the Ultrasonic Sensor
- VCC --- > 5V of Arduino
- GND --- > GND of Arduino
- Trig --- > pin 7
- Echo --- > pin 8
- Connect the LED strip
- LED strip (+) --- > Battery (+)
- LED strip (-) --- > NPN Transistor Collector pinout (C)
- Battery (-) --- > GND of Arduino
- NPN Transistor Emitter pinpout (E) --- > GND of Arduino
- NPN Transistor Base (B) --- > 330 Ohm resistor --- > pin 9 (digital pin)
Construct the Necklace

While designing the necklace, all Arduino connections were established first.
- A distance sensor was attached to the bottom of the necklace, and speakers were placed on the sides.
- The main body of the necklace was cut from an aluminum metal sheet, shaped according to the design.
- The sensor, speakers, and wires were covered with a matching surface material for a unified look.
- For the light chamber, a wooden strip was wrapped with the same metallic-looking material, and an LED strip was attached to it.
- A custom 3D-printed system was created to combine the necklace, light chamber, and Arduino into one piece.
- The housing for the Arduino and the breadboard were designed to gather the whole mechanism into a single module.
- At one end of the breadboard housing, there is a hinge system designed to rotate the light chamber and a slot for a step motor.
- The light chamber is connected to this hinge system using an additional 3D-printed part.
- Thanks to this system, when the sensor detects someone approaching, it lifts the light chamber (the halo) upward.