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
Structured Logging for Python

structlog makes logging in Python faster, less painful, and more powerful by adding structure to your log entries. It's up to you whether you want str

Hynek Schlawack 2.3k Jan 05, 2023
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
Keylogger with Python which logs words into server terminal.

word_logger Experimental keylogger with Python which logs words into server terminal.

Selçuk 1 Nov 15, 2021
The easy way to send notifications

See changelog for recent changes Got an app or service and you want to enable your users to use notifications with their provider of choice? Working o

Or Carmi 2.4k Dec 25, 2022
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
Small toolkit for python multiprocessing logging to file

Small Toolkit for Python Multiprocessing Logging This is a small toolkit for solving unsafe python mutliprocess logging (file logging and rotation) In

Qishuai 1 Nov 10, 2021
A new kind of Progress Bar, with real time throughput, eta and very cool animations!

alive-progress :) A new kind of Progress Bar, with real-time throughput, eta and very cool animations! Ever found yourself in a remote ssh session, do

Rogério Sampaio de Almeida 4k Dec 30, 2022
Outlog it's a library to make logging a simple task

outlog Outlog it's a library to make logging a simple task!. I'm a lazy python user, the times that i do logging on my apps it's hard to do, a lot of

ZSendokame 2 Mar 05, 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
Ransomware leak site monitoring

RansomWatch RansomWatch is a ransomware leak site monitoring tool. It will scrape all of the entries on various ransomware leak sites, store the data

Zander Work 278 Dec 31, 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
APT-Hunter is Threat Hunting tool for windows event logs

APT-Hunter is Threat Hunting tool for windows event logs which made by purple team mindset to provide detect APT movements hidden in the sea of windows event logs to decrease the time to uncover susp

824 Jan 08, 2023
Lazy Profiler is a simple utility to collect CPU, GPU, RAM and GPU Memory stats while the program is running.

lazyprofiler Lazy Profiler is a simple utility to collect CPU, GPU, RAM and GPU Memory stats while the program is running. Installation Use the packag

Shankar Rao Pandala 28 Dec 09, 2022
Python logging package for easy reproducible experimenting in research

smilelogging Python logging package for easy reproducible experimenting in research. Why you may need this package This project is meant to provide an

Huan Wang 20 Dec 23, 2022
Display tabular data in a visually appealing ASCII table format

PrettyTable Installation Install via pip: python -m pip install -U prettytable Install latest development version: python -m pip install -U git+https

Jazzband 924 Jan 05, 2023
Monitoring plugin to check disk io with Icinga, Nagios and other compatible monitoring solutions

check_disk_io - Monitor disk io This is a monitoring plugin for Icinga, Nagios and other compatible monitoring solutions to check the disk io. It uses

DinoTools 3 Nov 15, 2022
Key Logger - Key Logger using Python

Key_Logger Key Logger using Python This is the basic Keylogger that i have made

Mudit Sinha 2 Jan 15, 2022
Colored terminal output for Python's logging module

coloredlogs: Colored terminal output for Python's logging module The coloredlogs package enables colored terminal output for Python's logging module.

Peter Odding 496 Dec 30, 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
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