Using 3D printer mainboards - MobiFlight/MobiFlight-Connector GitHub Wiki

This is an experiment, 3D printer boards are not officially supported by MobiFlight.

Many especially older 3d printer mainboards are based on the Arduino Mega 2560, and some setups even had a "3d printer shield", an add-on board that plugged on top of a regular Arduino Mega and contained additional electronics to drive the stepper motors heaters, fans and other electronics.

Naturally you should know your way around electronics to do something like this, what each of the outputs and inputs on a 3D printer expect and how they work, and also understand that I am not an expert, so anything in this document is what I have tried, but it might well be wrong too. So use this information at your own risk, of course.

I happened to have a spare Velleman K8400 board that flashed with Mobiflight without problems, as it is very much an Arduino Mega 2560.

image

(image from reprap.org)

Like stated earlier, this is basically an Arduino Mega on steroids. It expects 15V but seems to work fine with 12V too, of course then the output voltages will be also lower. But my fans I tested with are 12V for example, so its fine.

So if you are lucky and your board is basically a Mega, you end up with an Mobiflight Mega that needs pin configuration. I would guess many of those are clones of each other and also based on the open source design called RAMPS which has many versions, but of which the 1.4 seems to be quite popular, and even my Velleman board is based on its design, most of the pins are the same.

https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.1.x/Marlin/src/pins/ramps

There are also other header files for other boards, but many seem to include the RAMPS pins as a starting point and then possibly override some where they made changes on their design. So, with a bit of detective work you can look up pins for:

  • End stops - these can likely be used as input buttons/switches
  • Stepper motor drivers (these are using step + direction + enable + "CS" pins, so need to dig a bit how to use these with Mobiflight sensibly)
  • Heaters and fans (basically MOSFETs that can be driven as leds with PWM.
  • Thermistors are heat-sensitive resistors, so potentiometers might be usable on these pins

There is also the LCD display, but I am not sure what connection that uses, MobiFlight expects I2C.