WebCam Manual Install

What is the problem?

I did a manual install on my raspberry pi os (64-bit) for octoprint. This works fine. I connected USB Camera and did the following to install and take a picture:

sudo apt install fswebcam
sudo usermod -a -G video pi
fswebcam image.jpg

I looked at the image.jpg file and it works. Great picture.

I read that octoprint will detect the USB WebCam automatically.

What did you already try to solve it?

I upgraded to the latest octoprint 1.5 and install UI Customizer. The webcam section is not showing anything just a spinning wait cursor.

I tried putting in http://192.168.1.107:5000/?action=stream in the browser and got nothing also added it under webcam settings and did click test and it did not work.

I tried to finding octoprint.txt file for configuring, but do not see it under ~/OctoPrint/venv or ~/.octoprint folders.

Additional information about your setup

Linux raspberrypi64 5.4.72-v8+ #1356
OctoPrint 1.5.0
BIQU B1 Printer
ToLuLu Webcam HD 1080p Web Camera 110 degree widescreen

Log file contents

2020-11-30 18:45:29,757 - octoprint.startup - INFO - ******************************************************************************
2020-11-30 18:45:29,759 - octoprint.startup - INFO - Starting OctoPrint 1.5.0
2020-11-30 18:45:29,760 - octoprint.startup - INFO - ******************************************************************************
2020-11-30 18:45:30,044 - octoprint.util.connectivity.connectivity_checker - INFO - Connectivity changed from offline to online
2020-11-30 18:45:30,253 - octoprint.util.connectivity.connectivity_checker - INFO - Connectivity state is currently: online
2020-11-30 18:45:30,253 - octoprint.util.connectivity.connectivity_checker - INFO - Connecting to 8.8.8.8:53 is working
2020-11-30 18:45:30,253 - octoprint.util.connectivity.connectivity_checker - INFO - Resolving octoprint.org is working
2020-11-30 18:45:30,264 - octoprint.startup - INFO - Blacklist processing done, adding 10 blacklisted plugin versions: roomtemp (any), GcodeEditor (0.1.1), GcodeEditor (0.2.0), GcodeEditor (0.2.1), GcodeEditor (0.2.2), GcodeEditor (0.2.3), GcodeEditor (0.2.4), GcodeEditor (0.2.5), GcodeEditor (0.2.6), GcodeEditor (0.2.8)
2020-11-30 18:45:30,295 - octoprint.plugin.core - INFO - Loading plugins from /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins, /home/felix/.octoprint/plugins and installed plugin packages...
2020-11-30 18:45:31,216 - octoprint.startup - INFO - Added settings overlay from plugin dashboard
2020-11-30 18:45:31,221 - octoprint.plugin.core - INFO - Found 22 plugin(s) providing 22 mixin implementations, 43 hook handlers
2020-11-30 18:45:31,289 - octoprint.server.heartbeat - INFO - Starting server heartbeat, 900.0s interval
2020-11-30 18:45:31,296 - octoprint.server - INFO - Intermediary server started
2020-11-30 18:45:31,314 - octoprint.filemanager.storage - INFO - Initializing the file metadata for /home/felix/.octoprint/uploads...
2020-11-30 18:45:31,608 - octoprint.filemanager.storage - INFO - ... file metadata for /home/felix/.octoprint/uploads initialized successfully.
2020-11-30 18:45:31,612 - octoprint.server - INFO - Added new permission from plugin action_command_notification: PLUGIN_ACTION_COMMAND_NOTIFICATION_SHOW (needs: "Need(method='role', value='plugin_action_command_notification_show')")
2020-11-30 18:45:31,612 - octoprint.server - INFO - Added new permission from plugin action_command_notification: PLUGIN_ACTION_COMMAND_NOTIFICATION_CLEAR (needs: "Need(method='role', value='plugin_action_command_notification_clear')")
2020-11-30 18:45:31,613 - octoprint.server - INFO - Added new permission from plugin action_command_prompt: PLUGIN_ACTION_COMMAND_PROMPT_INTERACT (needs: "Need(method='role', value='plugin_action_command_prompt_interact')")
2020-11-30 18:45:31,613 - octoprint.server - INFO - Added new permission from plugin announcements: PLUGIN_ANNOUNCEMENTS_READ (needs: "Need(method='role', value='plugin_announcements_read')")
2020-11-30 18:45:31,614 - octoprint.server - INFO - Added new permission from plugin announcements: PLUGIN_ANNOUNCEMENTS_MANAGE (needs: "Need(method='role', value='plugin_announcements_manage'), Need(method='role', value='plugin_announcements_read')")
2020-11-30 18:45:31,614 - octoprint.server - INFO - Added new permission from plugin appkeys: PLUGIN_APPKEYS_ADMIN (needs: "Need(method='role', value='plugin_appkeys_admin')")
2020-11-30 18:45:31,614 - octoprint.server - INFO - Added new permission from plugin backup: PLUGIN_BACKUP_ACCESS (needs: "Need(method='role', value='plugin_backup_access')")
2020-11-30 18:45:31,615 - octoprint.server - INFO - Added new permission from plugin dashboard: PLUGIN_DASHBOARD_ADMIN (needs: "Need(method='role', value='plugin_dashboard_admin')")
2020-11-30 18:45:31,615 - octoprint.server - INFO - Added new permission from plugin firmware_check: PLUGIN_FIRMWARE_CHECK_DISPLAY (needs: "Need(method='role', value='plugin_firmware_check_display')")
2020-11-30 18:45:31,616 - octoprint.server - INFO - Added new permission from plugin pi_support: PLUGIN_PI_SUPPORT_STATUS (needs: "Need(method='role', value='plugin_pi_support_check')")
2020-11-30 18:45:31,617 - octoprint.server - INFO - Added new permission from plugin pluginmanager: PLUGIN_PLUGINMANAGER_MANAGE (needs: "Need(method='role', value='plugin_pluginmanager_manage')")
2020-11-30 18:45:31,618 - octoprint.server - INFO - Added new permission from plugin pluginmanager: PLUGIN_PLUGINMANAGER_INSTALL (needs: "Need(method='role', value='plugin_pluginmanager_manage'), Need(method='role', value='plugin_pluginmanager_install')")
2020-11-30 18:45:31,619 - octoprint.server - INFO - Added new permission from plugin softwareupdate: PLUGIN_SOFTWAREUPDATE_CHECK (needs: "Need(method='role', value='plugin_softwareupdate_check')")
2020-11-30 18:45:31,620 - octoprint.server - INFO - Added new permission from plugin softwareupdate: PLUGIN_SOFTWAREUPDATE_UPDATE (needs: "Need(method='role', value='plugin_softwareupdate_update')")
2020-11-30 18:45:31,621 - octoprint.server - INFO - Added new permission from plugin softwareupdate: PLUGIN_SOFTWAREUPDATE_CONFIGURE (needs: "Need(method='role', value='plugin_softwareupdate_configure')")
2020-11-30 18:45:32,287 - octoprint.util.pip - INFO - Using "/home/felix/OctoPrint/venv/bin/python3 -m pip" as command to invoke pip
2020-11-30 18:45:32,903 - octoprint.util.pip - INFO - Version of pip is 20.2.4
2020-11-30 18:45:32,904 - octoprint.util.pip - INFO - pip installs to /home/felix/OctoPrint/venv/lib/python3.7/site-packages (writable -> yes), --user flag needed -> no, virtual env -> yes
2020-11-30 18:45:32,905 - octoprint.util.pip - INFO - ==> pip ok -> yes
2020-11-30 18:45:32,976 - octoprint.plugins.softwareupdate - INFO - Loaded version cache from disk
2020-11-30 18:45:33,042 - octoprint.plugin.core - INFO - Initialized 22 plugin implementation(s)
2020-11-30 18:45:33,056 - octoprint.plugin.core - INFO - 22 plugin(s) registered with the system:
| Action Command Notification Support (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/action_command_notification
| Action Command Prompt Support (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/action_command_prompt
| Announcement Plugin (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/announcements
| Anonymous Usage Tracking (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/tracking
| Application Keys Plugin (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/appkeys
| Backup & Restore (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/backup
| BetterHeaterTimeout (1.3.0) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_BetterHeaterTimeout
| Core Wizard (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/corewizard
| Dashboard (1.16.3) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_dashboard
| Discovery (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/discovery
| DisplayLayerProgress Plugin (1.24.0) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_DisplayLayerProgress
| Error Tracking (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/errortracking
| File Check (2020.8.7) (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_file_check
| Firmware Check (2020.9.23) (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_firmware_check
| GCode Viewer (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/gcodeviewer
| Logging (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/logging
| Pi Support Plugin (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/pi_support
| Plugin Manager (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/pluginmanager
| Resource Monitor (0.2.6) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_resource_monitor
| Software Update (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/softwareupdate
| UI Customizer (0.0.9.5) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint_uicustomizer
| Virtual Printer (bundled) = /home/felix/OctoPrint/venv/lib/python3.7/site-packages/octoprint/plugins/virtual_printer
Prefix legend: ! = disabled, # = blacklisted, * = incompatible
2020-11-30 18:45:33,078 - octoprint.environment - INFO - Detected environment is Python 3.7.3 under Linux (linux). Details:
| hardware:
| cores: 4
| freq: 1500.0
| ram: 8195260416
| os:
| bits: 64
| id: linux
| platform: linux
| plugins:
| pi_support:
| model: Raspberry Pi 4 Model B Rev 1.4
| throttle_state: '0x0'
| python:
| pip: 20.2.4
| version: 3.7.3
| virtualenv: /home/felix/OctoPrint/venv
2020-11-30 18:45:33,088 - octoprint.server - INFO - Reset webasset folder /home/felix/.octoprint/generated/webassets...
2020-11-30 18:45:33,107 - octoprint.server - INFO - Reset webasset folder /home/felix/.octoprint/generated/.webassets-cache...
2020-11-30 18:45:33,619 - octoprint.server - INFO - Shutting down intermediary server...
2020-11-30 18:45:33,645 - octoprint.server - INFO - Intermediary server shut down
2020-11-30 18:45:33,647 - octoprint.events - INFO - Processing startup event, this is our first event
2020-11-30 18:45:33,647 - octoprint.events - INFO - Adding 2 events to queue that were held back before startup event
2020-11-30 18:45:33,650 - octoprint.filemanager - INFO - Adding backlog items from all storage types to analysis queue...
2020-11-30 18:45:33,655 - octoprint.filemanager - INFO - Added 0 items from storage type "local" to analysis queue
2020-11-30 18:45:33,656 - octoprint.plugins.softwareupdate - INFO - Fetching check overlays from https://plugins.octoprint.org/update_check_overlay.json
2020-11-30 18:45:33,663 - octoprint.server.util.watchdog - INFO - Running initial scan on watched folder...
2020-11-30 18:45:33,679 - octoprint.plugins.pluginmanager - INFO - Loaded plugin repository data from disk, was still valid
2020-11-30 18:45:33,690 - octoprint.server.util.watchdog - INFO - ... initial scan done.
2020-11-30 18:45:34,296 - octoprint.plugins.tracking - INFO - Sent tracking event system_unthrottled, payload: {'throttled_now': False, 'throttled_past': False, 'throttled_mask': 0, 'throttled_voltage_now': False, 'throttled_voltage_past': False, 'throttled_overheat_now': False, 'throttled_overheat_past': False}
2020-11-30 18:45:34,601 - octoprint.plugins.discovery - INFO - Registered 'OctoPrint instance on raspberrypi64._http._tcp.local.' for _http._tcp.local.
2020-11-30 18:45:34,756 - octoprint.plugins.pluginmanager - INFO - Loaded notice data from disk, was still valid
2020-11-30 18:45:35,386 - octoprint.util.pip - INFO - Using "/home/felix/OctoPrint/venv/bin/python3 -m pip" as command to invoke pip
2020-11-30 18:45:35,388 - octoprint.util.pip - INFO - pip installs to /home/felix/OctoPrint/venv/lib/python3.7/site-packages (writable -> yes), --user flag needed -> no, virtual env -> yes
2020-11-30 18:45:35,388 - octoprint.util.pip - INFO - ==> pip ok -> yes
2020-11-30 18:45:35,429 - octoprint.plugins.discovery - INFO - Registered 'OctoPrint instance on raspberrypi64._octoprint._tcp.local.' for _octoprint._tcp.local.
2020-11-30 18:45:35,444 - octoprint.plugins.softwareupdate - INFO - Saved version cache to disk
2020-11-30 18:45:35,448 - octoprint.plugins.discovery - INFO - Registered OctoPrint instance on raspberrypi64 for SSDP
2020-11-30 18:45:35,458 - octoprint.server - INFO - Listening on http://0.0.0.0:5000 and http://[::]:5000
2020-11-30 18:45:35,624 - octoprint.plugins.pluginmanager - INFO - Loaded plugin repository data from disk, was still valid
2020-11-30 18:45:36,062 - octoprint.server.util.sockjs - INFO - New connection from client: 192.168.1.21
2020-11-30 18:45:36,214 - octoprint.util.pip - INFO - Using "/home/felix/OctoPrint/venv/bin/python3 -m pip" as command to invoke pip
2020-11-30 18:45:36,221 - octoprint.util.pip - INFO - pip installs to /home/felix/OctoPrint/venv/lib/python3.7/site-packages (writable -> yes), --user flag needed -> no, virtual env -> yes
2020-11-30 18:45:36,222 - octoprint.util.pip - INFO - ==> pip ok -> yes
2020-11-30 18:45:36,288 - octoprint.plugins.softwareupdate - INFO - Minimum free storage across all update relevant locations is 48.5GB. That is considered sufficient for updating.
2020-11-30 18:45:36,353 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.21
2020-11-30 18:45:36,353 - octoprint.access.users - INFO - Logged in user: felix
2020-11-30 18:45:36,620 - octoprint.plugins.dashboard - INFO - Dashboard started
2020-11-30 18:45:36,663 - octoprint.plugins.uicustomizer - INFO - UI Customizer is initialized.
2020-11-30 18:45:37,038 - octoprint.plugins.pluginmanager - INFO - Loaded notice data from disk, was still valid
2020-11-30 18:45:37,052 - octoprint.server.preemptive_cache - INFO - Preemptively caching / (ui _default) for {'base_url': 'http://192.168.1.107:5000/', 'path': '/', 'query_string': 'l10n=en'}
2020-11-30 18:45:37,187 - octoprint.plugins.tracking - INFO - Sent tracking event ping, payload: {'octoprint_uptime': 5}
2020-11-30 18:45:37,760 - octoprint.plugins.tracking - INFO - Sent tracking event pong, payload: {'version': '1.5.0', 'os': 'linux', 'bits': 64, 'python': '3.7.3', 'pip': '20.2.4', 'cores': 4, 'freq': 1500.0, 'ram': 8195260416, 'pi_model': 'Raspberry Pi 4 Model B Rev 1.4', 'plugins': 'uicustomizer:0.0.9.5,resource_monitor:0.2.6,dashboard:1.16.3,betterheatertimeout:1.3.0,displaylayerprogress:1.24.0'}
2020-11-30 18:45:38,290 - octoprint.plugins.tracking - INFO - Sent tracking event startup, payload: {'version': '1.5.0', 'os': 'linux', 'bits': 64, 'python': '3.7.3', 'pip': '20.2.4', 'cores': 4, 'freq': 1500.0, 'ram': 8195260416, 'pi_model': 'Raspberry Pi 4 Model B Rev 1.4'}
2020-11-30 18:45:38,441 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.21
2020-11-30 18:45:38,442 - octoprint.access.users - INFO - Logged in user: felix
2020-11-30 18:45:52,315 - octoprint.server.preemptive_cache - INFO - ... done in 15.26s
2020-11-30 18:45:52,616 - octoprint.server.util.sockjs - INFO - User felix logged in on the socket from client 192.168.1.21
2020-11-30 18:45:52,797 - octoprint.server.util.sockjs - INFO - Client connection closed: 192.168.1.21
2020-11-30 18:45:53,525 - octoprint.server.util.sockjs - INFO - New connection from client: 192.168.1.21
2020-11-30 18:45:53,577 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.21
2020-11-30 18:45:53,577 - octoprint.access.users - INFO - Logged in user: felix
2020-11-30 18:45:54,346 - octoprint.server.util.sockjs - INFO - User felix logged in on the socket from client 192.168.1.21
2020-11-30 19:00:31,290 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2020-11-30 19:00:37,145 - octoprint.plugins.tracking - INFO - Sent tracking event ping, payload: {'octoprint_uptime': 905}
2020-11-30 19:03:11,444 - octoprint.server.util.sockjs - INFO - New connection from client: 192.168.1.112
2020-11-30 19:03:11,519 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.112
2020-11-30 19:03:11,520 - octoprint.access.users - INFO - Logged in user: felix
2020-11-30 19:03:12,736 - octoprint.server.util.sockjs - INFO - User felix logged in on the socket from client 192.168.1.112
2020-11-30 19:03:28,263 - octoprint.server.util.sockjs - INFO - Client connection closed: 192.168.1.112
2020-11-30 19:09:29,249 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.21
2020-11-30 19:09:29,251 - octoprint.access.users - INFO - Logged in user: felix
2020-11-30 19:09:39,759 - octoprint.server.util.flask - INFO - Passively logging in user felix from 192.168.1.21

Sounds like you missed the optional step of installing MJPG-Streamer. I made the same mistake.

Setting up OctoPrint on a Raspberry Pi running Raspbian or Raspberry Pi OS

After visiting the setup link scroll down until you reach the Optional: Webcam step and follow the instructions.