Looking for USB powered low power BLDC driver

I’d like to build a device similar to GitHub - scottbez1/smartknob: Haptic input knob with software-defined endstops and virtual detents. Instead of a custom PCB I’d like to use some cheap and readily available breakout boards that could ideally be powered directly from a PC with USB like in the smartknob (not in terms of a usb connector but in terms of voltage/current).

Size of electronics is not a limiting factor in my case. For a tech-demo a single unit would be sufficient but later on I would probably need > 5 drivers so price per unit should be as low as possible.

I’ve read the L298N consumes 2W without any load which doesn’t sound reasonable.

I hope for some advice. Thanks in advance.

Hi @nest90 , and welcome to SimpleFOC!

So I would be pleased to be corrected on this, but as far as I am aware there are no BLDC drivers which take their power from USB. There are lots which have USB ports for DFU firmware flashing or Serial comms, but none that I know of that route the USB power to the motor.

This is because doing so would be out of spec for old style USB, even small BLDCs would draw too much current when stalled. For newer USB specs, either the 2A charging, or USB-C with PD, it would be possible to power a BLDC motor.

I think to make a safe device, i.e. one that doesn’t cause damage to old style USB ports, you’d have to follow the USB-C PD spec, which typically involves a certain amount of chips and components (like a bunch of FETs to control the power path), and isn’t completely trivial to implement. There are plenty of reference designs associated with the different chips you can get.

You could look through the different newer boards out there from Sparkfun etc, perhaps there is one that can deliver 1 or 2A on its 5V rail - that would be enough for haptic, I believe. But most MCU boards have woefully underpowered LDOs for driving a motor, or have 5V directly connected to USB, which doesn’t seem like a good plan.

Another approach could be to just ignore all specs and potential problems, and power a board directly from USB – but using a good externally powered USB hub. I have one with a port tabled “Charging - 2A max” - maybe it will just work for the power levels you need… but I would not plug the resulting device directly to a computer or laptop, this way of doing it sounds more like a prototype phase approach :wink:

In terms of actual drivers, it is very difficult these days. Most products are out of stock. Check out some of @Valentine 's designs in this forum, perhaps when they are ready some of those would suit your project? Or maybe you can get your hands on a B-G431-ESC-1… It probably won’t meet your size requirements but a SimpleFOC shield and Nucleo board might be good enough for prototyping?

@runger is right I believe. 5V / 2A is the max you could draw from USB, and the old USB are 500mA.

@nest90 , welcome to the forum. I could check if something is available, however, 5V has three strikes against:

  1. Most drivers require high voltage to drive the booster circuit and shut down the silicon if they detect anything under 6V (under-voltage protection). Some of them will shut down under 8V.
  2. Most MOSFETs are very inefficient at 5V and will overheat easily (hence you will draw power even when idle).
  3. Current draw will be a problem for power supplies, and you may experience shoot-backs into your power supply. Example, if you power it via computer USB port and something happens to the motor, you will inject high voltage back into your motherboard, and some cheaper computers don’t have very good USB port protection, and you will kill your notebook/laptop.

I could check if this is even possible but don’t get your hopes high. It is possible to build a boost converter out of the 5V but those are also inefficient, and will complicate and make the board expensive. It’s a classic case of PCB design, pick a good and expensive or a bad and cheap one. Can’t have a good and cheap one.

Let me search into the database and see if anything pops out.

Cheers,
Valentine

Update. The EG2133 driver I used for the Lepton board lists minimum VCC at 4.5 V, which means hypothetically you may be able to drive the entire board with 5V.

This is the thread for the board. It’s really cheap if you do not need current sense, and a bit more expensive if you do. The gate threshold voltage of the MOSFETs is 3V, and the drain-source voltage is such that at 5V gate and 5V drain you will be in the gray area where it will work but not quite the best, check out the figure at the end, red area.

I suggest you wait for the Lepton to get tested by me and you can order a batch if successful.

As far as the current drain at rest, that’s not a problem, the mosfets won’t consume much power when idle. How much power, since it’s 5V, I have no idea but I could test that use case when the board arrives.

As @runger mentioned, the silicon shortage is very dramatic currently and also combined with the COVID restrictions and the war against Ukraine, worldwide logistics are stretched to a breaking point. I’ve been waiting for a simple delivery already 3 weeks. Used to take 3 days max, now is a crapshoot.

The Lepton board is using the G031 MCU which requires somewhat elevated skills to program. Caveat emptor.

What is your use case exactly, can you explain?

Cheers,
Valentine

I did not expect so many in-depth reply’s in just a few hours. Thank you so much for your help!

I’m more a less trying to duplicate the features of the linked haptic knob (GitHub - scottbez1/smartknob: Haptic input knob with software-defined endstops and virtual detents) as a custom PC input device with some added feedback. Just watch the demo video on the smartknob page to see what I mean.

It is actually using simplefoc for controlling the motors. Everything is USB powered. It uses TMC6300 motor drivers (2…11V, 1.4A). See the project page for documentation and CAD data. It uses a custom PCB which somewhat hard to handle for me considering TMC6300 part size and lack of experience.

Therefor I thought maybe there is an alternative that might not be as good but more usable for a “simple” DIY project.

Right. Interesting, nice weekend project.

Two things.

  1. The Lepton board is driver only. No Serial. By no Serial, I mean, you will need an external transceiver to communicate with the board, and also you will need an external USB plug.

  2. No USB plug. This means you will need an external device to power it and solder wires. Which is a problem because most external USB devices are not designed to carry high current and you will probably melt the solder.

For you to do something like that, you will need to add a serial transceiver and USB power plug, which means, you will need an external board to communicate with the Lepton board, and that board will supply the power and talk to both the driver and the computer. Example

SparkFun Qwiic Pro Micro - USB-C (ATmega32U4)

Your other option if you want this to be productized and not a weekend project, is to develop your own fully integrated PCB from scratch using the EG2133 driver and discrete mosfets and USB transceiver, etc, which may not be within your capacity.

Give the semiconductor shortage being as it is, it really is not a good time to be designing new hardware :frowning: :frowning: :frowning:

But I think you can build your device as a prototype, there is a lot of work on the software side that you can get done before finalising the hardware design…

For example one of these:

with a Nucleo MCU board like this:

will give you an Arduino-compatible motor driver solution to prototype with.

Same kind of thing could be available more cheaply on AliExpress, for example by getting a SimpleFOC Shield and a Arduino form-factor ESP32…

These boards won’t be the final size/shape you want, probably, but its a way to start prototyping while you wait for the right driver board to become available, or work on a design…

Hi @nest90! In case you hadn’t seen it, I just wanted to mention that Trinamic makes a breadboard-friendly breakout board for the TMC6300, the aptly-named TMC6300-BOB, which is what I used for prototyping the smartknob. Although now that I look again, it seems to be sold out on DigiKey and Mouser, so I guess that’s not actually helpful for you… :frowning:

Looks like you can backorder on Mouser if you’re willing to wait: https://www.mouser.com/ProductDetail/Trinamic/TMC6300-BOB?qs=TiOZkKH1s2TC7GLAoPdOmA%3D%3D

With the TMC6300-BOB being a manufacturer-produced dev kit, it’s somewhat overpriced for what it is, so I’m hoping that there will be some more hobbyist-friendly boards developed with the TMC6300 in the future by the likes of Sparkfun or Adafruit. It’s still a very new chip but it really hits a sweet spot for small 1S or 2S battery-powered (or USB-powered) low current BLDC applications that other integrated drivers don’t cover.

I’ve already looked for the TMC6300-BOB because I’ve already read about it when looking at your project. For me it is currently unavailable. It is also a bit expensive when you need not only a single board but 5 or more. I’m hoping for a cheap alternative board.

@nest90

Would you mind please defining the price point? $10, $20, $30?

Cheers,
Valentine

$10 would probably be OK considering I also need the motors and the rest of the project. If its a lot more expensive it would end up in a region where I could buy an of the shelf product with similar features.

Thank you. In my experience even the cheap driver boards from China on Aliexpress are quite more expensive than $10, especially the “Door-2-door” price including taxes, import duties and shipping. When you say “driver”, are you looking for an integrated driver board (MCU + driver + MOSFETs) or just the driver power stage (Driver + MOSFETs) and you will drive it with an external Arduino-compatible MCU?

Cheers,
Valentine