The Cycle Satiator, universal charger for the enthusiasts

7circle said:
justin_le said:
This would mean you'd just need to put a resistor on the XLR charge port of any battery pack you have and map it to the correct profile on the satiator, without any additional smart logic or communication, and have all your batteries load their profile automatically. It'd work fine for individual or private fleet applications, but not really a widerspread universal solution. For that I think we're going to wait and see what happens with the energybus standard and most likely adopt that route, with a charge calbe that has a LIN->CAN converter built in.
http://www.energybus.org/
...

Further ideas on the cable selected profile.

Using both a resistor and a capacitor in parallel would add an extra dimension to the detection.
A cap of say 1uF would cause a ramp up and the delay timing be detected.

Then a further dimension be added when discharging this cap by having a diode and a second resistor.
So R1 gives Rate
C gives capacity
And diode( option of resistor) gives auto ON/ENABLE instead of Manual prompt to say yes.

All with just ADC input of microcontroller with output/input select.
>SNIP<
Having 3 factors make the chance of some odd battery or other device being connected and charged wrongly.

Interesting thoughts. That's certainly one way to make the most from a single ADC pin and some inexpensive discrete parts on the battery pack! At this point though we'll stick to the manual user selection scheme for quite a while now, and only implement an auto-detection when/if there is a significant OEM case that wants this functionality for whatever their needs are. At least this way, if there is a wrong profile selected and battery destroyed we can always wipe our hands and say it's the user's fault :D :p
 
justin_le said:
It's been a few weeks since I've posted a meaningful update here and it's because we're trying to cram and test a lot of target features for the V1.0 release,

Things are getting closer and I've just posted the link for the V0.902 firmware build, along with a new Satiator software tool to match it. All you need to do now is download the Satiator Suite V0.91, which has the firmware bundled in with it, from here:
http://www.ebikes.ca/downloads/Satiator_Suite_v0.91.exe

Once you have downloaded this, go to
File->Update Satiator Firmware...-
and when you hit "Browse", you should see the V0.902 firmware file already present in the local directory.
V0.902 Firmware Selection.jpg

[Edit] We've now changed the firmware file itself from a raw .hex format into a .satiator file, which lets us embed a lot of additional info into the file and will help facilitate future firmware revisions.
And because we've changed around a lot of the internal memory organization, when you update to the V0.9x firmware from the V0.8x builds it will overwrite any custom profiles you have made with the defaults. So if you want to keep your existing profile layouts, first read your custom profiles from the Satiator and save them to disk, and then after you update to the V0.902 firmware you can load them back on the Satiator no problem.

This firmware has most of the features discussed on this post here(flip display, set cable resistance, brightness level, custom long button hold time, bootloader access via setup menu etc.). What it doesn't have yet which we are still working on for the V1.0 release is the ability to record the lifetime statistics of each individual battery charge profile, as well as the updated charge graph screen that shows both voltage and currents and has a better autoscaling routine.

The rest of it though is very close to the target behavior. This includes a more consistent button pressing behavior. Holding the top button causes you to exit the current screen and go up one level, holding the bottom button causes you to go into the selected function. And the special case of holding down both buttons gets you into the setup menu.
UI Flowchart for 0.90X Firwmare.gif

So play with it a bit and let me know what you all think, as we might go ahead and open the gates to general release with the V0.90X code !

-Justin
 
The cable resistance is now user settable as well. So if you replace or lengthen/shorten the charge cable to your battery, then you can have the satiator compensate accordingly via a custom cable resistance so that as much as possible the displayed output voltage is the voltage on the terminals of your battery pack rather than the voltage on the charger output.
Cable Resistance.jpg

This then opens up the possibility for us to experiment with having the Satiator bulk charge to a target open circuit pack voltage by including the battery's internal resistance into the cable resistance term. So if your battery is 200mOhm, and the cable resistance is 87 mohm, then if you set this to 287 mOhm it should in principle bulk charge the pack right to your desired target voltage with no extended trickle down period at the end, as we discussed earlier in this thread. Most BMS circuits wouldn't allow that behavior to full 4.2V/cell charge voltage since it would trip the BMS, but they should work fine if it is like an 80% or 90% charge where the combination of the open circuit cell voltage plus the IR drop is still less than the cell upper voltage cutoff.

OK, well we had a chance at testing out this theory today. Our test was to charge a 10S x 3P battery pack made up of Samsung 26F cells. Since these batteries which have fairly high internal resistance we knew from experience that they spent a very long time in constant voltage trickle mode to get to full charge. And you can see from the graph below that the bulk Constant Current charge phase with the default cable resistance lasted just under 18 minutes, while the charger then spent almost an hour and a half more holding constant voltage while the current went on an exponential decay. When the cable resistance was increased to 0.300 ohm, then the bulk charge current lasted more like 30 minutes, and the current decay to zero took an additional 60 minutes. Still quite a while, but a definite improvement. We then increased the cable resistance to 0.5 ohms, which in theory should have been a fair bit more than the batteries internal resistance. In that graph, you can see an even steeper rolloff of current in the constant voltage mode, but then at 62 minutes it cuts out entirely, presumably from a BMS tripping event, and then cycles on and off a few times.



It's not as ideal a behavior as I was expecting, and I think a better overall strategy would be to stop and sample the open circuit voltage every couple minutes rather than relying on an assumption that the battery terminal voltage during charging is easily expressed as Vterm = Vcells + IR

Have others had a chance to download the V0.91 software suite which contains this firmware? We finished the Mac OS version as well now:
http://www.ebikes.ca/downloads/Satiator_Suite_Mac_v0.91.zip
 
Simple818 said:
God I wish I could get my hands on one of these now. This thing is beyond badass. It like the perfect battery charger :D

Not impossible Simple818, we've decided to go ahead and make the general release start with the V0.9 firmware, so they are listed at http://www.ebikes.ca/shop/ebike-parts/chargers.html
A more formal announcement will happen in a week or two but the website access to them is fully enabled as of today for those who want. It's been a long haul this little project.
 
Need to add a few "Benjamins" into the PP account and I'll soon be in possession of a bombproof charge I can take for those long hauls. 8)

And with the beta 10s ESC in the Skateboard & Standup Scooter section, this would certainly do the trick as well. :wink:
 
justin_le said:
We then increased the cable resistance to 0.5 ohms, which in theory should have been a fair bit more than the batteries internal resistance. In that graph, you can see an even steeper rolloff of current in the constant voltage mode, but then at 62 minutes it cuts out entirely, presumably from a BMS tripping event, and then cycles on and off a few times.

Hmm, looking more closely this is definitely not a BMS trip but the positive feedback from having too high of a net cable resistance. The first time the V-IR is above the max charge voltage then as the current goes down, the remaining V-IR stays above the maximum charge voltage even as the current shoots all the way down to zero amps. The voltage slowly settles down even with no current, and after 2.5 minutes it relaxes to the point that it falls below the full charge voltage. The next burst of bulk charging lasts a little over a minute before once again V-IR is hare than Vmax, then the current goes to zero, but takes a longer time (5 minutes) to relax again below Vmax. The third time around it takes almost 15 minutes of no current for the voltage to relax all the way, and then after this 3rd burp of charging current the voltage finally stays settled above the threshold to turn on again.

IR Compensation Positive Feedback Closeup.jpg

So this simple linear resistive model isn't quite gonna cut it for achieve a charge mode that does bulk charging directly to the final open-circuit voltage. It can help, but the relaxation effect needs to be taken into account and that's not going to be very easy in the general case.
 
zlagger said:
Can this charger be left connected to the battery when not charging, or will it drain the battery?

Short answer is no problem, as the output impedance is 600 kOhm, so if you have a 36V battery connected, then it will bleed off about 60uA of current. Worse case with a 60V battery you'd have 100uA of drain. To put it in context, most BMS circuits draw in the range of 100-400uA, so it's generally less leakage on the pack than the BMS which is attached to the cells, and usually not enough to worry about unless you are leaving a battery connected for many months/years without turning the Satiator on. Even at 100uA, it would take 1.5 years for the Satiator to drain 1Ah out of the battery.

This info is on the spec sheet both of the brochure and the user manual, but I'm guessing the way it's listed is not all that clear what it means.
Output Leakage.jpg

Would it be more apparent to list this parameter as "drain current" or something like that?
 
Google works for you too. :)

Millionth.

100uA = 0.0001A.
 
I would suggest listing "parasitic drain" or "standby current" and use 0.0001 amp @ 63v or 0.00006 amp @ 36v. I know good and well how to figure those things out but didn't want to make the assumption that your output leakage was measured with no AC power on the charger. Make it easy, cause even the technically inclined folk will overthink it and still ask questions :lol:
 
johnrobholmes said:
I would suggest listing "parasitic drain" or "standby current" and use 0.0001 amp @ 63v or 0.00006 amp @ 36v. I know good and well how to figure those things out but didn't want to make the assumption that your output leakage was measured with no AC power on the charger. Make it easy, cause even the technically inclined folk will overthink it and still ask questions :lol:

Thanks for the suggestions JRH, in the end I was able to fit "Parasitic Drain from Battery" which I think is clear enough, along with an explanation that it is less than 1Ah / year to give contextual meaning.
Parasitic Drain Spec.jpg

That is now on the last specifications page of the latest user manual which I've finished for the V0.9X software releases,
http://www.ebikes.ca/documents/Satiator_Manual_V09FW.pdf

Man, writing manuals is a bitch, but I'm hoping that latest iteration is clear enough and legit enough looking that it will pass muster. If anyone has feedback comments or suggestions I'd be happy to hear since we're still playing around a bit with the document layout.

In other Satiator news, we've also a Linux build of the software suite for updating firmware and configuring profiles, and made updates to the MacOS and WIndows builds too, all available from the downloads section here:
http://www.ebikes.ca/product-info/grin-products/cycle-satiator.html
 

Attachments

  • Satiator_Manual_V09FW.pdf
    3.5 MB · Views: 74
Fantabulous. I seem to have lost my xlr to programmer adapter. I'm looking forwards to flashing the newest firmware and naming a few profiles. Just wish it would be enough for my 72v pack too! This cheap charger is noisy and just blah, I'm used to a caddy now!

You did say (and the spec sheet confirms) these were isolated, and can be used on series cells? Like I could split my pack charging to two units and wouldn't have to break the 12th cell and 13th cell interconnect? Which means the BMS wouldn't have to be unplugged as long as I was willing to risk the top side not having BMS overcharge protection
 
Badass Justin. Well done to get it up and selling on the site. I can only imagine how much effort that took.

Couldn't help but notice the other new things in the news page too, motors for bromptons, and improved 9c's.
 
After a short quest for a 16S programmable charger, someone finally pointed me to the Satiator. Bought one on Sunday night. Then I just found this thread. A great read. What a great charger this is going to be when I get it! Thanks Justin and team! (For my two 16S/12 Ah LiFeP04 Prodeco Oasis packs)
 
Found my programmer cable! I like the computer programming interface, nice and easy to modify stuff and rearrange. EXE file installed without a hassle on windows 7.
 
dogman dan said:
Badass Justin. Well done to get it up and selling on the site. I can only imagine how much effort that took.

Thanks Dan, it's definitely been a different league of project than anything tackled previously and if I knew just how much effort was truly going to be required when we started this..? Hard to say if we'd have bothered to take it on!) Anyways I wanted to thank all the beta and pilot testers who've helped us prove this design over the past 6 months, the feedback has been quite valuable and gives us a lot of confidence to proceed. Very soon we'll be making the launch 'official', with an update to our homepage site and all that. And then we'll need to do something totally foreign and engage in some actual marketting :shock: since we've got to reach a much broader audience than the DIY crowd to break even.

Here's the current concept for our website at least
Finished Satiator Homepage Banner.jpg

I'm pretty excited to see this through. And also to have time again to resume a lot of other ebike projects that have all been on hold while all resources were on making the Satiator rollout happen.

In the meantime, we've also just posted a V0.905 version of the firmware which fixes an issue where the small pop-up window that says "Enter Setup" when both buttons are held down wasn't always showing, as it's supposed to here:
Enter Setup.jpg
 
I haven't been able to flash any of the .satiator files.

The latest file that I have been successfully able flash was the Satiator_V0.815.hex file.

The flasher tool doesn't see any files other than .hex and these new files are saved as .satiator. I'm not sure how that made a difference, so I changed the names to .hex and it would not flash. The error log files say this:

Code:
Bootloader Version is...1 6.
Erasing 24 pages from c00 to 9c00
All flash above bldr erased!
file opened
buffers clearedFailed to open file!
hex file loadedhex file read failure!
 
See this post here,
http://endless-sphere.com/forums/viewtopic.php?p=962292#p962292

You need to download the newer Satiator software suite which has both the reflashing tool and the profile utility in one. And we've bundled the .hex file with additional stuff into a .satiator file in order to have better version compatibility and robustness going forwards. Here's the windows version of the suite:
http://www.ebikes.ca/downloads/Satiator_Suite_Windows_v0.95.exe

cal3thousand said:
I haven't been able to flash any of the .satiator files.
The latest file that I have been successfully able flash was the Satiator_V0.815.hex file.

The flasher tool doesn't see any files other than .hex and these new files are saved as .satiator.
 
Tracking shows my Satiator as being delivered tomorrow! Very excited! Looking forward to setting up two profiles for my two identical 51.2 nominal, 12 Ah LiFeP04 packs. 1st is a termination of 3.5 Volts per cell and 2nd is 3.65 Volts per cell. I'll execute the 1st profile charge and when finished, will execute the 2nd to see how much additional capacity goes in. I want an idea of how much less capacity I'll get when regularly charging to 3.5 VPC to extend life/charging cycles. I know capacity "in" is not necessarily indicative of capacity "out" be it will be close enough for my interests.
 
BVH said:
Looking forward to setting up two profiles for my two identical 51.2 nominal, 12 Ah LiFeP04 packs. 1st is a termination of 3.5 Volts per cell and 2nd is 3.65 Volts per cell. I'll execute the 1st profile charge and when finished, will execute the 2nd to see how much additional capacity goes in. I want an idea of how much less capacity I'll get when regularly charging to 3.5 VPC to extend life/charging cycles.

Waita put it to a cool test usage! My hunch though is that it'll be on the order of 0.01Ah if it even registers at all, as the extra charge needed to go from 3.5V to 3.65V (or even like 3.8V) with LiFePO4 is almost insignificant. The voltage curve shoots straight up so just the smallest fraction of an amp-hour will cause a huge swing, and I don't think you'd be able to discern the amp-hour capacity difference at all when you then discharge it. With all other lithium chemistries there is a significant effect between end of charge cutoff and capacity, but LiFePO4 is special in a lot of ways.

Do post the results here in any case. This would be a clever method to quantify the % capacity of different end of charge voltages on other chemistries for sure, without having to do a full discharge test.

I know capacity "in" is not necessarily indicative of capacity "out" be it will be close enough for my interests.

This would be true for lead and nickel packs but for lithium it's quite valid and you can safely assume Ah in = Ah out. There aren't secondary reactions taking place during charging so every electron in becomes chemically stored for discharge. Look up "coulometric efficiency" and you'll see it's upwards of 99% in lithium cells.
 
Back
Top