You are browsing as a guest. Sign up (or log in) to start making projects!

Multi-Functional Clock

Hardware
  • 3 Devlogs
  • 3 Total hours

I am building a multi-functional clock that has different modes a dial and a button for astrounauts

Open comments for this post

21m 24s logged

🌌 Mission Log: NASA Stardance Space Clock

Engineering Log 03: Assembling the First Physical Prototype
Date: June 2026 | Crew: Mohammed Ibrahim (Solo Mission)


🛠️ 1. From Blueprints to the Breadboard

With the core multiplexing software compiled, today was all about bringing the project into the physical world. Building the first hardware prototype is where theory meets reality—and where dealing with a massive matrix of jumper wires becomes the ultimate test of patience.

The goal for this log was to fully wire up the hardware components on a single breadboard and achieve a fully functional, live-running physical prototype.


🔌 2. The Prototype Wiring Matrix

Connecting a standalone 4-digit 7-segment display (5416AS) manually requires routing a ton of overlapping connections. Because the display shares segment pins across all four digits, one wrong wire could short the system or light up the wrong number.

⚡ Hardware Layout & Connections:

  • The Chronometer Link: The DS3231 RTC module was wired into the Arduino Uno’s I2C lines (SDA and SCL) to feed steady time telemetry.
  • The Current Shield: Added 220Ω protective resistors in series with each segment line to keep the common cathode display from drawing too much current and burning out.
  • The Control Panel: Tied the analog potentiometer to pin A0 and a tactile push-button to digital pin 2 to act as the interface controls.

🔍 3. First Run & Troubleshooting the Bugs

Powering up the prototype for the first time brought some classic hardware engineering challenges that I had to solve solo:

  • The Ghosting Issue: Initially, numbers looked blurry and bled into each other. I adjusted the multiplexing delay in the code down to a few milliseconds, making the rapid switching invisible to the human eye so the display looks solid.
  • The Wire Nest: Managing over 15 individual jumper wires on a compact breadboard made it easy to accidentally bump connections loose. I carefully re-routed the cables into clean parallel paths to stabilize the signals.

Once the tweaks were made, the prototype worked flawlessly! Turning the dial instantly changes the countdown target, and pressing the button cycles through the operational states exactly as planned.


📈 4. Telemetry Log & Project Status

Current Status: 🟢 Phase 3 Complete

  • Successfully mapped and wired the 5416AS display pins on the breadboard.
  • Synced the physical DS3231 RTC module over the I2C bus.
  • Fixed display ghosting and flickering by calibrating multiplexing microsecond intervals.
  • Verified full interaction loop between the button, dial, and display.
  • Construct the final console enclosure box to secure the loose wires.

🚀 Next Mission Phase: Structural Hull Integration

Now that Prototype Alpha is running perfectly on the testbench, the next phase is packaging! In Devlog 04, I will be building a space-themed control console enclosure to house the messy wire harness and cleanly mount the screen, dial, and buttons for a finished look.


Proudly shipped solo for the Hack Club Stardance Challenge.

0
0
2
Open comments for this post

2h 26m logged

🌌 Mission Log: NASA Stardance Space Clock

Engineering Log 02: Solo Flight, Code Completion & Prototype Alpha
Date: June 2026 | Crew Update: Mohammed Ibrahim (Solo Mission)


🧭 1. Mission Update: Going Solo

Every space mission faces unexpected variables. Due to a sudden change in crew availability, Dhanvir has stepped down from the project. While losing a co-pilot changes the timeline dynamics, the launch parameters remain exactly the same.

The NASA Stardance Space Clock is officially a solo flight operation. I have taken over 100% of the hardware routing and code execution to bring this prototype to life.


💻 2. Software Architecture & Code Completion

The core codebase is officially written and compiled! Because controlling a 5416AS 4-digit 7-segment display manually requires a lot of heavy lifting, the software is structured around two critical engineering pillars:

⏱️ High-Frequency Multiplexing

A 4-digit display shares its segment pins (A-G) across all digits. To display a 4-digit number like 1 2 : 0 0, the code flashes each individual digit one at a time at microsecond intervals. Because it happens so incredibly fast, the human eye perceives it as a solid, unified display face with zero flickering.

🔄 The State Machine Loop

The code is built around a non-blocking millis() timing loop that continuously tracks three operational states:

  1. Clock Mode: Pulls precision hours and minutes from the DS3231 RTC chip via I2C.
  2. Timer Setup Mode: Reads the analog position of the potentiometer and maps it dynamically from $0\text{–}60$ minutes.
  3. Countdown Mode: Decrements time sequentially and checks if the system needs to flag the alarm state.

🔌 3. Prototype Alpha: The First Physical Run

With the code fully written, I completed the physical test bench wiring.

0
0
2
Open comments for this post

17m logged

🌌 Mission Log: NASA Stardance Space Clock

Engineering Log 01: Mission Concept & System Architecture > Date: June 2026 | Crew: Mohammed Ibrahim & Dhanvir


🚀 1. The Mission Objective

For our Hack Club Stardance project, we are engineering an interactive, standalone NASA Space Clock using an Arduino. The goal is to build a piece of physical hardware that looks and feels like an authentic mission control console while managing accurate time and interactive mission parameters.

🎯 Key Project Goals

  • Retro Control Room Vibe: Avoid standard modern LCD screens; use a physical digital layout.
  • Zero Host Dependence: The hardware must retain exact time even if disconnected from the computer.
  • On-the-Fly Configuration: Use analog dials and tactile inputs to set timers and adjust settings without rewriting code.

🛠️ 2. Hardware Manifest & Design Choices

To achieve our goals, we selected a rugged, minimal component layout. By using smart wiring techniques, we are keeping our pin footprint as small as possible.

Component Purpose Technical Detail Arduino Uno Main Flight Computer Processes state logic and multiplexing 5416AS Display Mission Dashboard 4-digit, 7-segment Common Cathode layout DS3231 RTC Chronometer High-precision I2C Real-Time Clock with battery backup Potentiometer Telemetry Dial Analog input mapped dynamically from $0\text{–}60$ minutes Tactile Button Mode Selector Leverages internal INPUT_PULLUP resistor Buzzer Comm Chime / Alarm Outputs audio frequencies for system alerts

We explicitly chose the 5416AS 7-segment display to mimic retro NASA launch countdowns. However, a 4-digit display normally demands 12 dedicated digital pins! To keep pins open for our modules, we are implementing custom multiplexing code—flashing the digits sequentially at microsecond intervals so they appear solidly lit to the human eye.


🎛️ 3. System States & Logic Flow

The clock is designed around a continuous Finite State Machine (FSM). A single physical button press shifts the system through its operational modes:

0
0
4

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…