Skip to content

System Configuration

Page: [Gear Icon] -> Configure

The settings menu, accessed by selecting the gear icon in the top-right, then the Configure link, is a general area for various system-wide configuration options.

General Settings~

Page: [Gear Icon] -> Configure -> General

Setting Description
Language Set the language that will be displayed in the web user interface.
Force HTTPS Require web browsers to use SSL/HTTPS. Any request to http:// will be redirected to https://.
Hide success alerts Hide all success alert boxes that appear at the top of the page.
Hide info alerts Hide all info alert boxes that appear at the top of the page.
Hide warning alerts Hide all warning alert boxes that appear at the top of the page.
Opt-out of statistics Turn off sending anonymous usage statistics. Please consider that this helps the development to leave on.
Check for Updates Automatically check for updates every 2 days and notify through the web interface. If there is a new update, the Configure (Gear Icon) as well as the Upgrade menu will turn the color red.

Energy Usage Settings~

Page: [Gear Icon] -> Configure -> General

In order to calculate accurate energy usage statistics, a few characteristics of your electrical system needs to be know. These variables should describe the characteristics of the electrical system being used by the relays to operate electrical devices.

Note

If not using a current sensor, proper energy usage calculations will rely on the correct current draw to be set for each output (see Output Settings).

Setting Description
Max Amps Set the maximum allowed amperage to be switched on at any given time. If a output that's instructed to turn on will cause the sum of active devices to exceed this amount, the output will not be allowed to turn on, to prevent any damage that may result from exceeding current limits.
Voltage Alternating current (AC) voltage that is switched by the outputs. This is usually 120 or 240.
Cost per kWh This is how much you pay per kWh.
Currency Unit This is the unit used for the currency that pays for electricity.
Day of Month This is the day of the month (1-30) that the electricity meter is read (which will correspond to the electrical bill).
Generate Usage/Cost Report These options define when an Energy Usage Report will be generated. Currently, these Only support the Output Duration calculation method.

Input Settings~

Page: [Gear Icon] -> Configure -> Custom Inputs

Input modules may be imported and used within Mycodo. These modules must follow a specific format. See Custom Inputs for more details.

Setting Description
Import Input Module Select your input module file, then click this button to begin the import.

Output Settings~

Page: [Gear Icon] -> Configure -> Custom Outputs

Output modules may be imported and used within Mycodo. These modules must follow a specific format. See Custom Outputs for more details.

Setting Description
Import Output Module Select your output module file, then click this button to begin the import.

Function Settings~

Page: [Gear Icon] -> Configure -> Custom Functions

Function modules may be imported and used within Mycodo. These modules must follow a specific format. See Custom Functions for more details.

Setting Description
Import Function Module Select your function module file, then click this button to begin the import.

Action Settings~

Page: [Gear Icon] -> Configure -> Custom Actions

Action modules may be imported and used within Mycodo. These modules must follow a specific format. See Custom Actions for more details.

Setting Description
Import Action Module Select your action module file, then click this button to begin the import.

Widget Settings~

Page: [Gear Icon] -> Configure -> Custom Widgets

Widget modules may be imported and used within Mycodo. These modules must follow a specific format. See Custom Widgets for more details.

Setting Description
Import Widget Module Select your widget module file, then click this button to begin the import.

Measurement Settings~

Page: [Gear Icon] -> Configure -> Measurements

New measurements, units, and conversions can be created that can extend functionality of Mycodo beyond the built-in types and equations. Be sure to create units before measurements, as units need to be selected when creating a measurement. A measurement can be created that already exists, allowing additional units to be added to a pre-existing measurement. For example, the measurement 'altitude' already exists, however if you wanted to add the unit 'fathom', first create the unit 'fathom', then create the measurement 'altitude' with the 'fathom' unit selected. It is okay to create a custom measurement for a measurement that already exist (this is how new units for a currently-installed measurement is added).

Setting Description
Measurement ID ID for the measurement to use in the measurements_dict of input modules (e.g. "length", "width", "speed").
Measurement Name Common name for the measurement (e.g. "Length", "Weight", "Speed").
Measurement Units Select all the units that are associated with the measurement.
Unit ID ID for the unit to use in the measurements_dict of input modules (e.g. "K", "g", "m").
Unit Name Common name for the unit (e.g. "Kilogram", "Meter").
Unit Abbreviation Abbreviation for the unit (e.g. "kg", "m").
Convert From Unit The unit that will be converted from.
Convert To Unit The unit that will be converted to.
Equation The equation used to convert one unit to another. The lowercase letter "x" must be included in the equation (e.g. "x/1000+20", "250*(x/3)"). This "x" will be replaced with the actual measurement being converted.

Users~

Page: [Gear Icon] -> Configure -> Users

Mycodo requires at least one Admin user for the login system to be enabled. If there isn't an Admin user, the web server will redirect to an Admin Creation Form. This is the first page you see when starting Mycodo for the first time. After an Admin user has been created, additional users may be created from the User Settings page.

Setting Description
Username Choose a user name that is between 2 and 64 characters. The user name is case insensitive (all user names are converted to lower-case).
Email The email associated with the new account.
Password/Repeat Choose a password that is between 6 and 64 characters and only contains letters, numbers, and symbols.
Keypad Code Set an optional numeric code that is at least 4 digits for logging in using a keypad.
Role Roles are a way of imposing access restrictions on users, to either allow or deny actions. See the table below for explanations of the four default Roles.
Theme The web user interface theme to apply, including colors, themes, and other design elements.

Roles~

Roles define the permissions of each user. There are 4 default roles that determine if a user can view or edit particular areas of Mycodo. Four roles are provided by default, but custom roles may be created.

Role Admin Editor Monitor Guest
Edit Users X
Edit Controllers X X
Edit Settings X X
View Settings X X X
View Camera X X X
View Stats X X X
View Logs X X X

The Edit Controllers permission protects the editing of Conditionals, Graphs, LCDs, Methods, PIDs, Outputs, and Inputs.

The View Stats permission protects the viewing of usage statistics and the System Information and Energy Usage pages.

Pi Settings~

Page: [Gear Icon] -> Configure -> Raspberry Pi

Pi settings configure parts of the linux system that Mycodo runs on.

pigpiod is required if you wish to use PWM Outputs, as well as PWM, RPM, DHT22, DHT11, HTU21D Inputs.

Setting Description
Enable/Disable Feature These are system interfaces that can be enabled and disabled from the web UI via the raspi-config command.
pigpiod Sample Rate This is the sample rate the pigpiod service will operate at. The lower number enables faster PWM frequencies, but may significantly increase processor load on the Pi Zeros. pigpiod may als be disabled completely if it's not required (see note, above).

Alert Settings~

Page: [Gear Icon] -> Configure -> Alerts

Alert settings set up the credentials for sending email notifications.

Setting Description
SMTP Host The SMTP server to use to send emails from.
SMTP Port Port to communicate with the SMTP server (465 for SSL, 587 for TSL).
Enable SSL Check to enable SSL, uncheck to enable TSL.
SMTP User The user name to send the email from. This can be just a name or the entire email address.
SMTP Password The password for the user.
From Email What the from email address be set as. This should be the actual email address for this user.
Max emails (per hour) Set the maximum number of emails that can be sent per hour. If more notifications are triggered within the hour and this number has been reached, the notifications will be discarded.
Send Test Email Test the email configuration by sending a test email.

Camera Settings~

Page: [Gear Icon] -> Configure -> Camera

Many cameras can be used simultaneously with Mycodo. Each camera needs to be set up in the camera settings, then may be used throughout the software.

Note

Not every option (such as Hue or White Balance) may be able to be used with your particular camera, due to manufacturer differences in hardware and software.

Setting Description
Type Select whether the camera is a Raspberry Pi Camera or a USB camera.
Library Select which library to use to communicate with the camera. The Raspberry Pi Camera uses picamera, and USB cameras should be set to fswebcam.
Device The device to use to connect to the camera. fswebcam is the only library that uses this option.
Output This output will turn on during the capture of any still image (which includes timelapses).
Output Duration Turn output on for this duration of time before the image is captured.
Rotate Image The number of degrees to rotate the image.
... Image Width, Image Height, Brightness, Contrast, Exposure, Gain, Hue, Saturation, White Balance. These options are self-explanatory. Not all options will work with all cameras.
Pre Command A command to execute (as user 'root') before a still image is captured.
Post Command A command to execute (as user 'root') after a still image is captured.
Flip horizontally Flip, or mirror, the image horizontally.
Flip vertically Flip, or mirror, the image vertically.

Diagnostic Settings~

Page: [Gear Icon] -> Configure -> Diagnostics

Sometimes issues arise in the system as a result of incompatible configurations, either the result of a misconfigured part of the system (Input, Output, etc.) or an update that didn't properly handle a database upgrade, or other unforeseen issue. Sometimes it is necessary to perform diagnostic actions that can determine the cause of the issue or fix the issue itself. The options below are meant to alleviate issues, such as a misconfigured dashboard element causing an error on the Data -> Dashboard page, which may cause an inability to access the Data -> Dashboard page to correct the issue. Deleting all Dashboard Elements may be the most economical method to enable access to the Data -> Dashboard page again, at the cost of having to readd all the Dashboard Elements that were once there.

Setting Description
Delete All Dashboard Elements Delete all saved Dashboard Elements from the Dashboard.
Delete All Notes and Note Tags Delete all notes and note tags.
Back to top