For my mobile robots I have traditionally used AA or AA batteries as power sources, which is fine but does mean that there is a minimum size of chassis that is needed and that the motors need to be more powerful in order to move the heavy batteries about. For some time I have been toying with the idea of moving to LiPo batteries and/or using solar cells to power the mobile robots (Solar Cell On A Sunny Day ) and it seems to me that these power sources need a DC-DC convertor ,as they provide a lower voltage or a more varying voltage. I still like to work at 5V for the Nanos and 6V for the motors so decided I needed a buck-boost convertor. I am barely knowledgeable about what buck-boost convertors do or how they work, or even if they are very good, but I decided I wanted the input voltage to be useable both below and above the output voltage, plus I wanted to be able to vary the output voltage as I am still experimenting and not sure what output voltage is optimum for me. Plus it needs to be low cost as I might want several of them for a herd of walking robots I have in mind. I discovered this system on the internet:


Buck-Boost Convertor


It's really designed to be used with a USB input, either the standard or a micro connector but solder pads are provided for a wired input which is what I will be using mostly. I'm sure there's a microcontroller on there somewhere but I cannot see it. There is a 3 digit seven segment LED display for showing the output voltage and screw terminals for the output connections. As with many of these boards there is no schematic or information so I have no idea whether the input ground is separated from the output ground, but as it is low voltage I'm assuming not. There is a sufficiently large brass knob on the multi-turn potentiometer (blue) on the left that allows precise control of the output voltage. There is a small button below the seven segment display that controls the output and the display. Short presses on this button turn the output ON and OFF, a long press and hold can be used to turn the display ON or OFF in whatever state the output is in. It's quite a clever single button controlled user interface. The only downside of this module is that I could not find a local seller and had  to wait 4 weeks or more for it to arrive from China. There are alternatives that have switched outputs but I wanted this infinitely variable version.


As there was no information that I could find on this module I decided to measure it's characteristics myself. So I used a bench power supply as the input and to measure the input voltage, a multimeter to measure the input current, another multimeter to measure the output current and the seven segment display to measure the output voltage. I only have two multimeters and the seven segment display seemed to be quite accurate which is why I used it. For the load I used a low cost resistor box. I have looked inside this resistor box and it uses surface mount resistors which is fine for the higher resistances but for the smaller values say under 50 Ohms I am a bit dubious about their ability to dissipate the heat without melting the solder and falling off so I have limited my measurements. Plus the multimeters only have current ranges up to 200 mA so any values larger than that I cannot measure anyway. I'm not really interested in trivial output currents so selected a maximum resistance load of 900 Ohms, down to 30 or 40 Ohms.



There are two parameters I am interesting in, the stability of the output voltage and the efficiency of the module. I have not shown the output voltage here but it never changed from the set value during all the measurements so either it is very good or I just happened to select the output voltage (5.0V)  that works really well. The efficiency is calculated in Google Sheets using power out divided by power in. For all these measurements I maintained the seven segment display to be on which obviously consumes some current. I did not have any direct method of measuring the LED currents but measured the input current with the LEDs ON, measured it again with them OFF, calculated the number of segments on and divided that into the current difference. For an output of 5.0V there are seventeen segments on.


Segment current = (Input current LEDS on - Input current LEDs off) / Number of segments on


and this provides a individual segment current of 0.6 mA.


Efficiency = (Vout * Iout)/(Vin * Iin) * 100%


For low output currents the efficiency will appear much lower as the seven segment display is consuming power.


I took two series of measurements, one with an input voltage of 5.0V and the second with an input voltage of 3.7V, both with an output voltage of 5.0V.



I am aware from the little knowledge that I have that this type of DC-DC convertor has a better efficiency the harder it is worked, which is illustrated by these graphs. The maximum efficiency of 71-72% is achieved at the highest output current (120 mA) that I could measure (40 Ohms). The efficiency is much lower at the lower output currents (900 Ohms load  giving 5.7 mA output current).


For comparison I have subtracteded the seven segment display current from the input current just for the input voltage of 3.7V (the red trace) and the efficiency at lower output currents is much improved, as would be expected.



I had been hoping for a higher efficiency than was achieved but this module does it's job and it looks like it will be useful for me on my mobile robots. The next step will be to try it out with a real LiPo battery and real solar cells.