Home

Awesome

Prntr Board V1

Deprecated

This project has run it's course. Most of the features are complete and there is little I can improve further. I have switched my focus to the V2 design.


PrntrBoard is a 3D printer controller board designed to work with STM32 NUCLEO dev kits. The current version (V1) supports NUCLEO-64 series kits. The design is being developed on F446-RE kit, but other models could work as well. IMO the STM32F446 NUCLEO-64 kit offers very good performance (180MHz CPU) for the price ($15).

Picture of Rev2 Kicad Rendering Some features of the board:

Because the NUCLEO-64 has limited number of IO pins, some compromises had to be made:

Generic shortcuts I don't plan to improve:

Details

I use the daily build of KiCad (soon to be released V6) - let me know if you have trouble opening the files.

The current PCB desing is using 4 layer board, 6/6 mil track width/clearance, 12 mil min via hole size and 20 mil via diameter.

There are tree active branches:

TMC2130 and TMC2660 PCB designs use the QFP version of the driver ICs, because they can handle a bit more power. The TMC2209 is available only in QFN package.

Status

TMC2130 version is table and been running for over a year. TMC2660 is being tested at the moment. Prototypes of the TMC2209 are being made.

old status: I've been running a prototype of this board for a few months now and I'm very happy with the board stability. I'm trying to figure out how to make these at scale.

I have made prototypes of the TMC2130 board design (rev0) - the board has a few bugs, that are corrected in the rev1 version. Rev0 did not have LCD screen, it was added in Rev1. I'm trying to work-out the thermal design issues. Rev1 board have been ordered and the dev branch is now switched to Rev2. The thermocouple connectors are added Rev2. Rev2 borads have been ordered. The current working board is rev3. Added 2 more pins to the LCD connector for the rotary encoder input. I also re-connected the E1 and E0 CS pins, so the LCD pins can be connected to the hardware I2C pins. This way one can use SPI or I2C screens.

This branch is a redesign of the TMC2130 board. The main difference is that the NUCLEO board is flipped in a more natural position. In addition I'm now using a dedicated ground plane, larger heatsink areas for the mosfets. I'm much happier with the thermal layout of this branch.

The NUCLEO-64 board was limiting the design in many ways. I have a replacement board using STM32F407VE. This is 100 pin part. The new daughter board is the same form factor as the NUCLEO-64. It adds SPI EEPROM as well as native USB interface and micro SD-Card socket. The new board also has enough space for 24V to 5V buck converter, so power supply can beintegrated.

Tested circuits:

Circuits that need verification:

Software

The software for the board is a clone of Marlin at bugfix-2.0.x branch of my repository. It is quite usable. I keep it relatively in sync with the Marlin branch. Note: there are other branches of Marlin, only the bugfix-2.0.x supports the STM32 microcontroller.

Marlin is using Adruino IDE or Platform IO. I personally had issues with Platform IO not supporting the STM32F4 board, so I use Arduino version 1.8.5. To compile the firmware code you would need to install the STM32 Arduino port.

I'm also porting Smoothieware V1 to the board. So far I got the heater control and the stepper drivers working. My smoothie port is available here. Please not the Smoothie port is not ready yet (there is an issue with the ADC). I have done only minimal tests so far.

Visit my blog for status updates on the development of the board.