I've had a Rev B Pi sat around on my desk for at least 5 years now, and have been trying to find a use for it. So my latest desire is to have it setup on the Taz to run OctoPrint utilizing the webcam for remote viewing of the print progress. This post is here simply for my own reference so that I can repeat various steps to get the Pi up and running again should I need to.
There is an SD image already created based on Raspbian called octopi. This is probably the simplest way to get started, however, I already had Raspbian installed and would rather do things manually, so I started by following these steps here:
I configured as per the instructions, I do remember running into a missing library at some point, but can't think what it was, something to do with python-dev?? anyway, a google search turned up the answer. I did the following:
Some important file locations:
Webcam configuration:
Edit using: nano ~/scripts/webcamDaemon
The hidden Ocotprint configuration file:
Edit this file using
Currently my file has some modifications to add actions to the OctoPrint interface so that I can start and stop the webcam stream, and reboot the system. Also this file contains webcam configuration, which can be accessed and changed via the OctoPrint interface. However, for changes to take effect OctoPrint has to be re-started and the browser will need refreshing. Additions to my config file are as follows:
There is an SD image already created based on Raspbian called octopi. This is probably the simplest way to get started, however, I already had Raspbian installed and would rather do things manually, so I started by following these steps here:
Setup on a Raspberry Pi running Raspbian
I configured as per the instructions, I do remember running into a missing library at some point, but can't think what it was, something to do with python-dev?? anyway, a google search turned up the answer. I did the following:
- Install OctoPrint
- Add mjpg_streamer for webcam
- Configure to start on boot as server
- Add system commands to ocotprint interface
- Make everything accessable on port 80
Some important file locations:
Webcam configuration:
~/scripts/webcamDaemon
I modified the webcam resolution and frame rate as I found it was swamping the wifi link on the Pi, and would often kill the network interface. My configuration looks like this:camera_raspi_options="-fps 4 -x 640 -y 480 -q 20 -sh 100"
Edit using: nano ~/scripts/webcamDaemon
The hidden Ocotprint configuration file:
~.octoprint/config.yaml
Edit this file using
nano ~.octoprint/config.yaml
haproxy config files:/etc/haproxy/haproxy.cfg
/etc/default/haproxy
Currently my file has some modifications to add actions to the OctoPrint interface so that I can start and stop the webcam stream, and reboot the system. Also this file contains webcam configuration, which can be accessed and changed via the OctoPrint interface. However, for changes to take effect OctoPrint has to be re-started and the browser will need refreshing. Additions to my config file are as follows:
system:
actions:
- action: streamon
command: /home/pi/scripts/webcam start
confirm: false
name: Start Video Stream
- action: streamoff
command: /home/pi/scripts/webcam stop
confirm: false
name: Stop Video Stream
- action: reboot
command: sudo reboot
confirm: You are about to reboot the system
name: Reboot
temperature:
profiles:
- bed: '110'
extruder: '245'
name: ABS
- bed: 60
extruder: 180
name: PLA
webcam:
ffmpeg: /usr/bin/avconv
flipH: true
flipV: true
snapshot: http://127.0.0.1:8080/?action=snapshot
stream: http://mywebaddress.no-ip.org:8080/?action=stream
watermark: false
Usefull stuff:
To start/stop services:
sudo service octoprint {start|stop|restart}
sudo service haproxy {start|stop|restart}
~/scripts/webcam {start|stop}
So what next. I setup a no-ip account so that I could have a web address I could access from anywhere that would re-direct to my OctoPi. To do this I installed the noip service on the Pi, which updates the dynamic IP address to my no-ip hostname, instructions here:
Install no-ip DUC on Raspberry Pi
Or this one, which has the auto start instructions:
No-Ip with auto start on boot
I changed the default hostname of raspberrypi to somehting else using this guide:
Change hostname
As yet I have not got an easy way to find the OctoPi on the network without knowing it's IP address. working on this...
No comments:
Post a Comment
Note: only a member of this blog may post a comment.