PCB Motor

A smaller and cheaper open source brushless motor.

Similar projects worth following
My open source PCB motor is a smaller, cheaper and easier to assemble micro brushless motor.

What unique about this motor design is that the stator is printed on a 4-layer PCB board. The six stator poles are spiral traces wounded in a star configuration. Although these coils produce less torque compared to an iron core stator, the motor is still suitable for high-speed applications.

The current prototype has a 3d printed rotor with a 16mm diameter.

My PCB-Motor is made from a 6-pole stator printed on a 4-layer PCB and a 4-pole 3d printed rotor. Its has an outer diameter of 16mm and is rated at 1 watt. 

I had this idea when I was trying to design a small compact drone. The PCB motor is much cheaper than other micro brushless motors and also easier to assemble. My goal is to make the rotor part of the BOM and mounted just like any other component on a PCB. 


PCB Motor V1.rar

Gerber Files and STL file of the first PCB-Motor prototype.

RAR Archive - 194.17 kB - 02/07/2018 at 22:54


  • 1 × 3D Printed Rotor
  • 1 × PCB Stator
  • 4 × Magnets (5mm diameter x 1mm thick)
  • 1 × Shaft (1.5mm diameter)
  • 1 × SMF681X-ZZ Bearing

  • Closed-loop Control

    Carl Bugeja03/27/2018 at 20:09 0 comments

    My plan for speed controlling the PCB Motor was to implement a sensorless back-emf speed controller, which works just like every other brushless ESC. It measures the time it takes to detect the zero-crossing point from the under-driven phase, and adjust the commutation waveforms according. However, during testing the back-emf generated in the windings of the PCB motor was a little weak.

    Plan-B is to use a hall sensor to implement the closed loop speed controller. This will be a little more pricey but will also include positional sensing.

  • New Rotor

    Carl Bugeja03/05/2018 at 00:33 1 comment

    This is my new 3D printed rotor prototype with a snap-hook shaft and press-fit circular magnets! 

    Unlike the old prototype, the new rotor has a uniform magnetic field across its whole area.

    The metallic shaft was also eliminated. Instead it was made part of the 3D rotor model, At the end of this shaft are two snap-hooks that lock the rotor inside the bearing. 

    This feature makes the brushless PCB motor cheaper and very easy to assemble!

  • PCB Motor - Explained

    Carl Bugeja02/25/2018 at 13:58 0 comments

    This video briefly describes how my brushless PCB motor works.

  • Open Source Files

    Carl Bugeja02/07/2018 at 23:09 0 comments

    The gerber files and STL file for the first PCB-Motor prototype are now available for download.  

    If you don't have access to a 3d printter, you can purchase the rotor here:  

  • How I design the PCB stator

    Carl Bugeja01/27/2018 at 09:37 1 comment

    This project started with me trying to design a small cheap drone. Dc brushed motors are typically used for micro-drone designs since they are much cheaper than brushless motors. But these motors were not compact enough for my application. So I started looking into ways to make a custom brushless motors which is smaller, cheaper and easier to manufacture. 

    A normal outrunner brushless motor is made from a stator, a rotor and a shaft that connects the two via a bearing. Its stator has windings around an iron core to rotate the magnets on the rotor. The high magnetic permeability of the iron core creates a strong magnetic field around each coil, which improves the motor's torque strength. 

    I had this idea of making the stator embeeded in the PCB itself. My only concern was that to make it small, it had to be core-less. I decided to try it out and see if it had enough strength to rotate a small propeller (spoilers - it did).

    PCB stator vs ADH30S's stator
    PCB stator vs ADH30S's stator

    I wanted the first prototype to have the best possible chance of working, while still being as small as possible. So I set the trace spacing and thickness to 0.1mm and the via's drill size to 0.15mm. Although these parameters would increase the manufacturing costs of the PCB, it was the safest starting point for my PCB motor design.

    I decided to make my motor have a 4-layer 6-pole stator, to have as many windings as possible. The star type stator configuration was used to limit the phase voltage, hence limiting the overall power of the motor (more power = more heating in stator coils).

    Gerber Files of the 4-layer Stator
    Gerber Files of the 4-layer Stator

    There is alot more of experimentation and testing that I need to do before trying to integrate it with a drone. I want to find the best "turns-to-size" ratio and how does that effect the motor's torque. I would also like to test the delta configuration and a PCB-motor with a 9-pole stator. 

  • Propeller Test!

    Carl Bugeja01/24/2018 at 20:34 0 comments

    Testing my brushless PCB-Motor with RX2535W propeller.

  • Dimensions

    Carl Bugeja01/23/2018 at 18:46 0 comments

    The first PCB Motor prototype measures 16x17x5mm (excluding the shaft) and weighs 1.5 grams.

  • Solid-State Stator

    Carl Bugeja01/22/2018 at 22:36 0 comments

    The first PCB prototype has a 6-coil star-type stator, each having around 40 turns.

  • PCB Motor - First Test!

    Carl Bugeja01/22/2018 at 21:51 0 comments

View all 9 project logs

  • 1
    Step 1

    Its this simple:

View all instructions

Enjoy this project?



alexw wrote 04/01/2018 at 08:08 point

Awesome project, it'll be great to see people using this!

  Are you sure? yes | no

Carl Bugeja wrote 05/04/2018 at 19:39 point


  Are you sure? yes | no

Ron wrote 03/28/2018 at 18:27 point

I was curious, where did you get the semicircular magnets from?

  Are you sure? yes | no

ehsan wrote 04/23/2018 at 21:10 point

I'm quite interested in this as well. Can't find anything of the same size. Any help is highly appreciated.

  Are you sure? yes | no

Carl Bugeja wrote 05/04/2018 at 19:39 point

Hi :) Those were both custom from a manufacture I found on 

  Are you sure? yes | no

Anil wrote 03/18/2018 at 02:35 point

Does this DC motor need a hall effect sensor to control it? What controls the sequencing of the windings like a usual brushless DC motor?

  Are you sure? yes | no

Carl Bugeja wrote 03/27/2018 at 20:16 point

My plan was to use a sensorless back-emf speed controller, however the measured back-emf was too weak to implement this. I'm now working on a prototype with hall sensor for speed and position control.

  Are you sure? yes | no

Anil wrote 03/29/2018 at 21:22 point

Yeah, that makes sense. Would be cool to get the PCB coils strong enough to go sensorless. I bet you could do it if you made the coil strips longer.

  Are you sure? yes | no

bobricius wrote 03/12/2018 at 16:04 point

great project, I am trying stepper motor as direct drive wheel for robot instead of printed rotor I am using PCB rotor (3 layers of 1mm PCB and 5x3mm magnets)

  Are you sure? yes | no

Carl Bugeja wrote 03/12/2018 at 18:12 point

cool :) just make sure you have enough torque to rotate the wheels and move the robot

  Are you sure? yes | no

Peter McCloud wrote 02/08/2018 at 06:55 point

This is really cool. Thank you for sharing the Gerber files!

I'm interested in using this approach for building an axial flux generator. I can't find any existing designs that fit my needs and making PCBs seems easier than hand windng coils and potting them.  For those of us new to the PCB design world, would you mind providing an outline of the tools you used to design your PCB?

  Are you sure? yes | no

Carl Bugeja wrote 02/10/2018 at 09:25 point

Hi Peter! I used a CAD tool to draw the spiral coil windings for each layer. These layers were saved as a dxf file and then imported into a PCB design software as different copper layers.

  Are you sure? yes | no

helge wrote 02/07/2018 at 23:08 point

maybe ferrite foil in the back would be beneficial? and the like.

  Are you sure? yes | no

crazzzik wrote 01/30/2018 at 03:32 point

Do you have a power requirement for your drone?

  Are you sure? yes | no

James Newton wrote 01/29/2018 at 04:36 point

I'm curious how you are driving the motor? Is it just from the Digital IO pins on the Arduino? Or are there transistors, FETs, etc...

  Are you sure? yes | no

Carl Bugeja wrote 01/29/2018 at 21:52 point

Hi I'm currently using the STSPIN230 3-phase driver (availble on the X-NUCLEO-IHM11M1 dev board). I am then driving it with a dPic microcontroller.

  Are you sure? yes | no

Moldovanu Ionut wrote 01/26/2018 at 10:22 point

Hello , can you please release the pcb design files , or just draw a schematic of the coils and all the details?

  Are you sure? yes | no

Carl Bugeja wrote 02/07/2018 at 22:56 point

Hi! The files are now available for download

  Are you sure? yes | no

oshpark wrote 01/26/2018 at 05:38 point

great idea!

  Are you sure? yes | no

Carl Bugeja wrote 01/27/2018 at 06:59 point

Thanks :)

  Are you sure? yes | no

Robert Mateja wrote 01/25/2018 at 09:04 point

I that HP MultiJet material or your own print for black rotor ?

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 11:26 point

Hi i have 3d printed from shapeways

  Are you sure? yes | no

agarner3 wrote 01/25/2018 at 07:37 point

This is such a great idea. I agree it would work better with a different stator/magnet configuration. It would be interesting to see how torque and kv would be affected with different thickness traces. And how much more output and balance you could achieve with two magnet sets sandwiching the stator. 

I can see a revolution in quad copters coming on. It would be amazing to see this on the crazyflie (open source)  quad

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 11:30 point

Sure :) a rotor combined with propeller is coming soon

  Are you sure? yes | no

Thomas Daede wrote 01/25/2018 at 04:07 point

This is neat! I would like to try to build my own, and also have some things I'd like to try to improve the design:
Most axial flux motors have magnets on both sides of the stator. The purpose of this is to not just to fit in more magnet, but to make sure all of the magnetic flux passes perpendicularly through the stator - with your current design, some of it wraps around the magnets and doesn't even make it through the PCB. Likewise, on the rotors behind the magnets is iron, to complete the magnetic circuit and get better utilization of the magnets. Iron-filled plastic could substitute here, though it's less important and just using beefier magnets might also be OK.

The downside of facing rotors is there is a huge amount of force between them. You'll either need strong 3D printed parts, or attach them on the outer diameter, running the wires through a non-rotating axle.
For bigger motors, you can get a better winding factor with an 8/9 or 10/12 arrangement. If you don't already know about it, there's a nice winding calculator here:

Note that coreless axial flux motors like this can be quite efficient. You might find some inspiration from the CSIRO design often used by solar cars.

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 17:42 point

Hi Thomas! Thanks for the tips! For the second prototype I have order semicircular magnets so that all magnetic flux pass through the stator, just like you suggested :) stay tuned for the update

  Are you sure? yes | no

adria.junyent-ferre wrote 01/29/2018 at 09:02 point

Excellent feedback. Btw, I tried the iron-filled plastic myself  some time ago when I wanted to make a linear actuator with 3d-printed parts and the results were quite disappointing. The effective permeability one gets ends up being around 2, which is quite disappointing (

  Are you sure? yes | no

Daren Schwenke wrote 01/24/2018 at 21:57 point

Thin out your rotor and add a second stator above.  Gives you your second bearing mount, doubles your output torque, and will probably be more stable as both sides will push/pull the rotor at the same time.

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 17:36 point

Hi Daren cool idea! I would consider adding another rotor to have magnets on both sides rather than adding another stator. This will definitely help increase the torque,  

  Are you sure? yes | no

Daren Schwenke wrote 01/25/2018 at 18:11 point

Torque comes from flux density.  There are a couple ways to increase that. 

Simplest way is to use a core material.  This compresses your field lines for your electromagnet yielding higher flux density, at the expense of additional inductance.  But that doesn't really fit here.

Next simplest would be to compress/redirect the field lines from your permanent magnets back towards your electromagnets.  This is usually accomplished by backing them with iron. A washer or the bell from a fridge magnet might do it.

So where I was going with the second stator is related to the latter.  Besides doubling the flux density of the electromagnets, you are also confining the stray back field lines from your rotor magnets.  Of course I could be full of it, but it works in my head..

  Are you sure? yes | no

CWC wrote 01/24/2018 at 21:42 point

Hello Carl. Congratulations on your excellent work! Please let us know if you plan to sell your motors. I like the idea of putting the stator on the ESC PCB.

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 11:32 point

Hi :) i will release open source parts very soon so you can build your own

  Are you sure? yes | no

spillikinaerospace wrote 01/24/2018 at 21:26 point

Hi Carl excellent work! one question: why didn't you make the rotor from a PCB? it seems to me that would be better than 3d printing.

  Are you sure? yes | no

Prof. Fartsparkle wrote 01/24/2018 at 21:30 point

Good question, I mean air flow would be an obvious reason but at this stage I doubt that would be much of an issue.

  Are you sure? yes | no

Carl Bugeja wrote 01/24/2018 at 21:33 point

Hi! the rotor needs to hold the magnets in place that's why its 3d-printed. But make a pcb on top of the rotor is certainly possible. The only problem would be passing signals and giving power to that board.. But with a little imagination I think it can be solved :)

  Are you sure? yes | no

alexwhittemore wrote 01/24/2018 at 22:53 point

This was my question as well. I think what he means is to pocket-mill recesses in a similarly sized PCB to fit the magnets, making a roughly equivalent structure from FR4 instead of plastic. An FR4 magnet carrier would ultimately be stronger than the plastic version, and practical to fabricate since it doesn't require any complicated 3D geometry, only standard controlled-depth milling. And really, you wouldn't necessarily need that either - you could use through-routes on one PCB and leave it at that with the magnets glued in by the sides, or glue the milled PCB to a flat one of the same diameter to make fake pocket mills. Making such a through-milled magnet carrier would also enable Daren's idea above of adding a second stator to double torque. 

  Are you sure? yes | no

Carl Bugeja wrote 01/25/2018 at 17:29 point

The problem with a pcb rotor is actually keeping the magnets in place .. its certainly possible to have them press fitted inside but having the rotor spinning at high speed it would be safer to have a cover over them.. 

  Are you sure? yes | no

Sean Weppner wrote 01/24/2018 at 21:13 point

Would be cool to see this type of approach applied to creating a micro linear actuator

  Are you sure? yes | no

Carl Bugeja wrote 01/24/2018 at 21:38 point

Hi Sean a micro linear actuator seems feasible with this technology.. However it would have a weak torque since it don't have a metalic core.

  Are you sure? yes | no

eekster wrote 01/24/2018 at 19:08 point

I'll buy ten of them! That or make the cad files and bill of materials available, perhaps? Please?

  Are you sure? yes | no

openube wrote 01/24/2018 at 21:23 point

I second this. I'll buy or BOM please?

  Are you sure? yes | no

Carl Bugeja wrote 01/24/2018 at 21:41 point

Hi! Thanks for your kind comments :)  I think I will eventually open source this design.. It just needs a little more testing

  Are you sure? yes | no

ActualDragon wrote 01/23/2018 at 23:32 point

It almost needs another row of headers on the other side, just for support. It might be helpful

  Are you sure? yes | no

Carl Bugeja wrote 01/24/2018 at 06:59 point

Hi 🙂 the headers are just a temporary solution. My plan is to put the stator on the esc pcb. 

  Are you sure? yes | no

Carl Bugeja wrote 01/24/2018 at 07:02 point

This would make the whole setup light and more compact

  Are you sure? yes | no

ActualDragon wrote 01/24/2018 at 10:50 point

could you put the headers on the other side, then slide the esc under and solder it? that would be sweet

  Are you sure? yes | no

malvasio.christophe wrote 01/23/2018 at 09:44 point

can you make a coil that the rotor will rotate in the opposite direction with gears

to generate electricity from interaction of rotors : how much ? how far can you go if you add it to the pcb ?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates