Zweikeks / meanwell-enc-series-chargelog

Command line utility (Python) to program or monitor the Mean Well ENC-series of chargers. No programmer needed. Direct connection to the serial port of the charger.
6 stars 5 forks source link

unable to connect to ENC-360-12 using USB link SBP-001 #1

Open advdreams opened 5 years ago

advdreams commented 5 years ago

Hello, thanks for sharing your work on this communication tool. My ENC-360-12 just arrived, the ability to datalog was a big factor in the decision to buy. In the readme file you clearly stated that the meanwell USB link was not required however I thought I would just take the easy route as I needed to be able to reliably adjust voltages. I should also state that this is my first python project. I am able to open a serial port but cannot read data back. I wonder if there is an addressing problem through the SBP-001.

advdreams commented 5 years ago

chargelog.py dbg com3 -rawread


/ __| | | | | | | | | | _ _ | | | ' \ / ` | '/ ` |/ \ | / \ / ` | | |_| | | | (| | | | (_| | / || () | (_| | ___|| ||_,|| _, |_|_____/ _, | / | / | |/ |___/ Version 1.0

press ctrl+c to exit

constcurr: error constvolt: error floatvolt: error tapercurr: error config : error state : error vout : error iout : error id : error temp : error

advdreams commented 5 years ago

chargelog.py mon com3 c:\temp\foo.log -ri 0.6


/ __| | | | | | | | | | _ _ | | | ' \ / ` | '/ ` |/ \ | / \ / ` | | |_| | | | (| | | | (_| | / || () | (_| | ___|| ||_,|| _, |_|_____/ _, | / | / | |/ |___/ Version 1.0

press ctrl+c to exit

Parameters: comport: com3 logfile: c:\temp\foo.log readinterv: 0.6 s graphinterv: 60.0 s graphwidth: 80 chars

ERROR: No (valid) answer from charger. Detected charger: unknown (Model -1, Type -1).

advdreams commented 5 years ago

list_ports_windows.py COM3: Prolific USB-to-Serial Comm Port (COM3) [USB VID:PID=067B:2303 SER=6 LOCATION=1-2.3]

Zweikeks commented 5 years ago

Hello Advdreams,

there is a misunderstanding. ChargeLog can't be used with the SBP-001. (The SBP-001 is just like a dongle you have to pay for to get the official software from Mean Well running - allowing you to fully make use of the already purchased charger... The functionality of the SBP-001 is not needed. ChargeLog is not issuing the commands to setup the SBP-001 for communication with the charger. The whole idea behind ChargeLog was to get rid of the SBP-001.)

In the header of the Python code chargelog.py is a detailed description how to connect the charger to a PC with a USB to 3V3 TTL bridge. There are currently a lot of bridges available for prices around $4.00 ... $5.00 (search on eBay "FT232RL 3.3V 5.5V FTDI USB to TTL"). You need to set the bridge to 3.3V! There are only 3 connections needed from the end of the bridge to the charger. See the header of the Python code.

Best Regards and Happy Logging! Zweikeks

advdreams commented 5 years ago

Hello Zweikeks,

I bought the meanwell dongle hoping it was just a repackaged version of the 3V3 TTL bridge, but it seems that is not the case. It also came with all the cables etc.

Did you find a document that detailed the communication protocol and the eeprom addressing for the ENC or did you use a protocol monitor application to monitor the port?

I am thinking I may try and get it working through the SBP-001.

On Mar 1, 2019, at 9:06 AM, Zweikeks notifications@github.com wrote:

Hello Advdreams,

there is a misunderstanding. ChargeLog can't be used with the SBP-001. (The SBP-001 is just like a dongle you have to pay for to get the official software from Mean Well running - allowing you to fully make use of the already purchased charger... The functionality of the SBP-001 is not needed. ChargeLog is not issuing the commands to setup the SBP-001 for communication with the charger. The whole idea behind ChargeLog was to get rid of the SBP-001.)

In the header of the Python code chargelog.py is a detailed description how to connect the charger to a PC with a USB to 3V3 TTL bridge. There are currently a lot of bridges available for prices around $4.00 ... $5.00 (search on eBay "FT232RL 3.3V 5.5V FTDI USB to TTL"). You need to set the bridge to 3.3V! There are only 3 connections needed from the end of the bridge to the charger. See the header of the Python code.

Best Regards and Happy Logging! Zweikeks

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

Zweikeks commented 5 years ago

Hey Advdreams,

the communication is based on commands, payload and checksums. After setting the SBP-001 to the correct operation mode, the Mean Well program "talks through" the SBP-001. The SBP-001 removes the outer command and outer checksum. The inner command, payload and checksum is sent to the charger. The same on the other way round.

I do not have an SBP-001. Just realized that it is not needed by seeing that the outer bytes are simply stripped off: Command Read Charger Id Byte sequence to SBP-001: 0x04 0x49 0x00 0x49 0x1C Byte sequence to charger: 0x49 0x00 0x49 Chances are that the checksum 0x1C is built in the same way as for the charger.

There is no documentation. The best way to learn about what's going on is to eavesdrop on the communication. com0com may help: http://com0com.sourceforge.net

Have Fun! Zweikeks