FABtotum Electronics in the wild.

fabtotum_board1As all computer-controlled devices, the FABtotum rely on electronics to perform all the operations needed, both from a computational and physical point of view (calculate what to do and correctly move motors accordingly).
In a CNC device, movement and I/O controls are an important part of the electronics design.

During the alpha development we used a RAMPS (an arduino Shield) mounted on an Arduino mega,a common setup for DIY 3d printers.
Like us, many people in the community enjoyed this kind of simple and convenient setup, where the instructions (in the form of GCODE language) are executed and the I/O managed from a single unit.

When we started the Indiegogo campaign we had no real need of changing that, but thanks to the feedback of the backers we set a goal to improve and push the envelope for this compartment in the FABtotum Personal Fabricator.
As you know the brain of the FABtotum is a Raspberry Pi Mod B, a hugely supported ARM-based single-board computer.
The raspi added a bunch of neat possibilities to further develop the FABtotum platform with the capability to run complex programs.

To move the motors, sense the environment and control heating, extrusion and machining you need what’s called a power control board.
We have one, connected to the Raspberry Pi via GPIO pins.
So, lets see the (yet unnamed) Arduino(TM) derivate board!

The board itself is not that bigger than the Rapberry itself, sporting a 92x85mm rectangular shape.
A good amount of time has been invested into optimize this, thanks to a 4-layer PCB design. This choice is not just for saving space,but to enhance power distribution on the board.

Power supply is a key element in controlling CNC applications and robotics, and there is a lot going on in terms of power management here.
First and foremost, the board is powered by a 24 volt power supply instead of the usual 12v.
This means less currents , less ohmic dispersions, thinner cables, faster stepper motors, more power to hotplate and heater. The board can supply the raspberry with the needed power from his own power supply, along with a integrated Raspberry Pi logic level interface circuit (+5V <-> +3.3V).

More power does not mean less safety: the board has been designed with advanced solutions to minimize potential damages to the unit and maximize his life under hard working conditions.

All power Outputs provide positive voltage instead of negative, for safety purpose , meaning that if an output is off, there is no voltage at all.
In the RAMPS design even if the negative output is off, the positive pole of a connector was still on, meaning bad things could happen.
More than that, power outputs are designed with inductive load protection, to avoid voltage spikes during turn offs that could damage the drivers.
On top of all this, we have an integrated sinked current acquisition and control
circuit that allows to check and manage power consumption of the board and the stepper
drivers, meaning that also motor tuning can be done digitally.

The board is, of course, a 5 (yes, FIVE) axis control board, with highly enhanced heat dissipation design on each of the five stepper drivers.

On the board we added many other utilities like buzzer for audio feedbacks as well as various RGB lights to make human interactions easier with the FABtotum Personal Fabricator.

From a developer standpoint, the onboard ATmega 1280 can be reprogrammed directly by the Raspberry Pi and the FABtotum web interface. This means that we’ll ship the electronics with a modified Marlin Firmware, and you’ll be able to update the FABtotum or edit the source file, compile and flash it from the web UI again without connecting anything or pushing reset bottons inside the case, neat uh?

If you are really into electronics and you cannot resist puttings your hands on it, we placed an informative silkscreen on top of the black layer. Some fiducial markers are there  for automatic population of the board, meaning that the board is ready for automated assembly with pick and place machines.

So, Looking at the board, you can recognize the following I/Os:

  • 16 poles – 4 axis connector
  • 5th axis on a 4pole JST connector PH series 2mm connector
  • Endstop n1
  • Raspi GPIO header connector
  • Hotbed connection
  • emergency switch
  • Case-door safety switch
  • Front door safety switch
  • YZ Endstops
  • 24 v Power supply
  • interior light output
  • Second Extruder temp
  • Head connector (this includes: Milling motor control, Extruder 1 heat control, Servo control, Servo powering, Laser control & power, Head light power, probe input,fan control and an I2C bus, X endstops, led controls.
  • Board Fan power

We hope you liked this update, hit the comment section in the forum and let us know what you think!