UPS Ippon Back Power Pro II 500

Hello! I have UPS from subj (Ippon Back Power Pro II 500) that is in list of compatible devices of NUT project… (Network UPS Tools - Hardware compatibility list)
But there is no such device in version 2.8.0 of NUT, that integrated in TrueNAS Scale… So - is there any right way to use this device, update drivers or something?

connect the ups to your truenas box and from shell run

nut-scanner -U

this will show you which driver your ups expects. Then just choose any matching driver from the list. doesnt matter if the driver in the list is from eaton or someone else.

Did it ofcource… there is nothing in response.
Though in response of “dmesg | grep -i usb” i see:
[18413.848316] usb 3-3: new full-speed USB device number 5 using xhci_hcd
[18413.998525] usb 3-3: New USB device found, idVendor=0483, idProduct=a430, bcdDevice= 2.00
[18413.998545] usb 3-3: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[18413.998551] usb 3-3: Product: Back Power Pro II 500
[18413.998556] usb 3-3: Manufacturer: UPS Manufacturer
[18413.998560] usb 3-3: SerialNumber: 00000000000000000000
[18414.008202] hid-generic 0003:0483:A430.0004: hiddev0,hidraw0: USB HID v1.11 Device [UPS Manufacturer Back Power Pro II 500] on usb-0000:00:14.0-3/input0

I asked in forum of NUT and answer was that it is bcoz of idVendor=0483, idProduct=a430… `drivers/cps-hid.c` et al: add support for Cyber Energy branded devices (by Cyber Power Systems) by jimklimov · Pull Request #2312 · networkupstools/nut · GitHub (NUT v2.8.2 or newer) should solve it. Maybe 2.8.1 also can solve it, but im not sure…

I believe truenas still uses 2.8.0 and will propably only update it to a newer version in october of this year.

Thank you anyways! Maybe someone will offer me solution… i tried to use vendorid = 0483
productid = a430
parameters to ups.conf file, but donno if i do it correctly… Or maybe i should set any other parameters explicitly, like port or something else for make it work.
Or somebody have same UPS and setted up it…

Truenas doesn’t support editing those files manually.

If you didn’t already try this, I suggest you add

ups.productid: a430
ups.vendorid: 0483

into the UPS configuration field “Auxiliary Parameters (ups.conf)” at System>Services>UPS to attempt to match the internal parameter format of NUT at least.

Good luck.

Yeah, i know. I tried to do it through Auxiliary Parameters, but didnt know true format…

Thank you, i’ll try. Was trying just type there
vendorid = 0483
productid = a430

edit: i’ve tried it with no luck… syslog said me:

Mar 28 01:09:44 servicehub systemd[1]: nut-driver@ups.service: Scheduled restart job, restart counter is at 66.
Mar 28 01:09:44 servicehub systemd[1]: Stopped nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'.
Mar 28 01:09:44 servicehub systemd[1]: Starting nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'...
Mar 28 01:09:45 servicehub nut-driver@ups[55139]: Network UPS Tools - Generic HID driver 0.47 (2.8.0)
Mar 28 01:09:45 servicehub nut-driver@ups[55139]: USB communication driver (libusb 1.0) 0.43
Mar 28 01:09:45 servicehub nut-driver@ups[55139]: libusb1: Could not open any HID devices: insufficient permissions on everything
Mar 28 01:09:45 servicehub nut-driver@ups[55139]: No matching HID UPS found
Mar 28 01:09:45 servicehub nut-driver@ups[55138]: Driver failed to start (exit status=1)
Mar 28 01:09:45 servicehub nut-driver@ups[55138]: Network UPS Tools - UPS driver controller 2.8.0
Mar 28 01:09:45 servicehub systemd[1]: nut-driver@ups.service: Control process exited, code=exited, status=1/FAILURE
Mar 28 01:09:45 servicehub systemd[1]: nut-driver@ups.service: Failed with result 'exit-code'.
Mar 28 01:09:45 servicehub systemd[1]: Failed to start nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'.
Mar 28 01:09:46 servicehub nut-monitor[11701]: Poll UPS [ups@localhost:3493] failed - Driver not connected

Ok. I think i have found a solution. It is here: https://hub.docker.com/r/instantlinux/nut-upsd

I started this docker-container and there is version 2.8.2 there. Then i’ve set up NUT service in TrueNAS in slave-mode. It works and i have answer when typing

upsc ups@localhost:

Init SSL without certificate database
battery.charge: 100
battery.charge.low: 10
battery.charge.warning: 20
battery.mfr.date: UPS Manufacturer 
battery.runtime: 1260
battery.runtime.low: 300
battery.type: PbAcid
battery.voltage: 13.5
battery.voltage.nominal: 12
device.mfr: UPS Manufacturer 
device.model:   Back Power Pro II 500
device.serial: 00000000000000000000
device.type: ups
driver.debug: 0
driver.flag.allow_killpower: 0
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.serial: 00000000000000000000
driver.parameter.synchronous: auto
driver.state: quiet
driver.version: 2.8.2
driver.version.data: CyberPower HID 0.80
driver.version.internal: 0.53
driver.version.usb: libusb-1.0.27 (API: 0x100010a)
input.frequency: 49.6
input.transfer.high: 290
input.transfer.low: 162
input.voltage: 221.0
input.voltage.nominal: 0
output.frequency: 49.7
output.voltage: 219.0
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.delay.start: 30
ups.load: 15
ups.mfr: UPS Manufacturer 
ups.model:   Back Power Pro II 500
ups.productid: a430
ups.realpower.nominal: 300
ups.serial: 00000000000000000000
ups.status: OL
ups.test.result: No test initiated
ups.timer.shutdown: -60
ups.timer.start: -60
ups.vendorid: 0483

i think now i will set-up proper shutdown. Will test it later, but i think its ok now!)

but in syslog i repeatedly see:

Apr  3 00:00:24 servicehub systemd[1]: nut-driver@ups.service: Scheduled restart job, restart counter is at 189.
Apr  3 00:00:24 servicehub systemd[1]: Stopped nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'.
Apr  3 00:00:24 servicehub systemd[1]: Starting nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'...
Apr  3 00:00:24 servicehub nut-driver@ups[307171]: FATAL: The '/etc/nut/ups.conf' file does not exist or is not readable
Apr  3 00:00:24 servicehub nut-driver@ups[307170]: FATAL: Could not find a NUT device section for service unit ups
Apr  3 00:00:24 servicehub systemd[1]: nut-driver@ups.service: Control process exited, code=exited, status=1/FAILURE
Apr  3 00:00:24 servicehub systemd[1]: nut-driver@ups.service: Failed with result 'exit-code'.
Apr  3 00:00:24 servicehub systemd[1]: Failed to start nut-driver@ups.service - Network UPS Tools - device driver for NUT device 'ups'.

If you have any advice i’m open)

You could just run NUT 2.8.2 (you’ll probably need to build it yourself, from source) on a Raspberry Pi - everyone has one in a drawer, right? - then connect TrueNAS to the UPS as a Slave (via the RPi, which is the Master)…

But then you’ll need the reporting/anti-spam hack to fix the problems that come with the Slave configurations - I’ve posted links to the Jira solution elsewhere on this forum.

Unfortunately NUT in Fangtooth 25.0.4.0 is still 2.8.0 (as 2.8.2 was only released a couple of weeks ago).

1 Like

Thank you for reply. I have ran NUT 2.8.2 in a docker container in privileged mode to access to USB port. As a master, and connected TrueNAS to that container as a slave) And thank you, i’ve used ur solution with conf file, that u published in Jira.)