Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!

Intelligent Agent's Recore Board Adds Some Serious Speed to Your 3D Printer

Making use of the A100 coprocessor in Allwinner's A64, the Recore is a seriously speedy control board upgrade.

Gareth Halfacree
4 years ago β€’ 3D Printing

Intelligent Agent has announced that Recore, the next-generation Linux-based 3D printer control unit which it has been working on for the last two years, is now available as a "stable revision" at $149 β€” and boasts a smart design, which does away with the need for a secondary microcontroller.

"Normally a Single Board Computer (SBC) that runs Linux is not suited for real-time operations," Intelligent Agent's Elias Bakken writes of what makes the Recore special. "That is why a microcontroller is needed, which is why you end up with a combination of regular 3D printer control board and a Raspberry Pi. There are exceptions: For instance the BeagleBone family has a separate (Programmable Realtime Unit) PRU which solves this elegantly."

The Recore uses a real-time coprocessor in Allwinner's A64 to achieve impressive performance. (πŸ“Ή: Intelligent Agent)

"In Recore I wanted to get rid of that separate microcontroller and find a solution similar to what the PRUs on the BeagleBone is doing. The solution is to use the AR100, which is a bit of a quirky 'microprocessor' embedded on the Allwinner A64. But it’s fast! It can run at 300MHz. Finding a similar microcontroller as a separate device would increase the final price quite a bit without really adding anything."

The AR100 coprocessor sites alongside four Arm Cortex-A53 cores, which handle running Linux for use as a fully standalone control system. Getting to that point, however, took a while β€” in particular finding a reliable way to communicate between the two domains. "In an effort to offload as much traffic as possible on the AHB," Bakken explains, "I chose a somewhat unconventional way to set up communication between the main Klipper program running on Linux and the real time bit running on the AR100."

Now the hardware's fully stable, attention is being turned to up-streaming the Klipper modifications. (πŸ“Ή: Intelligent Agent)

"The conventional way might be to use a shared memory area to 'send' commands, since both CPUs are on the same die. Instead, I chose a loopback between a UART controlled by the A53 cores and an R_UART controlled by the AR100. I’m not burning any bridges here, the shared mem solution is still available in case anyone wants to try it and look at possible benefits and downsides, but now we have to option to do both."

The effort, however, appears to have been worth it: Kipper running on the Recore board through the AR100 offers a step rate of 2239k, compared to just 922k for its closest competitor the BigTreeTech SKR Pro. The BeagleBone Black which inspired the coprocessor approach, meanwhile, manages a step rate of just 680k running through the PRU.

With the hardware sorted, Intelligent Agent is shipping the first "stable revision" Recore boards β€” but warns the software is still a work in progress. "Even though Recore now runs," Bakken notes, "the work on this started about a year ago, so the branch of Klipper that is was based upon is very outdated. Once Recore A5 is available in the shop, work will shift back to up-streaming the AR100 patches in Klipper so the work will be maintained. But at lest there is a way to print with the Recore boards, and that is a good starting point."

The Recore A5 board is now available to order from the Intelligent Agent shop at $149.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles