Integrates a UPS monitored by NUT into OctoPrint

Related tags

LoggingOctoPrint-UPS
Overview

OctoPrint UPS

This OctoPrint plugin interfaces with a UPS monitored by NUT (Network UPS Tools).

Requirements

  • NUT must be configured by the user. This plugin does not alter NUT configuration whatsoever.
  • A UPS that provides battery.charge in percentage.

Screenshots

UPS

Setup

Install the plugin using Plugin Manager from Settings

Support

Help can be found at the OctoPrint Community Forums

Comments
  • UPS plugin stops updating after a while.

    UPS plugin stops updating after a while.

    What were you doing?

    1. Install UPS plugin
    2. Point to already configured NUT entry for local UPS
    3. Plugin correctly shows UPS status
    4. Print with OctoPrint
    5. At some point the UPS plugin will stop updating and show stale data
    6. Check with "upsc" on the command line that the UPS is still connected and sending data.
    7. Sometimes (not always) opening the UPS plugin settings and saving makes the connection come back.

    UPS is an APC BackUPS 1500M

    What did you expect to happen?

    Plugin would still update

    What happened instead?

    Version of OctoPrint

    1.6.1

    Version of OctoPrint-UPS

    0.0.1

    Operating System running OctoPrint

    Debian Bullseye 11.0 on amd64 - Python 3.9

    Printer model & used firmware incl. version

    Custom, running Marlin bugfix-2.0.x

    Link to octoprint.log with octoprnt.plugins.ups set to DEBUG

    octoprint.zip

    triage awaiting information 
    opened by ManuelMcLure 7
  • Sudden Loss of Comms GUI Interface

    Sudden Loss of Comms GUI Interface

    Hiya!

    Recently came back to my Octoprint instance on my FFCP and noted I was having issues issuing commands. After a reboot, the Octoprint service wouldn't even start. While looking into the issue, I found my SD card completely full. Turned out it was log related and Daemon.log had been some 400+ mb. I deleted it and restarted. Everything back to normal!

    Well, I thought so. Before the reboot, I was well aware of the top bar (including the UPS plugin icon). I could still see the data coming back as normal. Once I rebooted, the icon is blank with the status OFFLINE.

    I confirmed NUT was acting normally using PuTTY. The data was available. But the plugin couldn't see it. I still see the configured UPS on the plugin menu drop down, so it isn't like it lost that configuration.

    While checking for and update, I noticed the plugin requires Python 3+. I am still running 1.7.3, which I think operates on Python 2.7 something. I know for a fact it was working prior to the reboot I described. Am I missing something?

    opened by InoSiX 6
  • [REQUEST] Adapt status pop-up to dark mode

    [REQUEST] Adapt status pop-up to dark mode

    Hi, very nice plugin for the OctoPrint.

    Thanks

    I only noticed that it is very difficult to read the status popup in Darktmode:

    image

    Could this still be adjusted?

    Thanks a lot FreundderNacht

    opened by FreunderNacht 3
  • [REQUEST] USB Connection to UPS instead of only LAN

    [REQUEST] USB Connection to UPS instead of only LAN

    Hey !

    I am using a Eaton 5S 700, which is connected to via the USB port on it. Your NUT config however does seem to only be through LAN, meaning i cannot connect to the UPS in any way. Is it possible to add a option to use a USB port for the connection, besides the built-in network ? NUT should be fully capable of doing this if i remember correctly.

    Thanks !

    Tom

    invalid 
    opened by TomKamin1 1
  • Less whitespace in popover

    Less whitespace in popover

    What does this PR do and why is it necessary?

    Not really necessary, but it does reduce the amount of whitespace in the popover and makes it IMHO more attractive.

    How was it tested? How can it be tested by the reviewer?

    Tested by running in Chrome and seeing the new appearance

    Screeshots

    Without this fix: image

    With this fix image

    opened by ManuelMcLure 1
  • Add missing open tr tags.

    Add missing open tr tags.

    What does this PR do and why is it necessary?

    Adds missing open <tr> tags to the generated table.

    How was it tested? How can it be tested by the reviewer?

    Ensured that the popover still looks correct with the new tags in place.

    Any background context you want to provide?

    This was not causing any visible issues (at least on Chrome) but could cause problems in the future

    What are the relevant tickets if any?

    None - this was from code review

    opened by ManuelMcLure 1
  • config['ups'] gets set to 'null'

    config['ups'] gets set to 'null'

    Not sure where or why this happens yet but...

    022-03-17 20:44:26,381 - octoprint.plugins.ups - ERROR - An exception occurred while getting vars info Traceback (most recent call last): File "/home/pi/.octoprint/plugins/ups/init.py", line 132, in _loop vars = self.ups.list_vars(ups=self.config['ups']) File "/home/pi/oprint/lib/python3.7/site-packages/nut2.py", line 157, in list_vars self._srv_handler.write(b"LIST VAR %s\n" % ups.encode('utf-8')) AttributeError: 'NoneType' object has no attribute 'encode'

    config yaml shows ups is 'null'. Opening settings. selecting the ups again, and saving works around for a short while until it happens again.

    bug solved 
    opened by kantlivelong 8
  • Feature request: pause at the end of the layer

    Feature request: pause at the end of the layer

    I would like to add a request that the "pause when UPS battery gets below X%" option include another option that the pause only occurs after the current layer is completed. If my UPS drops to 50%, I'm okay if it takes another 10% to finish the layer.

    opened by timur-tabi 1
  • [REQUEST] Interacting with telegram plugin to notify the user

    [REQUEST] Interacting with telegram plugin to notify the user

    Hi,

    what about making use of

    M118 E1 UserNotif UPS on battery and M118 E1 UserNotif UPS online

    to make Telegram notifying the user when UPS switches to/from battery?

    Thank you for this really nice plugin! Armando

    opened by MasterPIC 2
  • [REQUEST] Add Basic Commands Buttons & Optional Add'l Info

    [REQUEST] Add Basic Commands Buttons & Optional Add'l Info

    Being new to NUT, I see there is a hole slew of commands available. I'm intrigued and want to investigate further. I would also love to be able to select from different parameters to add to the drop down.

    Overall this is one of my new favorite plugins. Thanks for the contribution.

    opened by InoSiX 7
  • Thanks! Also Guide Request!

    Thanks! Also Guide Request!

    Hiya!

    Want to start off by saying thanks for the upload. I have this running now and it appears to be working. I was thinking about the USB plug on the back of my UPS I am using for my 3D printer and wondering if anyone had something to integrate the two. Not sure if you read my mind, but nice job regardless.

    That being said, there obviously isn't much here on how to get NUT going. I personally have never heard of it before reading it on your plugin description. Also, Linux is as powerful as it is convoluted.

    When looking at the plugin config page, I though the device must be connected via Ethernet. Perhaps this is just a me thing, but it may be worth being explicit here. I'm not sure it can be set up via Ethernet (I'm new, but can't imagine that it CANT be done).

    I Googled Raspberry pi NUT and stumbled across this guide:

    https://community.openhab.org/t/beginners-guide-to-network-ups-tools-nut-on-a-raspberry-pi/78443

    Which in turns also references:

    https://melgrubb.com/2016/12/11/rphs-v2-ups/

    It went OK. I did ultimately get it running. But these guides could use a little work. That being said, it would be great to have a guide here linked on the GITHUB (perhaps one that is better than these).

    Anyways, thanks again for the upload. It appears to be working!

    documentation help wanted 
    opened by InoSiX 1
Releases(0.0.1)
Owner
Shawn Bruce
Shawn Bruce
Log4j alternative for Python

Log4p Log4p is the most secure logging library ever created in this and all other universes. Usage: import log4p log4p.log('"Wow, this library is sec

Isaak Uchakaev 15 Dec 16, 2022
Robust and effective logging for Python 2 and 3.

Robust and effective logging for Python 2 and 3.

Chris Hager 1k Jan 04, 2023
A simple, transparent, open-source key logger, written in Python, for tracking your own key-usage statistics.

A simple, transparent, open-source key logger, written in Python, for tracking your own key-usage statistics, originally intended for keyboard layout optimization.

Ga68 56 Jan 03, 2023
Track Nano accounts and notify via log file or email

nano-address-notifier Track accounts and notify via log file or email Required python libs

Joohansson (Json) 4 Nov 08, 2021
Debugging-friendly exceptions for Python

Better tracebacks This is a more helpful version of Python's built-in exception message: It shows more code context and the current values of nearby v

Clemens Korndörfer 1.2k Dec 28, 2022
Vibrating-perimeter - Simple helper mod that logs how fast you are mining together with a simple buttplug.io script to control a vibrator

Vibrating Perimeter This project consists of a small minecraft helper mod that writes too a log file and a script that reads said log. Currently it on

Heart[BOT] 0 Nov 20, 2022
Summarize LSF job properties by parsing log files.

Summarize LSF job properties by parsing log files of workflows executed by Snakemake.

Kim 4 Jan 09, 2022
Command-line tool that instantly fetches Stack Overflow results when an exception is thrown

rebound Rebound is a command-line tool that instantly fetches Stack Overflow results when an exception is thrown. Just use the rebound command to exec

Jonathan Shobrook 3.9k Jan 03, 2023
Multi-processing capable print-like logger for Python

MPLogger Multi-processing capable print-like logger for Python Requirements and Installation Python 3.8+ is required Pip pip install mplogger Manual P

Eötvös Loránd University Department of Digital Humanities 1 Jan 28, 2022
Python script to scan log files/system for unauthorized access around system

checkLogs Python script to scan log files/system for unauthorized access around Linux systems Table of contents General info Getting started Usage Gen

James Kelly 1 Feb 25, 2022
蓝鲸日志平台(BK-LOG)是为解决分布式架构下日志收集、查询困难的一款日志产品,基于业界主流的全文检索引擎

蓝鲸日志平台(BK-LOG)是为解决分布式架构下日志收集、查询困难的一款日志产品,基于业界主流的全文检索引擎,通过蓝鲸智云的专属 Agent 进行日志采集,提供多种场景化的采集、查询功能。

腾讯蓝鲸 102 Dec 22, 2022
A cool logging replacement for Python.

Welcome to Logbook Travis AppVeyor Supported Versions Latest Version Test Coverage Logbook is a nice logging replacement. It should be easy to setup,

1.4k Nov 11, 2022
Scout: an open-source version of the monitoring tool

Badger Scout Scout is an open-source version of the monitoring tool used by Badg

Badger Finance 2 Jan 13, 2022
Log processor for nginx or apache that extracts user and user sessions and calculates other types of useful data for bot detection or traffic analysis

Log processor for nginx or apache that extracts user and user sessions and calculates other types of useful data for bot detection or traffic analysis

David Puerta Martín 1 Nov 11, 2021
GTK and Python based, system performance and usage monitoring tool

System Monitoring Center GTK3 and Python 3 based, system performance and usage monitoring tool. Features: Detailed system performance and usage usage

Hakan Dündar 649 Jan 03, 2023
dash-manufacture-spc-dashboard is a dashboard for monitoring read-time process quality along manufacture production line

In our solution based on plotly, dash and influxdb, the user will firstly generate the specifications for different robots, and then a wide range of interactive visualizations for different machines

Dequn Teng 1 Feb 13, 2022
changedetection.io - The best and simplest self-hosted website change detection monitoring service

changedetection.io - The best and simplest self-hosted website change detection monitoring service. An alternative to Visualping, Watchtower etc. Designed for simplicity - the main goal is to simply

7.3k Jan 01, 2023
Python bindings for g3log

g3logPython Python bindings for g3log This library provides python3 bindings for g3log + g3sinks (currently logrotate, syslog, and a color-terminal ou

4 May 21, 2021
A colored formatter for the python logging module

Log formatting with colors! colorlog.ColoredFormatter is a formatter for use with Python's logging module that outputs records using terminal colors.

Sam Clements 778 Dec 26, 2022
Docker container log aggregation with Elasticsearch, Kibana & Filebeat

Epilog Dead simple container log aggregation with ELK stack Preface Epilog aims to demonstrate a language-agnostic, non-invasive, and straightfo

Redowan Delowar 23 Oct 26, 2022