Today I’ll show you a first idea for an IOT enabled 3D printer extruder.
The base is a NodeMCU v1.0 running a very basic webserver script. This is a very cheap IOT device based on a ESP8266 that is very easy to program with a recent Arduino IDE.
It is connected to a A4988 stepper motor driver that acts like a „normal“ driver that can be found on a lot of Open Source 3D printers.
The whole thing is powered with a single 9V battery. To keep electrical damage away from the NodeMCU we have to regulate the voltage from 9V to 3.3 Volt. Luckily the A4988 stepper drivers work from 3.0 volt, so we have enough power coming from the NodeMCU to make everything running smoothly.
When the thing is powered on it connects to your local WiFi-AP and from now on you can use any device which is able to run a recent browser. So laptops, smartphones, Raspberry Pi’s, and all those things work as a remote controll for your new WiFi 3d printer extruder.
If you are running a Linux box or a virtual machine with Linux as a guest system you may use curl to write some scripts that send commands to control this fine thing. Or open a web browser and enter a line in the address field like this:
1 |
http://$ESP_IP/stepper/start |
A script for curl looks like this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Turn on Motors curl http://$ESP_IP/stepper/start # Set RPM curl http://$ESP_IP/stepper/rpm?50 # Move it! curl curl http://$ESP_IP/stepper/steps?-50 sleep 2 # Change speed and Move! curl http://$ESP_IP/stepper/rpm?5 curl http://$ESP_IP/stepper/steps?20 curl http://$ESP_IP/stepper/steps?-20 # Turn Off Motors curl http://$ESP_IP/stepper/stop |