Going down the Raspberry Pi rabbit hole

I’m starting to get pretty excited to get my hands on my LongMill, so I’ve been doing my research and starting to set some things up ahead of time.

Long story short, I don’t own a laptop or anything and I wanted the best solution for a machine to dedicate as a G-code sender. I decided buying a laptop wasn’t worth it, and so I embarked on a project to set up a Raspberry Pi 3+ B with a touchscreen.

I am reminded now of why I hate Linux. Nothing ever works out of the box. I’ve been fooling with this thing for two days, trying UGS, UGS platform, and now I’m working on installing bCNC. Every time its a rabbit hole of unmet dependencies and errors to figure out. When I do finally get the programs running, everything is all squished up on the stupid 7" screen and its super hard to adjust anything. Heck, even making a shortcut to launch to program is a PITA.

I figured this would be a great topic for the community here, though. Has anybody else had much success setting one of these up? If so, how did you set it up? Is there good how-to guides on this out there? I haven’t really found any. If I ever do get the thing working smoothly, maybe I’ll try to make an image of the disk to share.

1 Like

Hey David, that’s quite the journey you’ve embarked on! I’d love to hear how your progress on getting it set up continues. I’ve heard of some users looking to control their machines through Octoprint since it had a GRBL plugin that allowed it to better parse GRBL g-code, and recently the “Better GRBL plugin” was released to supersede the existing one: https://plugins.octoprint.org/plugins/bettergrblsupport/

Good luck!

I think I may have ended up with a useful controller here.

So, a couple lessons learned on this project so far.

First - the official Pi 7 inch touchscreen is cool, but I’d go for something bigger next time. I’m undecided if the touchscreen will be beneficial or not.

The main issue with the small screen is, none of the GCode senders I’ve tried will fit nicely.

Lesson 2, The PiBakery Raspbian installer didn’t work well for me. The NOOBS installer was much more intuitive and I had fewer issues.

Lesson 3, if you’re going to have the small screen, UGS Platform seems to be the way to go. It was easiest to install. The screen layout is easily customized. Still, there’s not enough real estate to get all the tools visible on the screen, and since I’ve never done this before I’m not sure what widgets I need.

UGS classic can also be made to fit by playing with the screen resolution and the framebuffer lines in /boot/config.txt - 960x580 worked for me.

Lesson 4, YouTube videos showing how to do this suck. Reading the official instructions on the UGS / bCNC, etc websites is better.

Next up, figuring out how to get this thing a static IP so I can easily use an FTP server to transfer files. Then I need to figure out how these programs are supposed to work. What are macros? How is the zero touchplate supposed to work?

Lots to learn.

1 Like

Thats cool I dont think I understand most of it but its cool.

Be careful, the Linux community generally doesn’t like when this truth gets exposed. :slight_smile: But it is true. Linux is amazing and powerful but suffers from half-bakedness and half-assedness in a lot of areas if you are an end-user and not an end-programmer. The answer is always “well if you don’t like it, write a patch and submit it”, but that excludes a large portion of the population.

That being said, the Pi has a great support community and great forums. Even so, I would say that picking up an older laptop or desktop PC off of Craigslist, Kijiji or even from the local thirft shop will probably make life easier. Once you buy a Pi and basic accessories (SD card, power supply etc) even if you have an extra keyboard and mouse, it really isn’t that much cheaper than a $75 or $100 PC that will out-do it and run windows. It really depends on how much you want to futz with things versus spend time cutting. Also, having a larger screen you can wall mount could be nice, picking up older LCD and Plasma TVs on Craigslist can give you a big screen suitable for CNC work for a very low price…

I’m embarrassed to say that over the years our family has built up a number of older (6+ years old now) laptops and desktops that we can’t seem to get rid of. I intend to task one of them as my CNC system. I’m actually thinking it’s about time I cull all the aged out electronics, including a few point and shoot digital cameras (remember those?!) and an old MP3 player that realistically will never get used.


1 Like

There were a couple of good reasons to give the Raspberry Pi a shot, I think. For one, I don’t have a laptop or a tablet or any of that good stuff. Haven’t for years now, except what work has provided.

I spent a while looking at buying a laptop, but for some reason I could bring myself to buy a cheapo laptop. I figured, if I’m going to have a laptop it better be good enough to do some modeling and anything else I might want to do on a computer. Every time I went down that road, I ended up looking at laptops that I probably wouldn’t want to abuse in the shop anyway.

For a dedicated gcode sender, though, the Pi 3 seems ideal. It’s cheap, the software is all free, no fans pulling in dust, and on the face of it setting it up SHOULD be super easy. 15+ years ago, I used to tinker with computers for fun, and I’ve actually used linux a fair amount back then, so I figured this would be as simple as it gets. I had forgotten, though, that linux is always a PITA. Every time.

The touchscreen was a mistake, though. I could have easily found a used monitor somewhere for cheaper and it would work way better. I may do that still.

In any case, I think I’ve got the thing working with UGS Classic and Platform.

Today I put grbl 1.1 on an arduino, since I had one laying around. And I unearthed another puzzle to solve. The visualizers don’t work at all.

Hmm… Interesting thoughts here.
I’ll be starting a complete scratch build shortly, thanks to open source, and have been encouraged to use this RPI CNC setup…


Do you think I would be running into the same troubles as you had? Or is this a refined and tested platform?


Hello Hansi, I know this post is a year old but I was wondering if the process you linked to (Raspberry Pi + CNC controller) worked for you?

Im looking at putting the Universal G-Code sender on a Pi and run it straight to the Longmill but wasn’t sure I would need the controller.

Let me know how your build worked out.


Edit: Ill also be using a 19” touchscreen mounted to the work table.

responding to keep myself updated - I spent a few hours last week trying to get UGS to work on raspberry pi without success. I somehow think it’s the right direction for me though.

What troubles are you having? I recently acquired a Raspberry Pi 4, hooked it up to an old monitor (DVI or HDMI is ok), installed the latest UGS platform and it worked like a charm. I followed the instructions given by Sienci on their forum to get it connected to the LongMill.

So if you’re wondering, it is definitely doable without a whole lot of fuss.
Granted, I know Linux so installing UGS from a compressed tar file was not a problem.
Let me know where you’re stuck and perhaps I can help.

Hi, I’m new here, so I don’t have a ton of experience, but I have had a little luck with Linux (Ubuntu 16 LTS). I installed CNCjs, and was able to connect to the machine and have jog around and such. The CNCjs interface is a little nicer than UGS (in my opinion).

However, it did take me quite a bit longer to get all the bits and pieces installed in Linux (NodeJS, arduino, cncjs) than what it took on my windows machine.

Incidentally, because my Linux machine doesn’t have wifi (another common Linux issue) I ended up copping out and cutting my first project on Easel on Windows… Easel is super easy and lets you design, create toolpaths and send them, right from the web browser (no installation of anything except the arduino stuff). I also like their wizard approach to make sure you don’t cut through your table.

Hi Tod,

I have a RBP4 on order, I have an old computer scree and a bluetooth keyboard ready to go. I will be downloading any files from a mac to an SD card to install in the pi. Where do you suggest I go to get the correct files to get rolling?

I went here to get the OS (Debian desktop) installed.
I’ve been using Universal GCode Sender (UGS) to drive the Longmill but am currently trying gSender. The latter is available from Sienci while the former can be obtained online; you’ll have to search for it as I can’t remember the source.

Let me know how it goes. Happy to help further as needed.
Good luck,