Otii - Power Consumption Optimizer for Wearables and IoT devices
The Otii energy optimisation tool allows precise current- and energy consumption measurements of low-power devices like wearables or IoT edge devices.
Qoitech Otii Arc
The Otii Arc is a current meter for low-power device development made by the Swedish company Qoitech. Intended for low-voltage and low-current applications, it is a small power supply that very precisely measures the current of its load.
The Otii Arc does not have any user controls like knobs and buttons, and it doesn’t have a display either; it only has connectors. The device is controlled from a computer instead, with the Otii software that also displays the captured data.
If the load current stays below 20 mA, the Otii can measure it with a resolution of 5 nA! Below 2.7 A the resolution is 82 µA, and up to 5 A the resolution is 1.5 mA. It samples at a rate of 4 kHz, giving it a time resolution of 250 µs.
Okay, so why not use my oscilloscope instead? Well, you can, of course, but it is quite a hassle to set up a low-noise precision differential measurement and see what is going on over an interval of minutes or hours. Even a high precision multimeter with logging capabilities would have a hard time to do this.
As an example, I tried a BBC micro:bit board connected to a BME280 weather sensor that captures temperature, humidity and atmospheric pressure. The board has an nRF5-based radio and it runs MySensors IoT networking software.
You would never have noticed this with a multimeter.
This time the idle current doesn’t drop much, about 5 µA, but the high-power peaks have become shorter, and the overall average consumption is lower now, from 2.3 to 1.7 mA, a difference of 600 µA or more than 25%.
Doing this makes the idle current drop to around 195 µA. This is still relatively high, but we will stop here. To go even lower we must study in detail the power-down capabilities of the MySensors library and the micro:bit’s microcontroller which is out of scope for this review.
Now, if we compare the average current of the first experiment, corrected for the debug interface current, to the last experiment, we observe an almost 50-times drop from 16.8 mA to 317 µA. For a common 3-volt CR2032 button cell this means an autonomy improvement from about half a day to almost one month.
The Battery Toolbox
This brings us to the second function of the Otii Arc: it can emulate batteries if you invest in a Battery Toolbox license. A database with batteries is available on GitHub and you can characterise or profile batteries yourself by recording a discharge curve. The Otii can then replay the battery curve and you can observe how your device works with that battery.
The Battery Toolbox is a rather interesting option, but it comes with a price tag of some 500 euros per year. For comparison, a license-free Keithley 2281S precision programmable DC power supply and battery simulator costs over 3,000 euros. It is up to you to decide what is better for you in the long run.
The rectangular connector
You may have noticed the rectangular connector on the Otii Arc front panel. This connector gives access to a few more analogue inputs for measuring and visualizing other voltages and currents. There are also some digital I/O ports and there is a serial port. There is also a 5-volt power output.
The serial port is practical as it lets you see debug information from the device under test. You can also use it to send data to the device to switch for instance its operating mode.
The digital outputs can be toggled on and off from the Otii program, the digital inputs can be graphed. This is nice indeed, as you can use these pins to let the device under test (DUT) show when exactly it executes a certain function or program part. This is for instance great for pinpointing which part of the code is responsible for a certain current spike.
Enterprise license
Finally, the Otii software can be enhanced with the Enterprise license. I don’t know what it costs, but it will give you the battery profiler and emulator, a TCP server, and LUA-based scripting. This license also includes extended tech support and service and even training.
With scripting you get full control over the Otii, its GPIO pins and the captured data. Automating tests becomes possible too, including talking to LXI-enabled instruments. A list of scripting examples can be found on the Qoitech website, together with the API.
Conclusion
Wrapping up, I think that the Otii power consumption analyser from Qoitech is an interesting tool for anyone trying to get the longest battery life for his or her wearable or IoT device. It is well-built, the Otii hardware and software are easy to use and results are obtained quickly. Analyzing the graphs can reveal interesting information about your device that may have gone unnoticed without this tool.
The Otii standard version seems enough for me, but those who want to squeeze the most out of it may want to invest in an additional enterprise or battery toolbox license. Maybe just for one year.
More information
The Otii Arc is a current meter for low-power device development made by the Swedish company Qoitech. Intended for low-voltage and low-current applications, it is a small power supply that very precisely measures the current of its load.
The Otii Arc does not have any user controls like knobs and buttons, and it doesn’t have a display either; it only has connectors. The device is controlled from a computer instead, with the Otii software that also displays the captured data.
Specifications
When connected to the USB port of a computer, the device can supply up to 3.75 volts in auto-ranging mode and up to 4.2 volts if you push it in high range. It can source 2.5 A continuously, 5 A peak, but your USB port may not like that. With an external 7- to 9-volts DC power supply the Otii can output up to 5 volts.If the load current stays below 20 mA, the Otii can measure it with a resolution of 5 nA! Below 2.7 A the resolution is 82 µA, and up to 5 A the resolution is 1.5 mA. It samples at a rate of 4 kHz, giving it a time resolution of 250 µs.
Getting Started
Using the Otii is pretty simple. Let us assume you want to analyse the power consumption of a 3-volt battery-powered wireless device, like an IoT sensor or so. All you have to do is connect the Otii in place of the battery, launch the Otii control software on the computer, and, after setting up the power supply’s output, start recording. Much like on an oscilloscope, you will now see a trace of the current.Okay, so why not use my oscilloscope instead? Well, you can, of course, but it is quite a hassle to set up a low-noise precision differential measurement and see what is going on over an interval of minutes or hours. Even a high precision multimeter with logging capabilities would have a hard time to do this.
Let's give the Otii a spin
With the Otii it you can analyse how the software running on the low-power device influences its current consumption and with that, how long the battery will last.As an example, I tried a BBC micro:bit board connected to a BME280 weather sensor that captures temperature, humidity and atmospheric pressure. The board has an nRF5-based radio and it runs MySensors IoT networking software.
Naive Approach
The first approach is a basic Arduino sketch that reads the sensor once per second, transmits the data and does nothing for the rest of the time. The average current was measured at around 17 mA.Make it Sleep
Instead of idling in a loop I made the controller sleep most of the time. The average idle current dropped to about 1.8 mA. That’s almost 10x better.Make the Sensor Sleep Too
A step further is to put also the BME280 sensor to sleep when it is idle. This makes the idle current drop to 1.3 mA. To my surprise the oscillation in the current is gone. Apparently, that was due to the sensor. So, by making the BME280 sleep, not only the current consumption dropped a bit, we also removed some noise.You would never have noticed this with a multimeter.
Switch Off the UART
Still, the consumption is quite high for a low-power device. The micro:bit also has a magnetometer and an accelerometer, but they are in stand-by mode, I checked that. However, the UART is still running, so let’s switch him off too.This time the idle current doesn’t drop much, about 5 µA, but the high-power peaks have become shorter, and the overall average consumption is lower now, from 2.3 to 1.7 mA, a difference of 600 µA or more than 25%.
Power-down the JTAG Port
There is one more thing to try, which is related to the JTAG programming interface of the nRF5 microcontroller on the BBC micro:bit. After programming the device, the debug interface remains activated and continues to consume current. To switch it off, you must power-cycle the board.Doing this makes the idle current drop to around 195 µA. This is still relatively high, but we will stop here. To go even lower we must study in detail the power-down capabilities of the MySensors library and the micro:bit’s microcontroller which is out of scope for this review.
Now, if we compare the average current of the first experiment, corrected for the debug interface current, to the last experiment, we observe an almost 50-times drop from 16.8 mA to 317 µA. For a common 3-volt CR2032 button cell this means an autonomy improvement from about half a day to almost one month.
The Battery Toolbox
This brings us to the second function of the Otii Arc: it can emulate batteries if you invest in a Battery Toolbox license. A database with batteries is available on GitHub and you can characterise or profile batteries yourself by recording a discharge curve. The Otii can then replay the battery curve and you can observe how your device works with that battery.
The Battery Toolbox is a rather interesting option, but it comes with a price tag of some 500 euros per year. For comparison, a license-free Keithley 2281S precision programmable DC power supply and battery simulator costs over 3,000 euros. It is up to you to decide what is better for you in the long run.
The rectangular connector
You may have noticed the rectangular connector on the Otii Arc front panel. This connector gives access to a few more analogue inputs for measuring and visualizing other voltages and currents. There are also some digital I/O ports and there is a serial port. There is also a 5-volt power output.
The serial port is practical as it lets you see debug information from the device under test. You can also use it to send data to the device to switch for instance its operating mode.
The digital outputs can be toggled on and off from the Otii program, the digital inputs can be graphed. This is nice indeed, as you can use these pins to let the device under test (DUT) show when exactly it executes a certain function or program part. This is for instance great for pinpointing which part of the code is responsible for a certain current spike.
Enterprise license
Finally, the Otii software can be enhanced with the Enterprise license. I don’t know what it costs, but it will give you the battery profiler and emulator, a TCP server, and LUA-based scripting. This license also includes extended tech support and service and even training.
With scripting you get full control over the Otii, its GPIO pins and the captured data. Automating tests becomes possible too, including talking to LXI-enabled instruments. A list of scripting examples can be found on the Qoitech website, together with the API.
Conclusion
Wrapping up, I think that the Otii power consumption analyser from Qoitech is an interesting tool for anyone trying to get the longest battery life for his or her wearable or IoT device. It is well-built, the Otii hardware and software are easy to use and results are obtained quickly. Analyzing the graphs can reveal interesting information about your device that may have gone unnoticed without this tool.
The Otii standard version seems enough for me, but those who want to squeeze the most out of it may want to invest in an additional enterprise or battery toolbox license. Maybe just for one year.
More information
Discussion (0 commentaire(s))