Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
United Kingdom
Asked — Edited

Battery Warning With Nimh Battery Packs

I'm curious about NiMH battery warnings from the EZ-B. As I'm using an NiMH battery pack to power a v4, I have the LiPo battery warning disabled from within the "Connection" control in EZ-Builder. I have never had my 7.2 NiMH run so low as to disconnect my EZ-B's connection and today it happened for the first time.

When the v4 disconnected from EZ-builder, I thought this was due to a signal dropout. I power cycled the v4 and tried to re-establish the connection only to be greeted with the verbal "My battery is low" message. So does the EZ-B have a secondary battery warning system then, or have I missed something other than disabling the LiPo battery warning in the connection control?

I know a v4 shouldn't be powered with anything under 4.5 volts and didn't get the chance to see what the voltage was on my 7.2v NiMH before the v4 disconnected. Sorry if it sounds like a daft question, but this is the first time I have come across this and was curious.



Upgrade to ARC Pro

Become a Synthiam ARC Pro subscriber to unleash the power of easy and powerful robot programming

What I would like to see as far as the battery low warning is concerned is to be able to run the unit for a few more seconds after that. That gives time to move the robot (JD in my case, officially named Skippy now) to a position to make plugging in the charger easier. I my case I make Skippy lower his right arm and raise his left up to his head to fully expose the charging plugin. He also straightens up to make him more stable after being turned off. This as opposed to being in whatever pose he is in at low battery time.

Right now I just have a script running which monitors the battery voltage and has it go into the "Charging Position" when the voltage gets below 6.8V. Even then it doesn't do that unless it gets 3 readings in a row at that level. I have found it can suddenly drop to a very low level on a reading of the battery voltage now and then. Also note I said "in a row." Not 3 low readings over the entire time he is running. But that, of course, leaves a bit of running time unused so it would be nicer if it would simply run for a bit even after the low battery warning comes on and disables the robot entirely.

I also have a voice command that I use to get him into position on demand. Which is, of course, also selectable from the Autopositioner window. Oh, and this is for DJ ... You'll be pleased to know I use the Autopositioner nowadays ... a lot!;)
@WBS00001, you can set warning to start nagging you at any voltage above 6.6 volts. If you want more time you can set the level above that minimum and that should give you the time you need. Click on the little gear in the upper right corner of the connection control then click on the Settings tab in the upper left corner of that window. Set your levels in the Min Voltage box of the battery monitor setting section. You can set this value next to each connection of the ezb you want to watch and be warned about. ;)
United Kingdom
Anyone have any ideas on how to have an EZ-B monitor battery voltage from a battery not powering that EZ-B?


Anyone have any ideas on how to have an EZ-B monitor battery voltage from a battery not powering that EZ-B?

Through an ADC port, using a voltage divider as needed to get the voltage low enough for the ADC to read. @Rich has a thread on it somewhere with instructions.

United Kingdom

Excellent. thats great. I'll have a look through Rich's threads and have a look.

Thank you.:)
@Dave Schulpius
Thank you for your post. Perhaps I don't understand the whole point of what you are suggesting, or I didn't explain myself well enough. To me, if I set the warning to a higher level than 6.6V all that will do is suddenly disable the robot sooner than it does now.

OTOH, if I set the nag warning to a voltage lower than 6.6V, then I would get the extra run time before complete shutdown I was after, but I get a message saying doing so could seriously damage the battery, so I'm Leary of that. Additionally, I would still have to run my own script to detect the voltage early so I can place the robot in the Charge Position before the nag warning comes on since the robot is completely disabled and the servos released at that point regardless of anything else.

Overall, to me, this sudden total disabling of the robot isn't too good. I've had it fall off my desk when the servos were suddenly released like that (in whatever position it was last situated). Seems to me it would be good if it executed a user selectable script before it totally disables everything. That way it can get the robot to a known, safe position first. Doing so would eliminate the need for a script like mine running all the time.
United Kingdom

Running your own script to monitor battery voltage is essentially the the same thing as what ARCs monitor does, so disabling the ARC one and running your own script to check every second or so would pretty much be same thing, but with the added bonus of writing in your own more graceful "shut down" position for your robot before the EZ-B resets. But I do agree with you that if ARCs battery monitor had an optional script field to write a custom script, it would be a cleaner way of doing this and it's a nice idea. Maybe a feature request for a future update.

@Anyone else.

I had a look at the tutorial it's a good one, but not sure if it's something I could confidently do as I really don't want to risk damaging the EZ-B in any way.

I found this however which connects to the Vcc & Grd battery leads, and has a third signal wire. Would just hooking this meters signal lead to an ADC port give me a battery voltage reading?

Digital volt meter

User-inserted image
@WB, sorry, your right. I forgot the EZB will shut down it's ports when that warning goes off. It's been a while sense I fought that issue. The only solution if your using batteries in your robot is to run your custom script. New and inexperienced Revolution customers probably wont know how to do this. The way this forum and the EZ Robot business plan is structured is that it's up to more advanced users to point these things out and help the young and newbies . We have all found ways to work around the built in and hard coded safety features of the EZB. I don't think your going to see any of that change unless EZ Robot redesigns the EZB and comes out with a V5 version.

Although EZ Robot is space aged advanced I think it's sometimes too idiot and kid proofed. Personally I think it would have been a better to just be able to disabled the warning and shutdown features. This would be better for people responsible or advanced enough to watch the battery levels some other way or those of us running power supplies below the 6.6v but above EZB's min power requirement. Let a few people kill a battery or two and they will learn to keep an eye on it or turn on the protection feature. Personal responsibility.

I do understand that EZ Robot's future is in the kids who are just becoming interested in robots. However when they designed Revolution and the V4 around it, (in some areas) EZ Robot kinda forgot about the older and more advanced custom builders. It's an old grip I have and one that is really over shadowed by the rest of the mind blowing features of the EZB. I also do understand that there is only enough room on the EZB and what you can pack into it. However the focus of EZ Robot on it's new and mostly unskilled Revolution customers is still obvious to this day and probably rightly so. There was a thread asking for a separate area of this forum for custom built robots and more advanced builders. The answer was a polite "no, go start your own forum for that". My interpretation of that "no" was that DJ wants the more skilled to watch over the new kids and unskilled and answer the many simple and repetitive questions coming in. He also said he wants the advanced builders to
inspire" the new comers. I'm not sure I really by that last one. I cant really blame him for this approce as it's a brilliant customer service solution. And like I said above, the kids are EZ Robot's future. The more advanced will find a way to make it work if the product is good enough. And it is. ;)

EDIT: After thinking this through a little more I think that you can disable Battery Monitoring in ARC. I think (but not sure) if you disable Battery Monitoring you can drain your lipos down to nothing. If that is the case what I said above about not having control of this feature is incorrect. *blush* I also want to make it clear that I do feel that DJ has worked to assist and help the more experienced builders. He has in many cases jumped to give us features we asked for or needed. I just wanted to point out that I feel that the focus group that EZ Robot is aiming at now is the younger crowd.
United Kingdom

How would something like the LipoShield connect to an EZ-B? I had a look at it and how to connect it to an R/C controller, but I'm a lil baffled as to how to connect it up to a v4.
@Steve, I'm not really sure how to interconnect the lipoShield. From the description it sounds like it's stand alone and operates independently. They say that when you see the device your controlling start to act and respond sluggishly you will have time to maneuver it to a safe resting position. I would think you still would have to have a script looping and watching the voltage. When the voltage drops to the point where the LipoShield kicks in that's when an alert could be sent to you and that is when you would start bringing your bot to a rest position. Of course if you get an alert you may not even need the LipoShield but it would automate the shutdown procedure better then the sudden cutoff that the EZB would do.

After thinking this through a little more I would think that if you use any of your own scripting to monitor the battery and use the LipoShield you would also want to disable Battery Monitoring in ARC. I think (but not sure) if you disable Battery Monitoring you can drain your lipos down to nothing. If that is the case what I said in one of my other posts about not having control of this feature is incorrect. *blush*
@Steve G.
There are devices that will totally isolate your EZ-B from the 12V battery yet allow you to track voltage from the 12V source on an ADC port. They are called linear optoisolators. Most of the circuits shown with them are complicated and require opamps. However, for your situation, I think just 2 or 3 resistors and maybe a capacitor would do the trick. Perhaps a diode also to prevent burning out the optoisolater from reverse voltage. They come in 8 pin IC packages such as the Texas Instruments TIL300. The advantage is that they would provide absolute isolation between the 12V supply and the ADC port input. No chance of burnout. Might take a bit of tinkering to choose just the right value of resistors to get things in the right range but it should work.
United Kingdom
Thank you for the advice gentlemen.


As it stands, I have the ARC battery warning disabled and I'm going to write a warning script to monitor the EZ-B's 6 cell 7.2 NiMH that triggers at 6v, so as you mention, I would have to do the same for monitoring the 8 cell 12v NiMH with another script but setting the warning for 8v (eventually this will all be part of an "auto dock & charge" control as well). So maybe the LipoShield will do the trick, if I can figure out how to hook it up. As for draining a LiPo with ARCs warning disabled, the secondary EZ-B's warning would kick in at 4.5v (unless that was disabled too), although at this point will more than likely be too late and LiPo damage would be done.


The TIL300 does sound like a good option as well. As for the linear optoisolater, that's a little bit beyond me as circuitry is a weak point for me and something I really havn't taken the time to learn. So me throwing something like this together is something I'm not really comfortable doing just yet. I appreciate your response explaining that though, and was an interesting read. Just shows I've got a quite a bit more to learn in that regard ;).

Anyway, thanks again guys. I'm grateful for both your input.

As for the Digital volt meter mentioned in the earlier post, this might be something I might get to try it out. The 12v batteries output voltage won't be going anywhere near the EZ-B, just the signal wire and common ground to an ADC port, so it should be pretty safe to play with (unless anyone thinks or knows otherwise). The only problem I see would be converting ADC values to an understandable, and fairly accurate 12v NiMH voltage reading.
@Steve G
There will have to be at least 2 wires going from the digital voltmeter to the EZ-B. Nothing will happen if just the signal wire is connected to the ADC input pin. You may get some noise on the input pin to the ADC port, but that's all. When you run 2 wires, however, you have the possibility of burning out the ADC port. Especially if the voltage between them is more than 5 V. But even beyond that there could be complications from the separate power supplies being connected together via the digital meter.

There is still a possibility of using a simple voltage divider to do the job using 3 resistors instead of just 2 (for isolation between the batteries). I would have to run the idea by DJ first however, to be sure there are no problems I have not foreseen. He already uses current limiting resistors in the EZ-B to protect the inputs and this method relies on the same principles.
United Kingdom


just a signal wire to an ADC port

Lol, let's try again. I just read your post and re-read mine, and I just realised my mistake. It should have read "just a signal wire and common ground from the 12v ground, to an ADC port".

It'll be interesting to hear what DJ would have to say about the voltage devider idea.
May work but it's not available anywhere I can find.
United Kingdom

Lol, yeah there is that. I had similar trouble. However there is a company in the UK that sells them but are currently "Out of Stock", but I have emailed them asking when they are likely to get some more. Fingers Crossed.
United Kingdom

Good news. I managed to find somewhere that had them in stock...

Under-voltage over-voltage sensor

It will take a couple of weeks to get here as it's coming from the U.S. to the UK, but that's no problem. I just hope it will work.

Watch this space...;)
United Kingdom
@Richard and anyone else using NiMH battery packs.

In post #2 when you (Richard) said "I believe it is something like 1V per cell", you wasn't far off the mark, as I have since seen it said here and there on the interweb. I did also ask on a website for a company called "Overlander" before I got your reply and received an email response this morning...


Dear Steve Gibbs,

New answer was just posted to your question regarding .

Your question:
Hi there. Could you tell me, what is maximum under-charge voltage I can go for the 3800mah 7.2v premium sport battery pack, before permanent damage occurs? Thanks in advance.



Each cell can't go below 0.8v for a Nimh, before permanent damage occurs so in this case the pack can't really go below 4.8v.

Hope this helps

Thank you again,

So good to know knowing the overall 4.8v threshold of a 7.2 NiMH pack. Below is a link to the website for anyone interested...

Overlander Batteries