Mycodo

An environmental monitoring and regulation system

GPL-3.0 License

Stars
3K
Committers
59

Bot releases are hidden (Show)

Mycodo - 8.6.0

Published by kizniche about 4 years ago

8.6.0 (2020-07-22)

This update adds a Generic Peristaltic Pump Output to compliment the Atlas Scientific Peristaltic Pump Output. Generic peristaltic pumps are less expensive but often have acceptable dispensing accuracy. Once your pump's flow rate has been measured and this rate set in the Output options, your pump can be used to dispense specific volumes of liquid just like the Atlas Scientific pumps. This release also enables pumps to dispense for durations of time in addition to specific volumes (once calibrated). So, you can now operate a PID controller or other functions/controllers that instruct a pump to dispense for a duration in seconds or a volume in milliliters.

In this update, the Atlas Scientific Peristaltic Pump Output duration units have been changed form minutes to seconds, to align with other Outputs that use the second SI unit.

WARNING: As a result of how this new output operates, a potentially breaking change has been introduced. If you use any custom Output modules, you will need to add the parameter output_type=None to the output_switch() function of all of your custom Output module files. If you do not, the Mycodo daemon/backend will fail to start after upgrading to or beyond this version. It is advised to modify your custom Output modules prior to upgrading to ensure the daemon successfully starts after the upgrade. If you have not created or imported any custom Output modules, there is nothing that needs to be done.

Bugfixes

  • Fix measurement being stored in database after sensor error (#795)
  • Fix UART communication with Atlas Scientific devices (#785)
  • Fix FTDI communication with Atlas Scientific devices
  • Fix PID Dashboard Widget error in log when PID inactive
  • Fix install on Desktop version of Raspberry Pi OS by removing python3-cffi-backend
  • Fix inability to change I2C address of ADS1x15 Input (#788)
  • Fix issues with calibrating Atlas Scientific devices (#789)
  • Fix missing default input custom option values if not set in the database
  • Add missing TSL2561 I2C addresses
  • Fix daemon hang on use of incorrect Atlas Scientific UART device (add writeTimeout to every serial.Serial())
  • Fix uninstall of pigpiod
  • Fix missing pigpio dependency for GPIO PWM Outputs
  • Prevent LCD controllers from activating if Max Age or Decimal Places are unset (#795)

Features

  • Add Inputs: ADXL34x, ADT7410 (#791)
  • Add Output: Generic Peristaltic Pump
  • Add ability to turn peristaltic pumps on for durations (in addition to volumes)
  • Add Function Action: Output (Volume)
  • Improve general compatibility with Atlas Scientific devices
  • Add ability to utilize volume Outputs (pumps) with PID Controllers
  • Add pypi.org links to Input libraries in Input description information
  • Add SPI interface as an option for SD1306 LEDs (#793)

Miscellaneous

  • Change Atlas Scientific Peristaltic Pump Output duration unit from minute to second
  • Move clear total volume function for Atlas Scientific Flow Meter to Input Module
  • Add instruction for viewing the frontend web log on the web 502 error page (#786)
Mycodo - 8.5.8

Published by kizniche over 4 years ago

8.5.8 (2020-07-07)

Bugfixes

  • Fix inability to install pigpio (#783)
Mycodo - 8.5.7

Published by kizniche over 4 years ago

8.5.7 (2020-07-07)

Bugfixes

  • Fix inability to install internal dependencies (pigpio, bcm2835, etc.) (#783)
Mycodo - 8.5.6

Published by kizniche over 4 years ago

8.5.6 (2020-06-30)

Bugfixes

  • Fix API database schema issue
Mycodo - 8.5.5

Published by kizniche over 4 years ago

8.5.5 (2020-06-30)

Bugfixes

  • Prevent user with insufficient permissions from rearranging dashboard widgets
  • Fix installing internal dependencies
  • Fix restore of influxdb measurement data from import/Export page
  • Fix Gauge Widget Measurement options from being selected after saving

Features

  • Create scripts to automatically generate Input section of manual

Miscellaneous

  • Add URLs to Input information
  • Switch from deprecated SSLify to Talisman
  • Update Python dependencies
Mycodo - 8.5.2

Published by kizniche over 4 years ago

8.5.2 (2020-06-01)

Bugfixes

  • Fix Atlas Scientific Pump Output timestamp parsing
Mycodo - 8.5.1

Published by kizniche over 4 years ago

8.5.1 (2020-05-30)

Bugfixes

  • Fix translations
  • Fix dependency check during upgrade
  • Fix Atlas Scientific Pump Output
Mycodo - 8.5.0

Published by kizniche over 4 years ago

8.5.0 (2020-05-30)

With this release comes the ability to write and import custom Outputs. If you want to utilize an output that Mycodo doesn't currently support, you can now create your own Output module and import it to be used within the system. See Custom Outputs in the manual for more information.

WARNING: There are changes with this version that may cause issues with your currently-configured outputs. Therefore, after upgrading, test if your outputs work and update their configuration if needed.

Bugfixes

  • Fix PID Widget preventing graph custom colors from being editable
  • Fix graph Widget custom color issues (#760)
  • Fix PWM Trigger Functions reacting to 0 % duty cycle being set (#761)
  • Fix KeyError if missing options when saving Input
  • Fix ZH03B Input: add repeat measurement option and discard erroneous measurements
  • Fix update check IndexError if there's no internet connection
  • Fix parsing API api_key from requests
  • Fix the inability of Math Controllers to use converted measurements
  • Fix Redundancy Math controller (#768)
  • Fix display of Custom Controller options
  • Fix hostname display on login page
  • Fix missing blank line check for LCDs with 8 lines (#771)
  • Fix unset user groups when executing shell commands
  • Fix guest users being able to create dashboards
  • Fix queries with updated influxdb Python library

Features

  • Add ability to write and import your own Custom Output Modules
  • Add Input: VL53L0X (Laser-Range Measurement) (#769)
  • Add Input: AS7262 Spectral Sensor (measures 450, 500, 550, 570, 600, and 650 nm wavelengths)
  • Add Input: Atlas Scientific EZO Pressure Sensor
  • Add ability to create custom Input actions
  • Add MH-Z19/MH-Z19B Input actions: zero and span point calibrations
  • Add unit conversions: PSI to kPa, PSI to cm H2O, kPa to PSI
  • Add literature links to Input options: Manufacturer, Datasheet, Product
  • Add 'tail dmesg' to System Information page
  • Add Function Actions: System Restart and System Shutdown (#763)
  • Add Conditional options: Log Level Debug and Message Includes Code
  • Add Force Command option for Command/Python/Wireless Outputs (#728)
  • Add ability to select which user executes Linux Output commands (#719)
  • Add Cameras: URL (urllib), URL (requests) (Feature Request - IP Camera/Network Camera)
  • Add ability to encode videos from time-lapse image sets
  • Add send_email() to Daemon Control object

Miscellaneous

  • Upon controller activation, generate Input and Conditional code files if they don't exist
  • Update Werkzeug to 1.0.1 (#742), Flask-RESTX to 0.2.0, alembic to 1.4.2, pyro5 to 5.8, SQLAlchemy to 1.3.15, distro to 1.5.0,
  • Refactor Python Output code
  • Update all translations (all complete)
  • Rename MH-Z19 Input to MH-Z19B (and add MH-Z19 Input)
  • Change Email Notification options to allow unauthenticated sending
  • Add conversions: m <-> cm <-> mm
  • Make PID Controller a class
  • Restyle Output page (#732)
  • Include error response in PWM/On-Off Command Output debug logging line
  • Update InfluxDB to 1.8.0
Mycodo - 8.4.0

Published by kizniche over 4 years ago

8.4.0 (2020-03-23)

Bugfixes

  • Fix invalid links to Help pages
  • Prevent unstoppable Conditional Controller by adding self.running bool variable
  • Fix calculation error causing inaccuracy with ADS1x15 analog-to-digital converter Input
  • Remove PWM and Pump Outputs from Energy Usage calculations
  • Fix links to camera widget error images
  • Fix reference to input library to properly display 1-Wire device IDs (#752)
  • If a camera output is already on when capturing an image, dont' turn it off after capture
  • Discard first measurement of Atlas Scientific Inputs to prevent some erroneous measurements
  • Fix display of setpoint on PID widget if a band is in use (#744)
  • Fix Amp calculation (#758)

Features

  • Add temperature compensation option for the Atlas Scientific Electrical Conductivity and Dissolved Oxygen Inputs
  • Add Inputs: Atlas Scientific Flow Sensor, Atlas Scientific RGB Color Sensor
  • Add Function Action: Clear Total Volume of Flow Meter, Force Input Measurements
  • Add option to repeat measurements and store average for ADS1x15 analog-to-digital converter Input
  • Add PID option Always Min for PWM outputs to always use at least the min duty cycle (#757)

Miscellaneous

  • Add prefix to device IDs when using w1thermsensor (#752)
Mycodo - 8.3.0

Published by kizniche over 4 years ago

8.3.0 (2020-02-21)

Bugfixes

  • Fix determining frontend/backend virtualenv status
  • Fix error detecting GPIO state during energy usage report generation (#745)
  • Fix Atlas Scientific pH Input temperature calibration measurement
  • Fix Atlas Scientific EZO-PMP flow mode not taking effect immediately upon saving
  • Change deprecated w1thermsensor set_precision() to set_resolution()
  • Fix setting DS sensor resolution (#747)
  • Split DS18B20 Input into two files (one using w1thermsensor and another using ow-shell) (#746)
  • Prevent users without "view settings" permission from viewing email addresses
  • Fix TSL2561 input (#750)

Features

  • Add Temperature Offset option for BME680 Input (#735)
  • Add ability to change number of stops for Gauge Widgets (#749)

Miscellaneous

  • Fix logging level of calibration functions
  • Populate setpoint in field of PID dashboard widget (#748)
Mycodo - 8.2.5

Published by kizniche over 4 years ago

8.2.5 (2020-02-09)

Bugfixes

  • Fix daemon not being able to read measurements (#743)
Mycodo - 8.2.4

Published by kizniche over 4 years ago

8.2.4 (2020-02-08)

Bugfixes

  • Fix logs appearing blank after logrotate runs (#734)
  • Update Flask-Babel to 1.0.0 to fix broken werkzeug (#742)
  • Increase install wait times to prevent timeouts (#742)

Features

Miscellaneous

  • Improve sanity-checking of Input custom_options
  • Improve sanity-checking of API endpoints (#741)
  • Update pip requirements
Mycodo - 8.2.3

Published by kizniche over 4 years ago

8.2.3 (2020-01-27)

Bugfixes

  • Fix error during upgrade check if there is no internet connection
  • Fix MQTT input, prevent keepalive from being <= 0 (#733)
  • Fix issue restarting frontend using diagnostic database delete feature
  • Fix ability to import Inputs with measurements/units that don't exist in database (#735)
  • Fix ability to modify measurement/unit names that Inputs rely on
  • Fix inability to modify custom measurements
  • Fix error when deleting dashboards from the Config->Diagnostics menu (#737)
  • Fix dashboard gauges causing the dashboard to crash (#736)

Miscellaneous

  • Refactor upgrade check code into class to reduce the number of hits to github.com
  • Rearrange dashboard dropdown menu
  • Allow creation of measurement/unit IDs with upper-case letters (#735)
Mycodo - 8.2.2

Published by kizniche over 4 years ago

8.2.2 (2020-01-06)

Bugfixes

  • Fix table colors (#724)
  • Fix error when dashboard is set to default landing page (#727)

Features

  • Add options to show/hide various widget info (#717)
  • Add Input: MLX90614 (#723)

Miscellaneous

  • Update Bootstrap to 4.4.1
  • Update Bootstrap themes
Mycodo - 8.2.1

Published by kizniche almost 5 years ago

8.2.1 (2019.12.08)

This update brings the ability to create multiple dashboards. The dashboard grid spacing has also changed, so you will need to resize your widgets.

This update also brings the ability to run Mycodo/Influxdb in Docker containers, enabling Mycodo to run outside the Raspberry Pi and Raspbian environment. For instance, I currently have Mycodo running on my 64-bit PC in Ubuntu 18.04. This is an experimental feature and is not yet recommended to be used in a production environment. See the Docker README for more information.

Features

  • Add ability to run Mycodo in Docker containers (#637)
  • Add ability to create multiple dashboards (#717)
  • Add Dashboard Widget: Spacer (#717)
  • Add ability to hide Widget drag handle, set Widget name font size, and hide Graph Widget buttons (#717)
  • Add ability to set Dashboard grid cell height

Miscellaneous

  • Change grid width from 12 to 20 columns
  • Update InfluxDB from 1.7.8 to 1.7.9
Mycodo - 8.1.1

Published by kizniche almost 5 years ago

8.1.1 (2019.11.26)

Bugfixes

  • Fix outputs not turning on
Mycodo - 8.1.0

Published by kizniche almost 5 years ago

8.1.0 (2019.11.26)

This update brings a new Dashboard organization method, allowing drag-and drop placement and resizing of widgets using gridstack.js. This new system is not comparable to the old; and after upgrading, all widgets will lose their size and position and will need to be repositioned on your dashboard.

Bugfixes

  • Fix Atlas Scientific UART interfaces
  • Fix display of units in conversion list on Measurement Settings page
  • Fix unit conversions for Math controllers (#716)
  • Fix Wet-Bulb Humidity calculation in Math controller (#716)
  • Fix disabled measurements not appearing for math controllers (#716)
  • Fix disabled measurements from Math controllers still being recorded in influxdb
  • Fix inability to select PID Controller with PID Control Widget (#718)
  • Fix displaying image in Camera Widgets
  • Fix display of measurement unit on Gauge Widgets

Features

  • Implement new method for arranging and sizing Dashboard Widgets (#717)
  • Add API endpoints: /measurements/historical and /measurements/historical_function
  • Add ability to set timestamp with /measurements/create API endpoint
  • Display the entire log for the ongoing upgrade rather than only the last 40 lines
  • Add Calibration: Atlas Scientific Electrical Conductivity Sensor (#710)
  • Add Input: Mycodo Version (mainly for testing)
  • Allow timestamp to be specified for Python 3 Code Input measurement creation (#716)

Miscellaneous

  • Update Bootstrap to 4.3.1
  • Update FontAwesome to 5.11.2
Mycodo - 8.0.3

Published by kizniche almost 5 years ago

8.0.3 (2019.11.15)

Bugfixes

  • Fix timeout errors during settings/influxdb database import
  • Fix python3 version check during install (#714)
  • Fix upgrade checking
Mycodo - 8.0.2

Published by kizniche almost 5 years ago

8.0.2 (2019.11.13)

Bugfixes

  • Fix doubling the amount used to calculate Amp draw during an output being turned on
Mycodo - 8.0.1

Published by kizniche almost 5 years ago

8.0.1 (2019.11.11)

Bugfixes

  • Add Python version check to Mycodo installer (#712)
  • Daemon now checks for any newer version during upgrade check

Features

  • Allow any database version <= the currently-installed Mycodo version to be imported
Package Rankings
Top 6.64% on Proxy.golang.org