RPI3A+, LiFePO4wered, and OSMC

I’m running a Raspberry Pi 3A+ with an UPS called LiFePO4wered PI+ and am having problems booting into OSMC when the UPS is installed. The OSMC flash screen appears, and then turns to black with the Pi’s green “ACT” LED flashing 10 times signifying a HALT state. The UPS uses the UART and I2C-1 to operate. The pertinent Kodi log file is the “Kodi Old Log”, see Paste-Log below.

Without the UPS, OSMC boots fine. The “Kodi Log” is an example of this boot and what I used to package this into Paste-Log: “https://paste.osmc.tv/ebulaxawid”.

The UPS and Pi hardware are healthy as I installed Raspberry Pi OS 32-bit (9/22/2022) and built the lifepo4wered-cli without issue. I was able to communicate to the UPS with the “lifepo4wered-cli get” command and get reasonable feedback.

I suspect I am missing some software configuration that makes this UPS operate with OSMC. Thank you in advance for any insight you can provide.

Best regards,
Charles

Have you tried installing this package on the OSMC system to see if it changes the behaviour?

Yes, I’ve built the same LiFePO4wered package on OSMC and the only errors I get are related to raspi-config command line that isn’t available in this OSMC distribution.

The “sudo make user-install” command outlined in “GitHub - xorbit/LiFePO4wered-Pi: Access library, command line tool and daemon for the LiFePO4wered/Pi module” issues these commands that returned errors:
raspi-config nonint do_i2c 0
raspi-config nonint do_serial 0

They normally activate the I2C-1 and UART ports. So I’ve pieced together similar routines from the command line. For instance, I’ve added “dtparam=i2c_arm=on” and “enable_uart=1” to the config-user.txt.

Issuing “ls -l /dev/i2c-1” provides:
crw-rw-rw- 1 root i2c 89, 1 Jan 4 17:37 /dev/i2c-1
…and “ls -l /dev/serial*” gives:
lrwxrwxrwx 1 root root 5 Jan 4 17:37 /dev/serial0 → ttyS0
lrwxrwxrwx 1 root root 7 Jan 4 17:37 /dev/serial1 → ttyAMA0
…and “ls -l /dev/ttyS0” gives:
crw-rw---- 1 root dialout 4, 64 Jan 4 17:37 /dev/ttyS0
…and lastly “ls -l /dev/ttyAMA0” gives:
crw-rw---- 1 root dialout 204, 64 Jan 4 17:37 /dev/ttyAMA0

I updated permissions to the osmc user adding groups i2c and dialout.

I thought I covered all the configurations that the raspi-config would have done, but I’m likely missing something. Does anything stand out as wrong to you?

Best regards,
Charles

Hard to tell but we don’t use rpi-config; so you’ll need to edit /boot/config-user.txt manually.

I’d suggest contacting the manufacturer as I am sure they can advise. Unfortunately I don’t have such hardware to test with.

Unfortunately OSMC is not a platform that is natively supported. With that said, here is a response I received from the LiFePOwered developer:

“In principle the software should run on just about any Linux, the only external dependency is systemd and even that can be turned off. Usually if there are issues, it’s due to a lack of development environment to compile the code, or sometimes permissions issues.”

Does the log file I provided provide you with any insight into why the Pi is halting (10 green LED flashes) during bootup?

Best regards,
Charles

No.

I’m sure that if they’re interested they can boot OSMC on a spare SD card on a Raspberry Pi…