Calin Crisan edited this page Oct 4, 2018 · 44 revisions



Is there a list of supported cameras?

Short answer: no. Long answer: normally all USB cameras that are supported on Linux (have a v4l driver) should work with motionEyeOS. Board-specific cameras (such as the Raspberry PI CSI camera) should also work. If you're on Raspberry PI, all cameras supported by Raspbian are supported by motionEyeOS as well.

Is there a list of supported WiFi adapters?

Short answer: no. Long answer: normally all WiFi adapters that are supported on Linux should work with motionEyeOS. If you're on Raspberry PI, all adapters supported by Raspbian are supported by motionEyeOS as well.

How can I turn off the Raspberry PI's camera LED?

Just open the settings panel and, under the Expert Settings section, turn off the Enable CSI Camera Led option.

Why doesn't the LED option work?

The LED option only works for Raspberry PI boards equipped with first generation official/genuine CSI camera modules.

How can I run motionEyeOS without a network connection?

Just edit /data/etc/os.conf and set the os_networkless variable to true. Your system will skip any network-dependent services at startup.

Can motionEyeOS be ported to [insert-your-board-here]?

I don't buy boards just to port motionEyeOS on them. If you really want me to try to port motionEyeOS to your favorite board, feel free to send me one and I'll do my best to make motionEyeOS run on it. Also please note that I won't return it to you, given that once motionEyeOS is available for that platform, I'll use it to test new builds.

Options & Configuration

What are the default web UI credentials?

Use admin with no password.

What's the deal with Snapshot URL, Streaming URL and Embed URL?

Snapshot URL serves a single JPEG file when requested. The served JPEG image is always the most recently captured frame. You can use this URL as the src attribute of an <img> HTML tag but keep in mind that it won't update automatically. You shouldn't use this unless you know what you are doing.

Streaming URL provides MJPEG streaming. It can be used as a source for other applications that deal with video streams and know how to handle MJPEGs, or it can be used as the src attribute of an <img> HTML tag.

Note: Internet Explorer doesn't support MJPEG streams at all; Chrome plays them nicely if they are part of a web page but won't display anything if the streaming URL is entered directly in the address bar.

Embed URL provides a complete standalone HTML document (i.e. web page) that can be opened in most modern browsers and that will refresh automatically. Think of it as the camera frame part of the UI without any surrounding elements. You can use this to embed the stream into another web page, using an <iframe> HTML tag.

How can I enable authentication for the MJPEG stream?

In the Video Streaming section of the settings panel, you'll find a combo allowing you to choose an authentication mode. Use either Basic or Digest, depending on your application. The credentials are those configured for the surveillance user.

What should I do to have pictures attached to motion notification emails?

Just enable still images and set Capture Mode to Motion Triggered. Also make sure to configure Attached Pictures Time Span to a reasonable amount of seconds (5 to 30).

On slower systems you may see the following line showing up in logs:

[sendmail] ERROR: timeout waiting for the media listing process to finish

If you see this message, clean up your media folder by removing older files; the media listing process will then have to deal with fewer files and will hopefully do its job in time. You can get this message even on a class 10 micro SDHC card with 48MB/Sec transfer rate.

Alternatively, you can edit your motioneye.conf and increase the list_media_timeout_email setting to a larger value (e.g. 30 seconds).

Why does system keep rebooting, in a loop?

See System Continuously Rebooting.

How can I recover/reset the admin password?

Unfortunately there's no easy way to recover or reset your admin password. You'll need a computer running Linux and capable of mounting your ext4 partition from the SD card. Identify the data partition (normally the largest one) and look for the file /etc/motion.conf (on a live system it's /data/etc/motion.conf). Just clear out the value at the end of the line starting with # @admin_password.

How can I make motionEyeOS save more than one picture in a second

The default file name pattern used when creating pictures is %Y-%m-%d/%H-%M-%S. This pattern generates the same file name for all pictures created within a second. If you want all the pictures that are generated within a second, just modify the pattern so that it contains %q, which is the frame number inside each second (e.g. %Y-%m-%d/%H-%M-%S-%q).

I get an error when trying to add my network camera. Is it supported?

Most network cameras available on the market can stream over MJPEG or RTSP. Both of these technologies are supported by motion (and in turn, by motionEye(OS)). Most users get an error when adding their netcams because they're supplying an URL that's not actually the streaming URL, but rather some URL that points to their netcam's web frontend, which is an HTML page.

Unless your netcam has a well-written manual, your best bet is to Google for your camera model streaming URL. It often helps to look up your camera model on and try the URLs indicated there.

Software Updates

How can I update my motionEyeOS setup to the latest version?

If you're lucky and you have motionEyeOS installed on one of the boards with automatic update support, you'll find a Check button next to the Software Update settings item, in the settings panel.

The updating process is always started by you and is never done automatically. It will first check for new stable versions and, following your confirmation, it will download and apply the update.

Where's my Check button for automatic updates?

Currently, automatic updates are available only for the Raspberry PI and Raspberry PI 2 boards. If you don't see that button, you probably run motionEyeOS on another board.

Will the automatic update preserve my settings?

Yes, the automatic update process will preserve all of your settings and media files that are saved on the SD card.

I have started the update process several minutes ago and it still hasn't finished. What should I do?

The update process may take a considerable amount of time, being influenced by factors like your network connection's speed, the performance of your SD card, as well as the CPU speed. Expect it to be ready within 5 minutes, but don't interrupt it before a half an our.

If after 30 minutes it still hasn't finished, chances are that something went wrong. You can either login and access the shell to inspect the /var/log/motioneye.log file to see what went wrong, or you can install the new version manually.

The automatic update is not available for me or it failed to apply. What are my options?

If you don't care about your previous settings and media files saved on the SD card, you can proceed with installing the new version from scratch. If you want to preserve your settings (and media files), you'll need to make a backup of your SD card's data partition (you'll probably need Linux for that), and restore it later, after you have manually installed the new version.

You can create a backup of your settings, so that you can restore them later if you're forced to write the OS image from scratch.

I noticed a new version has been released. Why does my motionEyeOS say it's up-to-date?

Either the new version is marked as pre-release (i.e. it still needs some testing before going stable) or the new version is simply not available for your board. If you really want to upgrade to a pre-release, just turn Enable Prereleases on in Expert Settings.

Command Line & Shell Access

How can I log in on SSH/TTY console?

motionEyeOS listens on the standard port 22, if you want to use SSH. Use root or admin as username (admin is just an alias for root) and the password that you set for the administrator in the web UI. By default (when the administrator's password is empty), you won't be prompted for a password.

I can't seem to find apt-get or any other package manager. What gives?

motionEyeOS is not a general-purpose Linux distribution. You can't install packages like you do with a normal distro. If you need to further customize your setup, installing motionEye on a common distro is recommended.

Why doesn't sudo work?

motionEyeOS is not a general-purpose Linux distribution. If you want to run a command with sudo, you probably found it online and most likely it won't work on motionEyeOS. Moreover, sudo helps you run commands as root; if you have successfully logged in to a motionEyeOS shell, you already are root.

Why do I get Read-only file system when trying to edit a file?

Both the boot and the root partitions are mounted read-only to prevent filesystem corruption. If you want to make changes to a file on any of these two partitions, re-mount them as writable:

mount -o remount,rw /
mount -o remount,rw /boot


Orange Pi: why isn't the official camera module recognized?

The driver for the official camera module is present only in the old (legacy) 3.4 kernel. motionEyeOS uses the new 4.x kernel for which nobody has yet managed to port this driver. Reasons why we do not use the legacy kernel include:

  • it's an old kernel version that is no longer supported
  • there are many compatibility issues with newer libraries, compilers and various software components
  • there is no single recommended Orange Pi kernel source tree, making it hard to choose one


I am getting only white-on-black text on my monitor. Where is my UI?

motionEyeOS will never display anything beautiful on your monitor - it is meant to only be used from a web browser. The ugly text that appears on the monitor is actually useful when debugging. Most users should ignore it and access the IP address of their motionEyeOS board from the browser.

What ports do I have to open in my firewall?

motionEyeOS uses port 80 for its web user interface and this is enough for most users. You may however want to open the following ports as well:

  • 808x for directly accessing the MJPEG stream of the camera number x (e.g. 8081 for your first/only camera)
  • 22 for SSH/putty access
  • 21 for FTP access

Please keep in mind that it is not recommended to enable port forwarding from a public IP address to your motionEyeOS machine directly on these ports. Instead you should use some other ports (e.g. 8888 for the web user interface) and forward it internally to the actual port(e.g. 80). The reason is that port 80, as well as port 22, are subject to various attacks which, even if they fail, may slow down your motionEyeOS machine.

Unable to see motionEyeOS in Windows Explorer under Network

If the two computers don't have the same workgroup, one might not see the other listed as expected. Try to access motioneye by using this IP address.


This is nothing to do with Motioneye and is a basics of windows network troubleshooting. If it still does not work try google how to make your computers visible on windows network.

I want to report a bug or a feature request. How should I proceed about it?

See Reporting An Issue.

How do I overlay output from a command (e.g. CPU temp) on the live image?

It is possible to add a custom overlay text on the live image view (not saved images or movies). There is a description on how this can be done on Motion's project page Note that you will need to ssh into the motionEyeOS box thus need to have some Linux skills.

Can I install <some package>?

No, you cannot. motionEyeOS is not a general purpose Linux distribution, but rather a camera firmware. Moreover, its system partition is read-only and should not be modified.

Your best option is to use motionEye on top of a general purpose Linux distro, on which you'll probably be able to install your favorite packages.

If you really want your package to be part of motionEyeOS and you have the required skills, you could build motionEyeOS from source, after adding your package to the BuildRoot configuration.

Can I access motionEyeOS from the Internet?

Yes, but you'll need to:

  • make sure you have a public (routable) IP address given by your ISP
  • configure your router so that it forwards a (preferably random) TCP port to port 80 of your motionEyeOS's internal IP address
  • set up a dynamic DNS service, if your public IP address is not fixed

However these steps have nothing to do with motionEyeOS and apply to any other service that runs locally, on your private network.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.