HackValue »

KORAD programmable power supply unit

KORAD programmable linear power supply

KORAD Technology manufactures a series of nice little programmable linear power supplies controllable from the front panel as well as from a computer via USB or RS-232/V.24

They are quite popular and sold under many different brands and specs;

  • KORAD 3002P, 3005P, 3010P, 6002P, 6003P, 6005P
  • Velleman PS3005P, LABPS3005P
  • Tenma/Farnell 72-2535, 72-2540, 72-2545, 72-2550 among others.

Specs varies from 0-30 to 0-60 volt and 0-2 to 0-10 amps, easily derived from the model numbers. Resolution of voltage is 0.02 volt (measure), 0.01 volt (setpoint) and current 1 mA both (KORAD 6003P, other models may differ). Resolution exceeds accuracy, though.

Voltage error

Unfortunately KORAD Technology has tweaked their firmware somewhat. When output is on, the display shows the true voltage. Well, more or less. When the true voltage gets close to the setpoint, within 0.2 volt that is, the power supply stops displaying the measured voltage and instead displays the setpoint..! This is also the case using the serial API.

My guess is that this is a kludge to make the PSU looking better than it actually is. By clamping the reported voltage to the setpoint, it looks like the setpoint always is kept perfectly within the resolution (0.01V) during constant voltage. This is of course nothing but an illusion ("If you can't make it, fake it!").

What KORAD Technology truly done, is shot themselves in their foot. To hide an insignificant inaccuracy of less than 0.05 volt (see graph below), they've instead introduced an error of 0.20 volt. Even worse; the inaccuracy is quite linear, but the introduced error not. A linear inaccuracy can be compensated/calibrated for in software, but with this kludge you are flying blind.

KORAD PSU Voltage Kludge

In this graph above I have a 5 volt setpoint and gradually increases the current limit from 230 to 260 mA. The load is a resistor of 20 ohm. Reported voltage is what the PSU reports back (on display and via "VOUT1?" command). True voltage is calculated by the current times the 20 ohm load (U=I·R). Amperage (current) shows setpoint and actual, tripping over from Constant Current (CC) to Constant Voltage (CV) at time t=20s. The voltage kludge starts at time t=11s when voltage gets within 0.2 volt from the setpoint as shown in the graph.

Please note how very accurate the reported voltage is to the true voltage the first 10s compared to the later part when the true voltage gets within the 0.2 volt of the setpoint. It's a shame to butcher precision like this for cosmetic reasons.

I've of course verified this using an external volt meter as well;

KORAD PSU voltage vs Multimeter
(during charging of Li-Ion cell)

Come on! It's only 0.2 volt!

Well, 0.2 volt is the difference between an undercharged lithium ion cell and catastrophic failure with explosive fire in Technicolor. When the time passed 5:20 in the graph below, I had no clue about the charge status no more until Constant Voltage kicked in almost an hour later. Even then, I had no data of the true cell voltage and all energy calculations between 5:20 and 6:10 would be incorrect.


Despite of above, I like this power supply. It got some other quirks as well with the serial API, such as indeterministic timing of the commands. Sending one command, and you don't know how long you have to wait before sending the next, especially as the command termination is time, not CRLF as you would expect. Sending two command too fast back-to-back, and both will fail. This is a problem since many command do not send any response at all. CRLF termination and an "OK" command reply like a Hayes modem would have made the programmers life so much easier. ^_^

Still, for the price of this unit, I do recommend it if you need a PSU you can control from your computer.

It would just have been so much better if KORAD Technology hadn't implemented this voltage kludge. >_<



Questions? Criticism? Praise? Other feedback? Send me a mail!

/By Mikael Q


Ping site

Page last modified 2017-12-17 16:13Z