Skip to content
Pascal Roobrouck edited this page Sep 28, 2022 · 20 revisions

Q1: Does Moovr run on an Arduino ?

A: Moovr requires a 32-bit MCU, floating point support and hardware timers support. So it run eg on the Arduino Nicla or Portenta. It cannot run on the original Arduino Uno. If you want a motion controller running on an Arduino, go to GRBL. It's about the best you can get on an Arduino.


Q2: Why the Teensy 3.6 / 3.5 ?

A: In fact Moovr should not just run on 1 specific uController. Most of its code will be hardware independent. Yet for real-time performance you need interrupts, timers. Furthermore the controller communicates via some interfaces that most likely have some hardware support (serial, USB, SD-card). As a first target we selected the Teensy 3.6 / 3.5 because of the following:

  • powerful Cortex M4F processor, with hardware floating point. Extensive set of peripherals : timers, communications, etc.
  • a high quality design at a fair price
  • easy to program via the Arduino IDE

Q3: Is Moovr open software ?

A: Yes

  • All the source code is on Github.
  • The license is a CC BY-NC-SA.

But there is more to open software than just publishing the source code... We intend to properly document the internals of Mooov so everyone can easily gain a deep understanding of how it works. This should lead to an easier entry to participate and thus more people contributing to it. Finally the CC license is 'NC' which boils down to 'fair share' : if you are making a profit by selling something that contains Mooov, you should get an agreement on that fair share first.


Q4: Why are you doing another CNC controller, we already have GRBL, SmoothieWare, TinyG, linuxCNC..

A: The simple reason is that the above solutions do not deliver what I want. Some of them are also a very large amount of code to go through. If you want to hack them, you're either in for a long learning curve, or you build something on top of a black box of other's people software. I don't like that. An exception is GRBL which is quite minimalist and doing almost what I need. However it is really squeezed into its Arduino hardware. It has been ported to other HW (with more resources) but I decided it was better to learn from its legacy but still rewrite some parts from scratch.


Clone this wiki locally