I'm designing a DIY Thermal Imaging solution for my DJI Mavic Pro drone. Whilst the full design has been included for background info, this post refers to the power supply module design. The pertinent (power supply module) system requirements are:

  • MH: Battery pack must be safely charged* from a single USB (5V @ 2.1A) supply.
  • MH: Battery pack must supply two power IR LEDs at 1,000mA CC, a Raspberry PI at circa 800mA and a WiFi adapter for around 1 hour.
  • SH: Power IR LEDs should be remotely controllable (dim-able and on/off)
  • SH: Should support automatic dual supply - charge whilst in use

Note: Meaning CC/CV charging with cell balancing and protection.

I have completed my initial design but still have one outstanding query. My request to you:

  • Power Supply Module Design peer review (if you have time)
  • Options for load sharing query

Power Supply Module Design Peer Review

Here's my design overview:

DJI Mavic Pro Thermal Imaging Mod

USB Breakout. Just a simple USB breakout.

Battery Pack. I figured: 1 hour x circa 2,000mA load = 2,000mAh capacity needed but with the RPI CPU being permanently maxed (image processing), and the WiFi adaptor constantly transmitting, I overspec'd at 3 x 1,400mAh LiPo cells = 4,200mAH.

Boost Charger. Product Link. As I want to charge from a simple 5V USB supply I need to boost the input supply voltage to the battery pack float voltage (i.e. 12.6V for a 3S pack) but still maintain current control (max 1C charge rate). The product selected allows for adjustable voltage and current control and automatically switches between the two i.e. constant current at 1,400mA until 4.2V x 3 = 12.6V is reached, then constant voltage maintaining that float voltage. It DOES NOT have an automatic cut-off - my rationale here is that charging will be supervised and maintaining a 4.2V per cell float voltage should not damage the cells.

Balance Board. Product Link.. Whilst the three cells were bought together, I can't assume their chemistry will be identical, hence the need to balance. The product selected is a basic FET current bypass balancer.

Protection Board. These come with the cells and protect from the usual over charging, over discharge, short circuit etc.

XT. (background info) All three cells are connected in series and, via a tiny busbar, to an XT30 connector. Thus, the battery supply module outputs a nominal 11.1V to the processing module.

Buck Converter. (background info) Product link. The Raspberry PI and WiFi adaptor both need a 5V supply but the battery pack outputs 11.1V (nominal, actually 9.0V - 12.6V depending on state of charge). The product selected is a simple 2A continuous buck converter rated at 94% efficient for a 5V output.

IR LEDs. (background info) Product Link. To minimise cost, my thermal imaging module (see below) is cheap but the drawback is that it's relatively low resolution (160 x 120 pixels) - basically hot objects would just look like 'blobs' from a drone's perceptive. To increase contrast I am overlaying an 'edge' from an optical feed but in the dark there is obviously insufficient visible light, so I'm using a camera module without the usual IR filter and flood lighting the scene with IR light. The product selected is the highest power IR LED I could find for a reasonable cost. Each of the two LEDs required a suitable heatsink, heat-transition pad and, of course, something to mount it on.

LED Driver Module. (background info) Product Link. Each of the IR LEDs require at least a 3.2V forward biasing voltage and output rated illumination when driven with 1,000mA. The product selected is a 1,000mA constant current source that requires at least 6V input (has 9V minimum from power supply module) and can output up to 30V. I chose this because it is efficient (~95%) and easily dim-able (PWN output from the Raspberry Pi, remotely controlled from the ground via the Mavlink protocol).

Thermal camera module & breakout board. (background info) Product link. By far the most expensive component but, as mentioned, above relatively low resolution. The FLIR Lepton v3 Outputs a 9Hz (export compliance) Video over SPI (VSPI) video feed.

Optical camera module. (background info) Product Link. I'm using this module to create an optical video feed that will be processed using OpenCV as an edge-detected overlay for the thermal feed. Product chosen for low cost and simplicity - plugs directly into the RPI Zero CSI port.

(background info) So to summarise, the camera module flood lights the ground with IR illumination and provides both thermal (LWIR) and NIR video feeds to the processing module. The processing module accepts these video feeds and carries out various image processing tasks, such as edge detection, resolution transform and, in the future, I hope to use AI to detect and highlight objects. It also broadcasts the two video feeds down to the ground station using the 5.8GHz WiFi band (not discussed here - very simple power arrangements) and accepts and processes MavLink instructions from the ground station e.g. IR flood lighting brightness, thermal colour profile etc. The power supply module provides power directly for the IR LEDs and via a buck converter for the Raspberry PI and WiFi adaptor and can be charged from any USB power supply.

If you can spend the time to review the design of the power supply module, I would appreciate any and all comments / feedback, and, of course, if you have any questions about the design, please reach out.

Options For Load Sharing Query

Here's where I'm struggling.

I want to be able use the system whilst it is charging but I don't think I can in it's current design state. I'm thinking that if the processing and camera modules are acting as a varying load on the battery pack, the CC/CV charging circuit won't know what's going on and, worse still, if I limit the current I risk brownouts on the Raspberry Pi.

Is there a typical design pattern for a load sharing solution that would allow automatic switch-through if a load appears on the battery? Or some other way to manage load-sharing between battery charging and operation? Looking for options.

Thank you for any help and guidance :)

  • \$\begingroup\$ Oh, btw, if anybody is interested in details about the whole project, there's a thread here: mavicpilots.com/threads/thermal-imaging-on-the-mavic-pro.17116 where I discuss the ongoing development. \$\endgroup\$ Apr 21, 2018 at 21:19
  • \$\begingroup\$ If this will fly on a drone, then why not use the drone's battery as a power source? \$\endgroup\$
    – bobflux
    Apr 21, 2018 at 22:45
  • \$\begingroup\$ Ok before this can be reviewed, make a list of performance expectations on the system defining very input and output ( error rate at xx range, battery life , image jitter , power capacity , max payload weight, size constraints., antenna beam gain. I_charge can be >>I_bat sense \$\endgroup\$ Apr 22, 2018 at 1:22
  • 1
    \$\begingroup\$ We discourage broad, open-ended design review questions here on EE.SE: The answer(s) tend to become long strings of unrelated edits and/or comments. While this might help you with your immediate problems, it is of no value to the site overall. We DO allow design review questions in which you explain your choices and then focus on a few points about which you still have doubts. To get a better feel of what is or is not acceptable, search for "design review" on the meta site. \$\endgroup\$
    – Dave Tweed
    Apr 22, 2018 at 1:34
  • \$\begingroup\$ @peufeu Thank you for your comment. I wanted the solution to be entirely self contained, so it can be added/removed without impact to the drone. Additionally, taking power from the flight batteries means less flight time! ;) \$\endgroup\$ Apr 23, 2018 at 9:07

1 Answer 1


Just as in iPod's , iPad's and all Laptops, the charger can handle both charging the battery management IC while the periperhals converted energy from the battery into DC-DC regulated supplies to drive the loads.

Of course the total charge time is increased and perhaps doubled, so the charger and manager must be able to handle both. This may result in some tradeoffs but you must choose the switch losses and thermal rise and cost off the switches to achieve the power capacity you need.

Hypothetically, if the battery can handle a 1C charge rate of x Amps and the load is y Amps then the charger must be able to supply x+y Amps to keep the same charge rate. I think 2.4A USB hub chargers are standard these days so a good heatsink and/or thermal controlled current limit may be added to the design and a slower charger rate is necessary for 10W and 12W chargers used on iPads when operating.

Your biggest load is probably the IR flood LEDs. You can get much better efficiency and range by pulsing the LEDs at a lower frame rate and disable during the blanking interval with higher pulse current but same average. e.g.

  • \$\begingroup\$ Stewart Many thanks for the comment. Yes, agreed with the overall drain on the power supply input. I actually don't even mind it stopping the charge if a load is detected, I just don't want plugging in a supply to cause problems e.g. potentially overcharging the battery pack (unlikely due to protection) when the unit is operational. Yes, high current pulsing the LEDs is certainly an option and you can actually get more illumination by doing so (according to the datasheet), but for now I just want to keep things simple. They will be pulsed anyway if they are dimmed. \$\endgroup\$ Apr 23, 2018 at 9:17
  • \$\begingroup\$ Hmm, at-addressing didn't work above (sorry for addressing you with your surname!). I thought your "e.g." was an unfinished post but actually a link! Yes, I get you and I hadn't thought of that. Depending on the dimming mark/space I might end up with 'black frames'. I've noted this on my issue log. Thank you for pointing this out and providing a potential solution :) \$\endgroup\$ Apr 23, 2018 at 9:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.