GrblHAL CNC Controller Based On RP2040 Pico

[Phil Barrett] designed a new CNC controller breakout board called the PicoCNC which uses the Raspberry Pi Pico RP2040 module and grblHAL. It packs a bunch of features typical of these controllers, and if you use the Pico W, you get WiFi connectivity along with USB. And if you don’t want connectivity, you can execute G-code directly from a micro SD card. The board is available in kit form, and schematics are posted on the GitHub repository above. Some of the features include four axes of motion, spindle control, limit switches, relay drivers, expansion headers, and opto-isolation.

This isn’t [Phil]’s first controller board. He also designed the grblHAL-based Teensy CNC controller breakout board, a step up from the usual Arduino-based modules at the time and boasting Ethernet support as well. According to the grblHAL site, nine different processors are now supported. There are well over a dozen CNC controller breakout boards listed as well. And don’t forget [bdring]’s 6-Pack grbl-ESP32 controller, a modular breakout board we covered a few years back. So pick your favorite board or roll your own and get moving.

Hackaday Podcast 042: Capacitive Earthquakes, GRBL On ESP32, Solenoid Engines, And The TI-99 Space Program

Hackaday Editors Elliot Williams and Mike Szczys talk turkey on the latest hacks. Random numbers, art, and electronic geekery combine into an entropic masterpiece. We saw Bart Dring bring new life to a cool little multi-pen plotter from the Atari age. Researchers at UCSD built a very very very slow soft robot, and a broken retrocomputer got a good dose of the space age. A 555 is sensing earthquakes, there’s an electric motor that wants to drop into any vehicle, and did you know someone used to have to read the current time into the telephone ad nauseam?

Take a look at the links below if you want to follow along, and as always tell us what you think about this episode in the comments!

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (60 MB or so.)

Continue reading “Hackaday Podcast 042: Capacitive Earthquakes, GRBL On ESP32, Solenoid Engines, And The TI-99 Space Program”

Retro Hardware Plots Again Thanks To Grbl And ESP32

When it comes to building a new CNC machine, you’ve got a wide world of controller boards to choose from. Whether you’re building a 3D-printer or a CNC plasma cutter, chances are good you’ll find a controller that fits your needs and your budget. Not so much, though, when you want to add CNC to a pen plotter from the early days of the PC revolution.

[Barton Dring] just posted the last installment of a five-part series in which he documented putting an Atari 1020 plotter under CNC control. The plotter was a peripheral for the Atari line of 6502 machines from the late 1970s; the guts of the little roll-fed, ballpoint-pen plotter appeared in Commodore, Tandy, and TI versions as well. [Bart]’s goal was to not add or modify anything to the mechanically simple device apart from the controller. That was easier said than done, given the unipolar stepper motors controlling the pen position and paper roll, and the fact that the pen lift mechanism uses a solenoid. Support for those had to be added to his Grbl_ESP32 firmware, as did dealing with the lack of homing switches in the plotter, and adapting the Grbl tool change command to the pen color change mechanism, which rotates the pen holder by bumping it into the right-hand carriage stop. The stock controller was replaced by a custom PCB that fits perfectly within the case, with plenty of room to spare. The video below shows it plotting out a vexillogically relevant sample.

From custom coasters to wooden nickels to complex string art, [Bart] has really put Grbl through the wringer. We really like this retro-redo, though, and fully support his stated desire to convert more old hardware to Grbl_ESP32.

Continue reading “Retro Hardware Plots Again Thanks To Grbl And ESP32”

Grbl Ported To The ESP32

If you’re building a CNC or laser, there’s an excellent chance you’ll be using Grbl to get moving. It’s also a pretty safe bet you’d end up running it on some variation of the Arduino sitting in a motor controller breakout board. It’s cheap, easy to setup and use, and effectively the “industry” standard for DIY machines so there’s no shortage of information out there. What’s not to love?

Well, quite a few things in fact. As [bdring] explains, Grbl pushes the capability of the Arduino to the very limit; making it something of a dead-end for future development. Plus the Arduino needs to be plugged into the host computer via USB to function, a rather quaint idea to many in 2018. These were just some of the reasons he decided to port Grbl to the ESP32 board.

Price wise the Arduino and ESP32 are around the same, but the ESP does have the advantage of being much more powerful than the 8-bit Italian Stallion. Its got way more flash and RAM as well, and perhaps most importantly, includes Wi-Fi and Bluetooth out of the box. It still needs to be plugged into a board to hold the motor drivers like the Arduino, but beyond that [bdring] opines the ESP32 is about as close to the perfect Grbl platform as you can get.

[bdring] reports that porting the code over to the ESP32 wasn’t terrible, but it wasn’t exactly a walk in the park either. The bulk of the code went by without too much trouble, but when it came to the parts that needed precise timing things got tricky. The ESP32 makes use of a Real Time Operating System (RTOS) that’s not too happy about giving up control of the hardware. Turning off the RTOS was an option, but that would nuke Bluetooth and Wi-Fi so obviously not an ideal solution. Eventually he figured out how to get interrupts more or less playing nicely with the RTOS, but mentions there’s still some more work to be done before he’s ready to release the firmware to the public.

If you’ve been browsing Hackaday for a while you may remember [bdring]. He’s got a real knack for making things move, and has created a number of fantastic little CNC machines recently which have definitely caught our eye.

[Thanks to Jon and Craig for the tip.]

Continue reading “Grbl Ported To The ESP32”

USB-Parallel-GRBL

USB To DB25 Adapter Uses GRBL For Parallel Port CNC Communication

With the continuing manufacture of new computers, there is a clear and obvious trend of the parallel port becoming less and less common. For our younger readers; the parallel port is an interface standard used for bi-directional communication between a computer and a variety of peripherals. The parallel port’s demise is partially due to the invention of the USB standard.

If tinkering with CNC Machines is one of your hobbies then you are familiar with the parallel port interface being fairly popular for CNC control board connections. So what do you do if your new fancy computer doesn’t have a parallel port but you still want to run your CNC Machine? Well, you are certainly not stuck as [Bray] has come up with a USB to Parallel Port Adapter solution specifically for CNC use.

A cheap off-the-shelf USB to DB25 adapter may look like a good idea at first glance but they won’t work for a CNC application. [Bray’s] adapter is Arduino-based and runs GRBL. The GRBL code is responsible for taking the g-code commands sent from the computer, storing them in a buffer until they are ready to be converted to step and direction signals and sent to the CNC controller by way of the parallel port DB25 connector. This is a great solution for people needing to control a CNC Machine but do not have a parallel port available.

[Bray] is using a Raspberry Pi running GRBLweb to control his adapter board. However, there are other programs you can use to communicate with GRBL such as Universal G-Code Sender and GRBL Controller.

The board has been created in Eagle PCB Software and milled out using [Bray’s] CNC Router. The design is single-sided which is great for home-brew PCBs. He’s even made a daughter board for Start, Hold and Reset input buttons. As all great DIYers, [Bray] has made his board and schematic files available for others to download.

GRBL Compatible Arduino CNC Shield

By the time you get to the point in a home CNC build where you’re adding control electronics you may be ready for the simplest means to an end possible. In that case, grab your Arduino and heat up that etching solution to make your own GRBL compatible shield.

This familiar footprint manages to contain everything you need for a three-axis machine. The purple boards slotted into the pairs of SIL headers are Pololu Stepper motor drivers. Going this route makes replacing a burnt out chip as easy as plugging in a new module. The terminal block in the center feeds the higher voltage rail necessary for driving the motors. The DIL header on the right breaks out all of the connections to the limiting switches (two for each axis), spindle and coolant control, as well as three buttons for pause, resume, and abort. There’s even a header for SPI making it easier to add  custom hardware if necessary.

This is a dual-layer board which may not be ideal for your own fabrication process. [Bert Kruger] posted his Gerber files for download if you want to put in a small run with OSH Park or a similar service.

 

Remote-Control Kinetic Sand Table Uses A Single Arduino

There’s nothing fun about a Sisyphean task unless you’re watching one being carried out by someone or something else. In that case, it can be mesmerizing like this Arduino-driven kinetic sand table.

What you can’t see. Image via [thang010146] on YouTube
Like many of these builds, it all started with an ordinary coffee table from the hacker’s favorite furnitüre store. [NewsonsElectronics] opened it up and added a 3mm-thick board to hold the sand and another to hold the rails and magnets.

After designing some pieces to connect the rails and pulleys together, [NewsonsElectronics] let the laser cutter loose on some more 3mm stock. A pair of stepper motors connected to a CNC shield do all of the work, driving around a stack of magnets that causes the ball bearing to trudge beautifully through the sand.

Be sure to check out the videos after the break. The first is a nice demonstration, and the second is the actual build video. In the third video, [NewsonsElectronics] explains how they could write the world’s smallest GRBL code to swing this with a single Arduino. Hint: it involves removing unnecessary data from the g-code generated by Sandify.

Don’t have a laser cutter? Here’s a sand table built from 3D printer parts.

Continue reading “Remote-Control Kinetic Sand Table Uses A Single Arduino”