Linear PCB Motor

An Open Source Linear Actuator

Similar projects worth following

Inspired from my pcb motor project (, this project is aimed to make a very thin low-torque linear pcb actuator. 

The coils of this motors are made from 5/5mil coreless pcb windings. A 3d-printed rig with magnets is used to slide across the pcb and is actuated by the winding's magnetic field. 

 All design files for this project are also open source.

Thank you for supporting this project.

RAR Archive - 864.30 kB - 06/11/2018 at 20:23


  • Moving Ferrofluid!

    Carl Bugeja3 days ago 0 comments

    The magnetic field of the windings need to be a little stronger but the concept seems to be working.  The idea is to have ferrofluid dancing around from a simple PCB. This is obviously just a concept but with more windings and perhaps with a core in the middle of these printed windings, it can be possible. (Also, I need to find a way not to stain the container with the ferrofluid .. its a little messy)

    Since this does not actually have to do with the Linear PCB motor (although same pcb), I have set up a different project page for this:

  • Wiring & Driving Circuirty

    Carl Bugeja3 days ago 0 comments

    The first prototype of my Linear PCB motor has 12 coils. To simplify the electronics i have connected these in sets of 3, each having 4 coils in parallel for maximum current, and then in a delta configuration.

    I am then using the STSPIN230 3-phase driver (available on the X-NUCLEO-IHM11M1 dev board) and controlling it with a DSPIC33EP128MC202-I/SP microcontroller.

  • PCB coil Testing

    Carl Bugeja5 days ago 0 comments

    The pcb coils have a total a 140 turns on 4-layers. These are creating a total resistance of 31.9ohms.

    This is the current-voltage curve of an individual coil:

  • Jumping Magnets!

    Carl Bugeja06/12/2018 at 00:18 0 comments

    I accidentally made magnets jump when testing my Linear PCB Motor PCBs. This happened when I placed a small spherical neodymium magnet in the middle of the coil and alternating its magnetic field.

  • First Preliminary Test!

    Carl Bugeja06/10/2018 at 22:54 0 comments

  • PCBs

    Carl Bugeja06/09/2018 at 15:19 0 comments

    Just received the PCBs from OSH Park!

  • 3D-Printed Slider

    Carl Bugeja06/02/2018 at 15:02 0 comments

  • 3D Rendering

    Carl Bugeja05/25/2018 at 22:00 0 comments

  • Slider

    Carl Bugeja05/25/2018 at 21:59 0 comments

    This is the 3d model of the slider for the first linear pcb motor prototype. This slider houses a 2x20mm diameter neodymium n52 magnet that is used to slide across the pcb by the coil's magnetic fields.

  • PCB Design

    Carl Bugeja05/16/2018 at 21:33 0 comments

    For this project i decided to used 5/5mil traces for the windings on 4-layers, adding to around 140 turns. This design choice makes the coils much bigger than the ones I used for my micro PCB motor ( which had 4/4mil traces and around 40 turns.

    The bellow 26.7 x 258.2 mm 4-layer pcb with the 12 coils was designed. Thank you for supporting this project.

View all 11 project logs

Enjoy this project?



K.C. Lee wrote 3 days ago point

The next step, make a 2D arrangement of coils. Stagger the coils in adjacent rows..  :)

  Are you sure? yes | no

K.C. Lee wrote 4 days ago point

Have you consider making the coils rectangular shape so that they can be closer to the adjacent one and also make better use of space?

  Are you sure? yes | no

Carl Bugeja wrote 3 days ago point

Hi! My initial design was with rectangular coils but you can get more turns with circular coils rather then squarish coils. 

  Are you sure? yes | no

K.C. Lee wrote 3 days ago point

If you take a cross section along the diameter of a circular coil, then stretch the cross-section out horizontally.  i.e. replace each of the short tracks in the intersection with a much longer one.  Think of it as an expandable table.

The number of tracks (hence the number of turns) should remain the same.  It is not like the tract to track spacing has changed.  Use 90 degrees or 45 degrees corners.

  Are you sure? yes | no

JuPrgn wrote 7 days ago point

Do you plan to use also bottom coils to add intermediate steps and increase resolution while reducing dumping ? 

  Are you sure? yes | no

Carl Bugeja wrote 6 days ago point

The bottom coils are the same as the top coils. Micro stepping could be an option 

  Are you sure? yes | no

danjovic wrote 7 days ago point

This is so cool that should become a clock in no time!

  Are you sure? yes | no

Carl Bugeja wrote 6 days ago point

Cool idea!

  Are you sure? yes | no

cubeberg wrote 7 days ago point

I'd suggest SMD pads on the bottom for your wires - that will help avoid shorts on the top of the PCBs.  Cool project so far though!

  Are you sure? yes | no

Carl Bugeja wrote 7 days ago point

Yeap .. wires are just a temporary solution though 

  Are you sure? yes | no

oshpark wrote 06/12/2018 at 06:56 point

Amazing project!

  Are you sure? yes | no

Carl Bugeja wrote 7 days ago point


  Are you sure? yes | no

Michael R Colton wrote 06/12/2018 at 00:00 point

You might be able to do something similar to how digital calipers work on the same PCB, that would give you excellent positional feedback to the coil driver, allowing very precise and repeatable movements.

Also, are you driving the coils individually, or in groups. You'd probably only need three sets of coils, so driving it would be easier, but you'd consume more power....

  Are you sure? yes | no

Carl Bugeja wrote 6 days ago point

Hi! Interesting and very cheap idea but it would increase the friction of the slider. But its something that's worth testing :) The twelve coils are connected in three set all in parallel to drive them with a higher voltage.

  Are you sure? yes | no

Sophi Kravitz wrote 06/11/2018 at 22:30 point

This is so freaking cool! I'm going to add this idea to my toolbox. Thanks for making it open source :)

  Are you sure? yes | no

Clayton G. Hobbs wrote 06/12/2018 at 00:16 point

Is it though?  The only files I see here are gerbers, which aren't exactly source.  I consider it akin to writing a piece of software in C++, compiling it to assembly, releasing that, and calling it "open source".

EDIT: Also, I see no license on those gerbers.  Without a license allowing modification and redistribution, it absolutely is not open source in any sense of the term.

  Are you sure? yes | no

Ted Yapo wrote 06/12/2018 at 01:25 point

Real hackers write gerbers (and assembly) by hand :-)

  Are you sure? yes | no

Sophi Kravitz wrote 7 days ago point

Yeah, it would be easier to replicate if the files were not just Gerber files, but just a little extra work. It is a little bit false advertising to call this open source since the open source expectation is that you can easily replicate it. 

To replicate this actuator, you have to have some knowledge of what you're looking at already. @Carl Bugeja is just using the words "Open Source" to attract extra attention. Unnecessarily too, as this project stands alone without that.

At the heart of open source is that everyone can educate themselves on the concepts, not so that people can download someone else's file and "just print it".  Where is the education in that?

  Are you sure? yes | no

Carl Bugeja wrote 3 days ago point

Not exactly sure what other type of open source files you're requesting.. With these gerber files you can easily order some pcbs from any manufacturer and start testing

  Are you sure? yes | no

Steven wrote 06/11/2018 at 20:52 point

Hi, amazing can you post about your drive circuit. What sort of current are you putting through them? 

  Are you sure? yes | no

Carl Bugeja wrote 7 days ago point

In the video i have wired the coils in a parallel and in a delta config. By applying a six-step waveform it will have one coil north, one south pole and the other unpowered. There are better ways to drive it but for now this is how i’m producing the sliding effect. The jumping behavior of the spherical magnets was observed with the same waveform. The voltage was set to 8v. I should upload a project log on this in the next few days

  Are you sure? yes | no

bholroyd wrote 06/11/2018 at 12:01 point

I'm quite interested in this project. The project I'm working on is somewhat similar (

What plans do you have for sensors, my understanding was you couldn't do a sensorless design with linear motors (or are you just timing it)?

And what plans do you have for motor control? I've looked around and haven't really seen any code for linear motors specifically. I've got some STM8s on order (they're supposed to have some good motor control features, and also cheap).

Any way good luck. hopefully I'll be able to move on with mine when everything shows up.

  Are you sure? yes | no

Carl Bugeja wrote 3 days ago point

Cool project! Currently i'm just timing it and using the same circuity of my PCB motor project ( driving in with a 6-step waveform.

  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