Cerealbot/Software

From Makers Local 256
< Cerealbot
Revision as of 12:03, 27 May 2015 by Ctag (Talk | contribs)

Jump to: navigation, search

Webcam

Webcamera Information

To list available formats:

v4l2-ctl --list-formats

or

v4l2-ctl -d /dev/video0 --list-formats-ext

With Octoprint

To use an http stream with octoprint, the URL has to be formatted correctly.

At first glance, I tried: cerealbox.256.makerslocal.org:8081, which didn't work.

Turns out Octoprint blindly appends a GET variable to the URL, which turns the above into: cerealbox.256.makerslocal.org:8081?2354jk345 which isn't a valid URL anymore.

So, you have to set up the webcam URL like: http://cerealbox.256.makerslocal.org:8081/

Here the trailing slash lands the GET variable. It took Hunter Fuller to figure all that out.

mjpg-streamer

mjpg-streamer is by far the best solution for webcam streaming from the RPi. A recent update brought immense relief for CPU overhead.

Base command to run:

mjpg_streamer -b -i "./input_uvc.so -d /dev/video0 -n -f 5 -r 1280x720" -o "./output_http.so -p 8080 -w ./www"

Previously I've used the -y flag for compatibility, which totally crushed the little CPU, but the most recent build of mjpg-streamer appears to work quite well with my Logitech webcam with the default MJPG codec.

ffmpeg + ffserver

I also tried ffmpeg+ffserver. Didn't go over well, I'm not patient enough to learn how to set it up correctly.

motion

[1]

[2]

[3]

[4]

Octoprint Config

Haproxy setup:

https://github.com/foosel/OctoPrint/wiki/Reverse-proxy-configuration-examples

https://gist.github.com/christiannelson/3900758

RedQueen256 Integration

Slic3r Config

Octoprint Server - RPi

Raspbian - Debian

Archlinux

To run octoprint from port 80 as user 'octoprint', I adjusted the systemd unit file to launch with authbind.

[Unit]
Description=Octoprint 3d Printing Web Server
After=network.target

[Service]
User=octoprint
Group=octoprint
Type=simple
ExecStart=/usr/bin/authbind --deep /usr/bin/octoprint --port 80
Restart=on-failure

[Install]
WantedBy=multi-user.target

Right now I'm streaming the webcam from v4l-mjpg-streamer, total pain, will look for something better.

Protips

BYOBU

  • F1 allows you to set "log into byobu" to save some time while logging in.
  • 'C-a a' will send C-a to screen, so that you can use screen within byobu to debug the printer's serial connection.