Picking up after where we left a week ago: After some debugging, I’ve been able to start communicating with the charger.

Assuming the hardware-related problems I had to solve before successfully receiving my first CAN packet are rare, I must say that the steps required to actually get packets from the bus and on the bus are quite simple.

Every car today relies on a CAN bus and has 70-150 CAN-nodes. Listening to and manipulating these values is not only interesting but can also unlock hidden features and make your car more run more efficiently. I strongly suggest anyone interested to look into the CAN bus and ways to get on the bus (since not everyone wants to write code) – it’s surprisingly easy and cheap to do so.
My 2-node bus with a charger and a BMS (emulated by the Arduino) is even more simple than the bus on any normal car.
To be able to speak to the charger, my Arduino has to know what to send and – crucially – how.
Although I’ve already flipped bits in ECU’s many years ago, I had to read-up on how the frames are set up and how the charger expects to receive its data, since the CAN protocol and specifications have been extended.

With this information, I then studied what kind of information the charger expects in order for it to start a charge and keep charging.

Many things can go wrong during a charge and with the charger itself. This is why a few bytes in every charger broadcast packet are dedicated to its status – many of them binary in bit representation.

After writing some code to assemble the packets and getting replies to the changes I set, it was time for some real-world in-TWIKE testing, since I don’t have another battery to test on.

With my battery at about 30% charge, TW560 is ready for its first charge at ludicrous speed 🙂
I connect the inverter and my existing chargers to 2 phases and add the new charger on the third phase of my 11kW plug.
Time to start the charge! add determined face here

Things get interesting by the minute – it’s incredible to see the numbers climb past the 32 amps I usually charge at – see just how far…

Wow! Now let’s have a look at the number we’ve been waiting for: Total wattage going into the battery.

With this, it’s official:
TW560 is the fastest-charging TWIKE…in the world! 🙂
With this successful test, my next step is to create a stand-alone charging controller which allows me to change the charge parameters without a computer being present and maybe display some kind of charge status information.
This, again, will take some time – stay tuned.
(another related mini-project coming up is adding a serial-to-can converter to the Dreifels-controller, which would allow the TWIKE to enter the world of modern vehicles – where status messages and logs would all be accessible via a single CAN connector, the controller could take control of various chargers and telemetry nodes, enable smart displays without Bluetooth hacks etc.)
As usual, a cautionary note: 10kW is a lot of energy, at any voltage. Please don’t attempt to re-create this kind of setup if you aren’t 100+% sure what you’re doing.
Want to see how the test looked like today and hear some commentary? You’re in luck: I recorded a short video for you 🙂
Congrat and thanks for the good work . . . ready to break the 200km/h charge speed limit!
My pleasure, Ralph!
Let’s add another 17Ah, then it might work …without an interesting thermal run-away event 😀
Wie gut verträgt die Batterie diese powerladung?
Translation for our English-speaking readers: “how does this power charging affect the battery?”
Hi JC,
I’ve already wrote about the max charge limits of my battery. At 9.6kW peak (which lasts just a few minutes) I’m still about 1kW below the 10.6kW maximum defined in SDI‘s cell specs.
I’m more concerned about two other things that Ralph and I will have to look into closer:
* The cells thermal reaction to such a charge is quite marked. Do we have to add additional sensors (I still have 4 unused temperature sensors on my Dreifels Controller) or even think about some kind of thermal management like air flow or the like?
* I’ll have to check every single connector during another charge to ensure these amounts of energy aren’t a potential future fire hazard.
I’d like to re-iterate my usual mantra: Go into uncharted electrical waters at your own risk. TWIKE components were never intended to handle these kinds of loads. If you’re not 100+% sure what you’re doing you might just see your TWIKE go up in flames, damage your batteries or – and not my favourite – die a swift but painful death.