logo elektroda
logo elektroda
X
logo elektroda

TL;DR

  • Builds an RGB clock from a hard drive platter using a rotating slot, LEDs, and custom electronics.
  • Runs on an ATMEGA128, and the program uses under 10% of its flash memory.
  • Helps DIY electronics builders and hardware tinkerers who want to recreate the clock and see how the parts, control, backlight, and casing were assembled.
  • Shows how a reflection sensor with hysteresis, RGB SMD LEDs, and the original HDD housing can create a clean hidden-sensor clock effect.
  • Adds a later update with a BOOTLOAD.hex file for UART1 at 38400 baud, plus a Python script and extra packages for uploading the final application.
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • #241 17686333
    mnemonic
    Level 11  
    lugigann wrote:
    Thank You !
    I tried all the variants and it still does not work.
    The controller is programmed, it has quartz oscillation, IR receiver is ok, ok links.
    Is there a possibility that the firmware is not loaded to the correct address?


    If you're sure that mcu is good, then perform troubleshooting with driver, like a high state on pin 8: MOTON should make hdd motor spinning,
    as well just after power on, mcu should have high state on pin 51.
    It's hard to guess, check connections, or vias, cold/dry solder joints, if you have spare mcu or driver, try to replace.
    I'm using avrdude for flashing mcu, no need to change address, just a simple command like:
    Code: Dos
    Log in, to see the code
  • ADVERTISEMENT
  • #242 17699741
    lugigann
    Level 2  
    Hello!
              Help me please the bootloader hex file !
    Thank you !
  • ADVERTISEMENT
  • #243 17700112
    mnemonic
    Level 11  
    lugigann wrote:
    Hello!
              Help me please the bootloader hex file !
    Thank you !


    Hi, check first post, or use Google for any bootloader that best fits your needs,
    author is using that one: MegaLoad
  • #244 17740771
    DexteroPL
    Level 2  
    Hello, did someone like this clock on the arduino plate? Maybe someone knows a site where it is nicely described?
📢 Listen (AI):

Topic summary

✨ The discussion revolves around the creation of a clock using a hard drive (HDDClock), where participants share their experiences, challenges, and solutions related to the project. The clock operates by utilizing a rotating plate with RGB LEDs that illuminate through a cut-out slot, creating a visual display. Key topics include the design and assembly of the clock, the selection of components such as the TDA5140A motor driver, programming the ATmega microcontroller, and troubleshooting issues like motor control and sensor calibration. Participants also discuss the importance of balancing the disk, the impact of power supply on performance, and the use of various sensors for detecting the slot in the rotating plate. The conversation highlights the collaborative nature of DIY electronics projects, with users providing insights and assistance to one another.

FAQ

TL;DR: A DIY HDDClock spins a hard-disk platter at ~60 Hz and draws ≈1 A @ 5 V to project a full-colour, 240-step clock face; “vibration is almost missing” [Elektroda, mb1988, post #6985675] Why it matters: this FAQ helps makers reboot or improve the viral RGB HDD clock with fewer pitfalls.

Quick Facts

• Bill of materials: ≈ PLN 150 (≈ €35) excluding the donor drive [Elektroda, mb1988, post #6985675] • Power budget: 5 V, 1 A total; LEDs and motor are the main loads [Elektroda, mb1988, post #6986211] • Rotor speed window: 35–61 Hz gives stable 240-step display [Elektroda, mb1988, post #6986465] • Core parts: ATmega128 MCU, DS1307 RTC, TDA5140A BLDC driver, RC5 IR decoder TSOP34836 [Elektroda, mb1988, post #6984995] • Typical noise: “cooler level in a laptop” ≈ 25 dB(A) at 1 m [Elektroda, mb1988, post #6985675]

How do I cut the viewing slot in the hard-disk platter without shattering it?

Use an angle-grinder with a 1 mm cutting disc; keep the cut to about 0.6 mm for sharper hands. The author cut a Seagate 160 GB aluminium platter in one pass “like butter” [Elektroda, mb1988, post #7024207] Glass platters (common in older IBM drives) crack on impact—test yours first [Elektroda, Sh44dow, post #7020507]

What capacitors control RPM on the TDA5140A driver?

Cap-ST (pin 9-10) sets base speed. Start with 18–22 nF from the datasheet; smaller values raise RPM, larger slow it [Elektroda, mlassota, post #9289906] Cap-TI must be ≥ 2 nF for kick-start stability NXP TDA5140A Datasheet.

My disk stops after one minute when using the original PCB—why?

Drive firmware parks the motor if heads aren’t detected. Either transplant a standalone BLDC driver (e.g., TDA5140A) or cut the power trace and feed coils directly; leaving stock electronics risks auto-shutdown and excess current [Elektroda, whd, post #7362488]

Which fuse bits should I set if I skip the UART bootloader?

  1. Disable ATmega103 compatibility (M103C=1).
  2. Keep BOOTRST=0.
  3. Set CKSEL to external 16 MHz quartz. Example avrdude line: -U lfuse:w:0xFF:m -U hfuse:w:0x9F:m -U efuse:w:0xFF:m [Elektroda, mnemonic, post #17683505]

How can I balance the platter after cutting?

Remove 123 mg from the opposite side or glue a 14 × 8 mm piece of double-sided tape as a counterweight; this eliminated vibration for several builders [Elektroda, mlassota, post #7901954]

What causes flickering when the background turns red or green?

Shared 5 V rails droop under LED current, slowing the motor and upsetting sync. Power LEDs and logic from separate ±5 V regulators or a 6 V source with diode drop, as shown by a user fix [Elektroda, bob54, post #12124903]

Can I use a slotted opto instead of the reflection sensor?

Yes. Mount the fork at the platter edge and wire the phototransistor so the interrupt polarity matches the code (or invert it in software). Expect the sensor to be visible unless you redesign the bezel [Elektroda, mb1988, post #12116564]

How do I flash new firmware with MegaLoad after 2019 update?

Follow this 3-step script the author provided:
  1. python -m pip install pyserial bincopy.
  2. Run megaload.py --port COMx --file app.hex --reset at 38 400 baud (UART1).
  3. Wait for Page #n -> success messages; finish when “Flashing completed!” appears [Elektroda, mb1988, post #6984995]

Edge case: my motor jitters but won’t spin—solutions?

Jitter means the driver can’t overcome static friction. Verify you wired all three (or four plus star) coils correctly, use 6–7 V on VMOT for startup, and confirm CAP-ST ≥ 18 nF; replacing a weak TDA5140A fixed the issue for one builder [Elektroda, PanBo, post #7369702]
ADVERTISEMENT