The blog of OctoPrint, an open source web interface for controlling 3D printers, written by its maintainer Gina Häußge.
HN commenters recommend OctoPrint as an excellent, snappy tool for controlling and monitoring 3D printers, including older models like the Ender 3, and often run it on a Raspberry Pi.
With the Raspberry Pi:
I've made a four wheel drive robot called Rover that uses brushless motors and 3d printed planetary gears. It's all CC0 open source:
https://www.youtube.com/watch?v=pwCkX6bLY3E&t=4s
https://github.com/tlalexander/rover_control
https://reboot.love/t/rover-and-skittles-cad-design-files-here/171
https://imgur.com/a/GqXD2Zj
I've made a smaller classroom style robot named Skittles that also uses brushless + planetary and is open source:
https://www.youtube.com/watch?v=Y2-zIUY_kww
I taught a robotics class using the robot Skittles, and the students did a great job picking up Raspberry Pi. There's a lot of tutorials on the web they found to do their work!
https://www.youtube.com/watch?v=4pql6ZbPVog
I've made a "fake Philips Hue" light out of a SK6812 RGBW LED strip to go with my existing Philips Hue system. That uses this github project:
https://github.com/diyhue/diyHue
I made a humidity controlled chamber for mushroom cultivation:
https://github.com/tlalexander/humidity_controller
I've made an RTK GPS system using two raspberry pis and two $75 GPS receivers to make a GPS system that so far looks to be accurate to within a few centimeters (when you have clear sky).
http://rtkexplorer.com/how-to/posts-getting-started/
I replaced our dodgy bluetooth audio sink on our stereo with an Airplay node using this software:
https://github.com/mikebrady/shairport-sync
I've added a wireless front end to some of my 3D printers using…
I use FreeCAD, which is FOSS and available for Windows, macOS, and Linux.
You'll also need "slicer" software, which takes the 3D model and slices it into layers and generates the actual tool control program (this is in a language called "G-code", which is more or less standardized across CNC tools).
For that I use Ultimaker Cura, also FOSS and available for Windows, macOS, and Linux.
A typical workflow is this:
1) Design part in FreeCAD. Save as a FreeCAD model (so you can edit it later) and also export it as an STL file (a standard 3D model format)
2) Load STL into Cura. Here you can control things like layer height, how much of the interior of the model is hollow (for most models you don't want to waste filament by printing it solid, though you can do that if you choose), what kind of infill pattern is used, etc. The defaults work well most of the time. Though Ultimaker makes their own printers, Cura also has printer profiles for many other common devices, including Ender. Cura generates the G-code file that controls the physical printer.
3) Put the G-code file on the printer (on a micro SD card, in my case) and print.
Many people like a package called Octoprint, which works with a Raspberry Pi to give you remote printer control and monitoring capabilities. I haven't made that step yet, but plan to do that soon.
https://www.freecadweb.org/
https://ultimaker.com/software/ultimaker-cura
https://octoprint.org/
I have a bunch doing different things:
One is running our sprinklers with OpenSprinklerPi https://opensprinkler.com/product/opensprinkler-pi/
One is running VolumeIO to splay music on the speakers in our house as a Spotify Connect device https://volumio.org/
One controls our whole house humidifier via a relay and a combination of weather and thermostat information.
One has been turned into a precision/TSD/regularity rally computer for my vintage car. https://en.wikipedia.org/wiki/Regularity_rally
One runs my 3D printer using OctoPrint https://octoprint.org/download/
And I use one as a race car telemetry system using a 9-dof sensor and a GPS module (with brake, throttle, and steering inputs to come).
For most of these projects, they're complete overkill in terms of hardware, but with integrated wifi and bluetooth, and a host of GPIO pins, they make developing projects like this dead simple. And at $35, the amount of time they save is well worth it over bare metal hardware.
It's a standardized piece of kit at a great price point with broad and long-term availability around the world. There's simply not anything that hits all those points in the x86 world.
It's a good target if you want to provide something very close to a "turn-key appliance" without actually selling your own hardware: You can provide an image that a user writes to a microSD card, plugs in, and it just works.
For example: HomeAssistant [1] for home automation, OctoPi [2] 3D printer software, OpenElec [3] media center, RetroPi [4] game console emulator, Volumio [4] music player, and lots more [5].
[1] https://www.home-assistant.io/installation
[2] https://octoprint.org/download/
[3] https://openelec.tv/
[4] https://retropie.org.uk/
[5] https://volumio.org/
[6] https://github.com/thibmaek/awesome-raspberry-pi
So many things!
1. Home Assistant for tying together all the various brands of smart home devices https://www.home-assistant.io/
2. OctoPrint for managing a 3D printer (also has a home assistant integration) https://octoprint.org/
3. Magic Mirror that shows me news, weather, commute time estimate, etc https://magicmirror.builders/
4. PiHole for blocking all ads on my home network https://pi-hole.net/
5. The brains of a toy i hacked apart for a friend's robot fight https://www.facebook.com/RobotRiotCompetition/
6. PyPortal Twitter feed on my desk https://www.adafruit.com/product/4116
7. Server for various weekend web projects
Anytime. Good luck! If you need advice, feel free to ping me.
My three tips are: 1-Make sure you get a good Z calibration before the first layer (run the calibration a few times). 2-Wipe with Isopropyl alcohol between prints, and 3-If you ever start getting adhesion issues, wipe with Acetone.
Oh, also, get octoprint and install it on a raspberry pi. You can run and monitor your printer remotely that way. Really easy, and so handy. https://octoprint.org/