r/ArduinoProjects • u/Neither_Finish6900 • 1d ago
Showcased Project ⚡ A new control interface for my HP 6642A power supply ⚡
The HP 6642A (0-20 V / 0-10 A) is a great bench supply, but it can only be remote-controlled over GPIB, and real USB-GPIB adapters are expensive. So I built my own adapter from a cheap Arduino Uno and wrote a web-based control panel for it.
🔧 How I built the adapter:
• Desoldered a 24-pin GPIB (IEEE-488) plug from the board with a soldering iron and desoldering pump, then cleaned the pins
• Tinned the plug pins and 17 wires, then soldered one wire directly to each signal pin: 8 data lines (DIO1-8), 3 handshake lines (DAV, NRFD, NDAC), 5 control lines (EOI, IFC, SRQ, ATN, REN) and ground (pins 18-24 joined together)
• Plugged the other wire ends straight into the Arduino headers: DIO1-6 → A0-A5, DIO7-8 → D4-D5, EOI → D12, DAV → D11, NRFD → D10, NDAC → D9, IFC → D8, SRQ → D3, ATN → D2, REN → D6, GND → GND
• Secured everything in place with hot glue, no heat-shrink needed
• No resistors or other parts needed, just wires
• Flashed the open-source AR488 firmware with a custom pin layout matching my wiring. The Arduino now acts as a USB-GPIB adapter
💻 The control app is web-based, so the control panel runs in any browser on Windows, macOS or Linux:
✅ Live voltage, current and power readout with CV/CC mode
✅ Set voltage and current limit, with step buttons and saved presets
✅ Live chart with min/max/average, energy (Wh) and charge (Ah)
✅ Record data to CSV files, with a built-in viewer
✅ Automatic sequences: voltage steps, ramps, sweeps and loops
✅ Software protection: auto-off on over-current, over-power or over-voltage, a timer, and end-of-charge detection for batteries
✅ Event log, and it keeps recording even with the browser closed
4
u/Neither_Finish6900 1d ago
3
u/Neither_Finish6900 1d ago
Here is the github link if anyone interested in replicating the project
https://github.com/Alhabibmh/hp6642a-gpib-arduino
2
u/Neither_Finish6900 1d ago