Yes, we did. TJ pointed us to Amtex about a month ago, and suggested we be sitting down when we hear the prices. The problem with those above is that although the index page claims they start at 12 V, when you look at the data sheets you find they start at 24 V. We could have got some Amtex ones modified but they would have been around $1000 each.

We cannot use a single DC-DC now. Having gone with the 450 V Tritium Wavesculptor 200 drive and hoping to upgrade to a 900 V drive in future, and planning to use two chargers to charge the two half packs separately on occasion, we need to have a DC-DC on each half pack.

It's not the supplies we are worried about with the current sharing. It's the unbalancing of charge on the two half-packs reducing the usable capacity of the pack. Yes they will automatically share perfectly under full load, but not at half-load without very careful voltage adjustment, and some resistance whether internal or external to the supplies. We may not need external diodes. We will check, with a resistor, whether they can sink current as well as source. They were in stock at Mouser so they should be here within a week.

They do have fold-back current limiting, but only if the output voltage in current limit falls below 50% of normal output voltage. This would mean the 12 V battery was stuffed anyway.

If 30 amps is insufficient, as it probably will be, we will add two more of them. The price is right. But we thought we might as well make sure the basic idea works first.

Last edited by weber on Sat, 19 Jun 2010, 09:14, edited 1 time in total.

One of the fathers of MeXy the electric MX-5, along with Coulomb and Newton (Jeff Owen).

After cutting open one of the Elcon 7-pin connectors, I realised that it's possible to open the connector after all. I found this by studying this cutaway image from the datasheet carefully:

Note the thread barely visible in the yellow oval. This is hidden under the front blue ring. The connectors are tight (water tight, I guess), so you may need a pair of pliers on the end of the connector to undo them.

This is the cable to the CAN box (the one I haven't mutilated). You can see that it connects to 4 pins: 2, 3, (ground and power), 6, 7 (TX and RX data).

I've been trying to suss out the protocol on pins 6 and 7 of the charger, when used with the CAN interface. RS232 is easier for experimentation than CAN bus, at least until our Tritium Drivers Controls box arrives (should be soon).

Pin 7 of the charger seems to send crude RS232 (approx 0.2 to 7 V) from the charger; it seems to expect data on pin 6. Pin 2 is ground.

The protocol is 2400/N/8/1; yes, that's 2400 baud! I was expecting at least 9600, possibly 19200 or even 115200. I suppose there is still plenty time to send 12 bytes (~ 50 ms) every second. This is perhaps why sending more than 2 packets per second confuses the charger; the 2400 baud link is a bottleneck.

The charger sends these 12 bytes every second: 18 FF 50 E5 VVVV IIII SS 00 00 00
where
VVVV is the voltage in tenths of a volt, MSB first, e.g. 03 F0 = 100.8 V
IIII is the current in tenths of an amp, e.g. 00 0A = 1.0 A
SS is the status, as per the lithiumate page, e.g. $10 = communications error (no CAN packet in 10 seconds).

18FF50E5 happens to be the ID mentioned on that page for the status packet from the Elcon charger. The message generated by the Lithiumate BMS is 1806E5F4, which happens to match the number printed on the top of the CAN interface box. So it seems that this is the ID that the Elcon must be expecting.

I've written a simple program to send these bytes continuously with a 1 second delay between them. Unfortunately with Windows, you can't run two comms programs on the same port (Linux has no problem with this), so it's not easy to see the results coming back from the charger (at least until I find some example serial port reading code to adapt).

Alas, when I run this, I still get the seven-light code which means "communications interface fault".

So now I'm considering what might be wrong. I measure about 1M resistance from pin 6 to pin 2, so there seems to be something "listening" (and there isn't an open circuit in the RXD wire). Maybe it wants the RS232 to be clipped at 0V like the charger is sending, but that seems unlikely. I suppose it could be expecting opposite polarity, but that also seems unlikely.

Maybe I need to wait for the status packet to come out before sending back the "BMS" packet. Comments welcome.

[Edit: other code -> broadcast address; E5 = charger]

Last edited by coulomb on Fri, 23 Jul 2010, 05:28, edited 1 time in total.

Operation Mode
1. BMS send operating information (Message 1) and (Message 10+Message 11+Message 12) to charger at fixed intervals of one second. After receiving the message, the charger will work under the Voltage and Current in Message. If the Message is not received within five seconds, then it will enter into communication error state and the output will be closed.
2. The charger send broadcast message (Message 2) at intervals of one second. The display meter can show the status of the charger according to up-to-date information.

So I think you need to send Messages 10, 11 & 12 as well as 1 which you are already sending.

coulomb wrote: It could be tricky trying to figure out the RS232 version of these messages.

Actually, it's quite easy figuring this out; it's just a slightly different "desintation" address (E6 instead of E5, really part of the 29-bit extended ID), and different payload data. The other mysterious codes (PF and priority P) always seem to be 6.

I can't see that the charger needs these extra packets, and I suspect it will just ignore the contents. For example, what does the charger care about maximum discharge current? For a while I thought that message 11 might be the way to re-flash the "charger curves", with the battery curve number in byte 7. But now that I read it again, it seems more likely that "battery numbers" simply means the number of cells. Again, what does the charger want with this?

This PDF document seems to confuse "battery" with "cell" and "bit" with "byte".

However, the charger may expect these extra packets to be there, so I may as well try sending them (firstly in the order given, then other orders if that doesn't work) in case it just errors out the moment the information differs from what it's expecting.

I sure hope it doesn't do any error checking on the contents, or the number of possible combinations will be astronomical.

It's actually over 13 V; somewhere I read it should be 11. They're all good numbers for control logic.

what voltage wrt pin 2 is pin 6?

Pin 6 is the serial input (to the charger); it reads zero volts. I think you meant pin 7; it sits most of the time (mark) close to 0V, slightly positive, and rises to about 7 V for a space.

This may help establish the voltage level.

Yes, that's why I think that it should work straight through to the RS232 USB adapter.

Also connecting the Computer serial port without OPTO interface could have problems. Elithion suggest connector may be "HOT" (I think you already checked it was linked to EARTH side pin.)

This logic is all hot to the negative charger output terminal. I don't actually have a battery connected yet. It's all isolated from frame ground.

If the Charger is already configured to your battery pack by the supplier, you may only need to send just message 1.

Yes, surely only message 1 is needed.

Or you may have to send all 4 messages before time out. Elithion state 10 seconds for time out.

I've also seen 5 seconds for the timeout.

Each message packet has to complete in 1 second. So hand typing it in TERMINAL would be hard.

Very hard, as many of the required bytes have the high bit set, so you need to type ALT-0-2-2-9 for E5, and so on. That's why I wrote a stand alone C program. I use the same [edit: serial sending] code that successfully sends a 2 kB image to the BMUs.

If you make sense of the CANspec pdf and the Elithion circuits and ELCON supplier doc's you guys deserve a NOBLE Prize.

Oh, I'm not that noble, but those documents make reasonable sense to me now. Well, there's obviously something that I don't get yet, since I can't get it to work. [Edit: And certainly I don't deserve a Nobel prize.]

At least you don't have to worry about CRC counts in messages. (I hope)

Yes, there is no sign of a CRC or similar in the bytes from the controller. I assume that means there isn't one needed the other way around.

However, maybe the first byte has to be a special character to say that this is a BMS command; the same RS232 port seems to be used for flash programming the "charge curves". Maybe I need to send a dot or something first, then what I'm sending now; for flash programming all the commands might start with "P" (obviously, many many possibilities exist).

The real way to do this would be to put some sort of "serial sniffer" across the RS232 on a system with a working BMS and CAN interface.

Oh well, we'll just have to wait for a CAN controller and hope we have better luck there.

Last edited by coulomb on Sun, 20 Jun 2010, 21:27, edited 1 time in total.

Note - The voltage measurement on the pins out of the CAN/Serial black box adaptor 7pin connector. So you know what the Charger RX pin is expecting to driven to.

coulomb wrote:... However, maybe the first byte has to be a special character to say that this is a BMS command;
the same RS232 port seems to be used for flash programming the "charge" curves". Maybe I need to send a dot or something first, then what I'm sending now; for flash programming all the commands might start with "P" (obviously, many many possibilities exist).

The real way to do this would be to put some sort of "serial sniffer" across the RS232 on a system with a working BMS and CAN interface.

Oh well, we'll just have to wait for a CAN controller and hope we have better luck there.

Must be tempting to pull both the black box apart and the charger.
I'm suprised this info isn't on the forums yet.

Yes the "sniffer"would be great. How long till you get the CAN Controller?
What are you getting?
USB to CAN of some sort?

The CANbus pdf and the Elthion web page message info appear to line up.
In fact the pdf looks to make more sense.

We have an "and" between the parentheses and "+"s inside one parenthesis. The common everyday reading of this would be that the "+"s also mean "and". But why have the parentheses at all if that is the case. Why not write "Message 1+Message 10+Message 11+Message 12". I suggest that either the "+"s should be read as "or", as they are in Boolean algebra, or as seems more likely given the content of the messages, the "and" should be read as "or". So "(Message 1) or (Message 10+Message 11+Message 12)".

However, you've tried sending just Message 1, so if I'm right above, either some data is wrong or the voltages are wrong. Are you sure about that destination address change? Did you try both E5 and E6?

One of the fathers of MeXy the electric MX-5, along with Coulomb and Newton (Jeff Owen).

Weber, if you have a digital scope that can see a decent length of time and still zoom in for the bit details, why not connect the CAN adapter to the charger, and see what it is sending on the RS232 connection between them? You might not have to have any CAN traffic for it to be sending some kind of heartbeat messages?

Weber pointed out that in the USA, industrial three phase is 480 VAC phase to phase, hence 277 V phase to neutral (480 / √3). So that's just just over 15% higher than our 415/240 system, which is just over the 12.4% extra that we need to handle our half-pack (416/370 = 1.124; most power supplies have a maximum input voltage of about 370 VDC). This apparently is different to the [Edit: American] domestic standard, which is typically 220 VAC centre tapped, though there could be another phase as well, with 208 VAC from neutral to the other phase. Of course, they can have incompatible systems there since every dwelling gets their own transformer. In an industrial setting, 480 V is a bit much for fluoro (or LED!) lighting, so they use the lower phase to neutral voltage, 277 V. Just as we would, I suppose. Another mystery solved.

We attempted to make the two power supplies share a headlight load with clip leads and several multimeters on the kitchen table, but one took 3x the current load of the other. Adjusting the voltages just seemed to make it worse, though we didn't try very hard. I believe that the difference in multimeter shunt resistances, and the substantial resistance of the thin clip leads we used (we paralleled some of the thinner ones) would have led to the imbalance. So with proper wiring, I think they will share well.

We could dim the headlight using the current limit trimpot. The cold start current of the headlight prevented it from coming on again until the limit was increased.

According to the hairs on the back of my wrist you should be able to get 16.5 Amps at 13.6 volts (225 Watts) out of them. Without modern air-con and stuff that may well be enough. The Vogue only had a 35 Amp generator in it which supported an inefficient heater fan, twin headlights on high beam, windscreen wipers AND brake lights.
Provided you don't do anything strange (like too many high current contactors) you may get by.
Of course you may also be able to crank the current up slightly above spec.

I'm starting testing of the BMUs in a charging situation with a block of 8 of them. I intend to use a charger designed for 24 V lead acid. Here they are just freshly bolted together:

You can see three wires between the fifth and sixth BMUs. What's that you say? Something unusual at the bottom of the picture?

Ahem. I was using a quick and dirty trick to test a string of BMUs like this; you "just" short the opto isolator on the CPU side, and all the error LEDs should come on (it causes a serial "break", so nulls get transmitted along the chain). I've done it scores of times when the BMUs were component side up, but now they are the other way up and it's harder to see where you are poking. Well, you've possibly guessed it, one end of the opto is connected to Cell-, and that pad with the plus sign near it is the positive end of the "FAN" output (which we may never use), and it's connected to Vdd (which is Cell+ via the fuse). I must have connected the two, and the fuse let go.

Alas, we put the fuses under the board, "where it will be safer", says Weber. Well, that's very true, but now to get at the fuse, I need to unbolt all 5 BMUs that are joined together, 10 screws in all, and it turns out that the spare fuses are at the other factory. So it just seemed easier to solder in that fuse for this test. We'll fix the fuse before the cells go into a cage, of course. We can't have a metallic fuse hanging out like that.

The string measures just under 26.4 V, or just under 3.3 V per cell. Not too bad for cells that are likely over 13 months old. (They could have been from the batch of 16 that we bought later from EV Works). The serial numbers suggest a manufacturing date of June 2009, so that's 12 months old.

Edit: "It turns out that there is" -> "I was using"
Edit: string of cells -> string of BMUs

Last edited by coulomb on Wed, 23 Jun 2010, 17:13, edited 1 time in total.

Johny wrote: According to the hairs on the back of my wrist you should be able to get 16.5 Amps at 13.6 volts (225 Watts) out of them.

I wonder about that. My hairs say that you will still be limited to 15 A, or a metric smidge more, meaning you can get more power than nominal (16 V x 15 A = 240 W, coincidentally (?) the power of the rest of the series).

But if we can get 16.5 amps from them, so much the better. I note that the specified voltage range is 14-16, but our units did 13.5 on one and slightly less on the other, and over 16 V at the other end. So maybe the current limits will be similarly generous.

Of course you may also be able to crank the current up slightly above spec.

Well, we won't be doing that by changing internal resistors; these supplies are potted with heat conductive compound; it's part of the IP65 rating I think. So there really are "no user serviceable parts inside" (unless you want to get really messy ).