I present here the mini Brushless Gimbal Controller, or mBGC, which consists of an Arduino Pro Mini (or Arduino Nano) and an extension board carrying the drivers for two brushless motors. Function-wise the mBGC is compatible to the AlexMos and Martinez controller boards, except that it uses different motor drivers, and that the Pro Mini version doesn’t have the USB adapter on-board. The design goal was getting a small, lightweight and yet very cheap brushless gimbal controller.
Pictures of the first mBGC I’ve built (a v0.05)
There are two series, the v0′ and v1′ series, which differ in the used motor drivers:
mBGC v0.xx:
The v0′ series uses TC4424 drivers. These boards yield the smallest and lightest mBGCs, but the maximum current is limited to ca. 150 mA per motor. This series is ideal when every gram counts.
mBGC v1.xx:
The v1′ series uses TC4452 drivers, which allows for significantly higher currents (not yet known precisely, ca. 500 mA per motor). This series should hence be suitable also for „bigger“ motors or gimbals, but are slightly heavier and ca. 5 Eur more expensive. This series is, when an integrated USB connector is not mandatory, the standard choice.
mBGC-N v1.xx:
In the v1′ series there is also a version for the Arduino Nano. This combo has an integrated USB connector, but is obviously somewhat larger and heavier than the other mBGCs. In most cases the mBGC-N is a perfect substitute for a Martinez board, only that it is significantly smaller and lighter, and somewhat cheaper.
Board | Weight* | Costs** | Max. Current | Connection |
mBGC v0.08 | ca. 4.15 g | ca. 15 Eur | ca. 150 mA | FTDI |
mBGC v1.04 | tba | ca. 20 Eur | ca. 500 mA | FTDI |
mBGC-N v1.08 | ca. 8.5 g | ca. 20 Eur | ca. 500 mA | USB |
* The weight depends on the thickness of the print boards and how many pin headers etc. are installed.
** The costs obviously depend a lot on the supply sources.
Design concept
The mBGC is build on the mosfet drivers TC4424 or TC4452 (or compatible drivers, see below). They are particularly fit for our purpose: They can handle, depending on the driver type, peak currents up to 12 A, allow supply voltages of 4.5 V to 18 V, and switch fast enough to run the motors at a PWM of 32 kHz. Additionally, they are small, supply is easy, and they come in a SOIC8 package, which is good for soldering by hand. The driver have the disadvantage that an enable pin is missing and that the output resistance is relatively large. Furthermore, they are not „real“ motor drivers and the output protection isn’t designed for motors. However, experience has shown that they work perfectly for our purposes. Among the competitors L293DD, DRV8839, SN754410 they are, IMHO, the best choice.
The high peak currents sound exciting, however, in practice the maxium current is limited by heat and thus determined by the output resistance. Experience has shown that the TC4424 of the v0′ series are good for about 150 mA per motor. Not much experience is yet available for the TC4452 of the v1′ series, but more than 500 mA were reported by Overtuner (see here).
The mBGC has a voltage divider on board for measuring the battery voltage, which is connected to pin A3 or ADC3. This allows for the implementation of a under-voltage protection and a voltage-adpated PID controller in the firmware. The divider resistors, R1 and R2, can be choose at will; I’ve chosen R1 = 47 k and R2 = 10 k. The BruGi open source firmware is currently designed for R1 = 10 k und R2 = 2.2 k (link). The divider ratios are quite similar, but I prefer the higher resistances.
Forum Threads for Questions, Discussions, Suggestions, etc.
Mini Brushless-Gimbal Elektronik @ fpv-community
mini brushless gimbal controller @ rcgroups
Alternative drivers
There exists some drivers pin compatible to the TC4424, which allow even for peak currents up to 4 A:
- TC4427, IR4427S (peak current 1.5 A, output resistance 7 Ohm)
- MAX4427 (peak current 1.5 A, output resistance 4 Ohm)
- MCP14E4 (peak current 4 A, output resistance 3.0-3.5 Ohm)
- TC4424 (peak current 3 A, output resistance 2.8-3.5 Ohm)
- IXDN404 (peak current 4 A, output resistance 1.5-2 Ohm)
Acknowledgements: I started the project in the context of my micro brushless gimbal, but venturing into the design of a print board was kicked off by der-Frickler’s thread Mini Brushless-Gimbal Elektronik, which is greatfully acknowledged. The TC4452 drivers were discovered by fpv-community-user Overtuner (here). Thanks!
Terms of Usage: The Mini Brushless Gimbal Controller (mBGC) and its current and future variants described below is open source hardware, under the terms of the TAPR Open Hardware License as published by the Free Hardware Foundation, see http://www.tapr.org/ohl.html.
The mBGC v0.xx
This mBGC series is based on an Arduino Pro Mini (5V/16MHz) and uses TC4424 or compatible drivers. Since the TC4424 are double drivers only three of them are needed, which reduces weight and costs. This version is hence the smallest, light-weightest, and cheapest mBGC, but the max motor current is limited to ca. 150 mA per motor, which owever fits perfectly to e.g. micro gimbals. The current version of this board is v0.08.
Electric scheme and board layout
Parts list
1x Arduino Pro Mini 328p – 5 V/16 MHz
3x TC4424 or similar, see above
1x 10 uF to 33 uF, tantal SMD C
2x 100 nF, SMD 0805
1x single-row pin header with at least 12 pins
1x 10 k, SMD 0805
1x 47 k, SMD 0805
Build
There which parts goes on the print board should be obvious. The following pictures show the result for the v0.05 version. (Please note that here resistors R1 = 10 k and R2 = 2.35 k (2x 4.7 k in parallel) were used, in contrast to the above suggestion)
The mBGC v1.xx
This mBGC is like the v0′ series based on an Arduino Pro Mini (5V/16MHz), but uses TC4452 drivers. The TC4452 are single drivers and hence six of them are needed, and therefore weight and costs are somewhat larger as for the v0′ series. The max motor currents are however significantly higher, the board provides a minimum of 500 mA per motor, which expands the range of application. This mBGC is hence so to say the standard mBGC. The current version of this board is v1.04.
Electric scheme and board layout
Parts list
1x Arduino Pro Mini 328p – 5 V/16 MHz
6x TC4452
1x 10 uF to 33 uF, tantal SMD C
2x 100 nF, SMD 0805
1x single-row pin header with at least 12 pins
1x 10 k, SMD 0805
1x 47 k, SMD 0805
The mBGC-N v1.xx
The mBGC-N is based on an Arduino Nano, which has an integrated USB port, and uses according to the v1′ series also TC4452. The current version of this board is v1.08.
The mBGC can be build in two ways: In configuration S the mBGC-N extension board is attached from below to the Nano, and in configuration K from above. Configuration S is the standard build. Here the LEDs are visible and the reset button is accessible. In configuration K these parts are hidden, but the whole unit is more compact. The assembly is slightly different for the two configurations; the tantal capacitor has to be mounted on the top side or bottom side of the extension board, respectively.
Electric scheme and board layout
Parts list
1x Arduino Nano
6x TC4452
1x 10 uF to 33 uF, tantal SMD C
2x 100 nF, SMD 0805
1x single-row pin header with at least 12 pins
1x 10 k, SMD 0805
1x 47 k, SMD 0805
Build
There which parts goes on the print board should be obvious. The tantal capacitor has to be soldered on the top or bottom depending on the configuration S or K. The picture shows the result for version v1.08 (in configuration S).
Picture of a finished mBGC-N v1.08 in configuration S:
Picture of a mBGC-N v1.08 in configuration K (only for demonstration, build not completed):
Eagle and Gerber files
Current release v20130909: mbgc_release_20130909.zip
Deprecated releases:
– mbgc_release_20130806.zip
– mBGC_TC4427_Mini_ver05_20130624.zip
OSH Park:
Users Overtuner, irun4fundotca and mueckchen postet the boards as shared projects on OSH Park, which makes it really easy to order them:
– mBGC v1.04: http://oshpark.com/shared_projects/RJCnPIgR (for Arduino Pro Mini) (uploaded by Overtuner)
– mBGC v1.04: http://oshpark.com/shared_projects/RJCnPIgR (for Arduino Pro Mini) (uploaded by mueckchen)
– mBGC-N v1.08: http://oshpark.com/shared_projects/ejAeOakO (for Arduino Nano) (uploaded by irun4fundotca)
– mBGC-N v1.08: http://oshpark.com/shared_projects/ejAeOakO (for Arduino Nano) (uploaded by mueckchen)
– mBGC v0.07: http://oshpark.com/shared_projects/gLaUnaMp (version givien in link incorrectly!)
– mBGC v0.05: http://oshpark.com/shared_projects/MNT3PPct
Some Applications
Sources of Supply
Arduino Pro Mini 328p – 5V/16MHz
Deutschland:
- 9.06 Eur (+ 3.50Eur shipping) at Watterott
- 9.30 Eur (+ 3.50 Eur shipping) at lipoly.de
- 9.95 Eur (+ 3.50 Eur shipping) at exp-tech.de
- 9.52 Eur (+ 3.65Eur shipping) at ozhobbies.eu
- 5.79 Eur (incl. shipping) at ebay.de
Overseas:
- 7$ (incl. shipping) at ebay.com
TC4452 VOA (Soic8)
Deutschland:
TC4424 AVOA (Soic8)
Deutschland:
TC4427, IR4277
Deutschland:
38 Kommentare