I recently bought the QJE QJ3005P bench-top power supply. It’s a sub-100€ supply, that goes up to 30V and 5A, which should be more than sufficient for most stuff I do.
There seem to be heaps of different or at least rebranded linear power supplies in that price range. What made me buy this one, is the possibility to plug it into your computer and set voltage and current from there. Unfortunately, there is only a windows application available, but no Linux one. So I had to sniff the virtual serial-port the supply identifies as and I wrote a quick Python library to control it.
Sniffing the port you see, that it simply sends commands like ‘VSET1:12.34\r\n’ to set the output-voltage on port 1 (of one) to 12.34V. The funny thing is the command delimiter. You would expect the ‘\r\n’ to be escape sequences for a carriage return and line feed. But noooo, this is the best chinesium software quality you can get. They literally want a backlash-r backslash-n to delimit the commands! Curiously enough, the answers they send back are delimited properly. Not by the literal escape sequence.
Well, I guess you get what you pay for…
Please tell me which version of python was used? I have to use (‘OUTPUT1\n’), instead (rb’OUTPUT0\r\n’).
(‘OUTPUT1(slash)(slash)n’)
Hello Alex!
I’m generally using Python 3.6 and I have to admit, I don’t always pay much attention to backwards compatibility. The strings are formatted as ‘raw strings’, so I won’t have to use double-backslashes. You can try prefixing the strings with ‘br’ instead of ‘rb’, I’ve just read, that ‘rb’ was only introduced in Python 3.3, so my code won’t work with any older version.
Is it still working? 2022?
I haven’t used it in quite some time. But it probably should.