Jump to content

Apcupsd doesn't work on Odroid XU4


matteobp

Recommended Posts

Hi.
I have a Odroid XU4 with Ubuntu Bionic latest release (5.60), powered with this UPS: APC SmartUPS 750 VA.
Apcupsd doesn't work. The problem seems related to the missing /dev/usb/hiddev0.

 

After searching on Google, I found that apcupsd requires this feature enabled in the kernel.
CONFIG_USB_HIDDEV=Y

 

I build my own kernel enabling it, but no change.
Here the output of the command

# dmesg | grep Smart

[    4.125553] usb 1-1.2: Product: Smart-UPS 750 FW:651.13.I USB FW:7.3
[    4.205622] hid-generic 0003:051D:0002.0001: hidraw0: USB HID v1.10 Device [American Power Conversion Smart-UPS 750 FW:651

On the Rock64 board it works without problem.

Here the output of the command

# dmesg | grep Smart

[    2.175796] usb 3-1: Product: Smart-UPS 750 FW:651.13.I USB FW:7.3
[    3.719981] hid-generic 0003:051D:0002.0001: hiddev0,hidraw0: USB HID v1.10 Device [American Power Conversion Smart-UPS 750 FW:651.13.I USB FW:7.3] on usb-ff5d0000.usb-1/input0

As you can see, on the Rock64 board there is hiddev0

hid-generic 0003:051D:0002.0001: hiddev0,hidraw0

and /dev/usb/hiddev0 exists.

 

In the Odroid forum, I found only this post about CONFIG_USB_HIDDEV
https://forum.odroid.com/viewtopic.php?f=93&t=28978

 

Thanks in advance.

 

Link to comment
Share on other sites

Bionic and Stretch share kernel. Try to compare working (rock64) with nonworking configuration ... perhaps some other config option is needed or there is a bug in Odroid USB stack. You can also switch between different kernels for XU4 if that helps ...

Wrote on mobile

Link to comment
Share on other sites

46 minutes ago, Igor said:

You can also switch between different kernels for XU4 if that helps

 

Can you help me? How can I do it?

 

On the Rock64 I have the ayufan Stretch image 0.6.44, kernel 4.4.132. I have to search in that kernel configuration.

And I can try the Rock64 Armbian image to check if apcuspd works with it.

 

Thanks

 

Link to comment
Share on other sites

41 minutes ago, matteobp said:

And I can try the Rock64 Armbian image to check if apcuspd works with it. 

 

Yes, it works. So I can use the kernel configuration of the Rock64 board, I think this one

linux-rockchip-next.config

 

But it not simple, too many differences ... :-(

 

Link to comment
Share on other sites

1 minute ago, matteobp said:

But it not simple, too many differences ... :-(


It can be time-consuming, yes. Now you know how my days look like :) 

 

2 minutes ago, matteobp said:

linux-rockchip-next.config


Negative. linux-rockchip64-default.config

Link to comment
Share on other sites

I tried this image, and it works.

https://forum.odroid.com/viewtopic.php?f=95&t=30888

 

[    7.201747] usb 3-1.2.2: Product: Smart-UPS 750 FW:651.13.I USB FW:7.3
[    7.321793] hid-generic 0003:051D:0002.0004: hiddev97,hidraw3: USB HID v1.10 Device [American Power Conversion Smart-UPS 750 FW:651.13.I USB FW:7.3] on usb-xhci-hcd.3.auto-1.2.2/input0

 

All posts I found about hiddev feature are based on old kernel, and refers to CONFIG_USB_DEVICEFS that is deprecated.

 

Can I add a new post under Development section about enabling hiddev node in the kernel, or would it be considered a duplicate post?

 

Thanks.

 

Link to comment
Share on other sites

16 minutes ago, matteobp said:

Can I add a new post under Development section about enabling hiddev node in the kernel, or would it be considered a duplicate post?


No need. It's a general kernel feature.

 

Create a PR for kernel config changes when you figure out what exactly needs to be enabled - I don't know:

https://docs.armbian.com/Process_Contribute/

Link to comment
Share on other sites

Sure, I won't miss it.

 

The problem is that enabling option CONFIG_USB_HIDDEV is not enough, something is still missing.

I wanted to create a specific post in a general section because maybe someone else knows how to do it, but no problem.

 

I'll try to compare the configuration kernel file of the other Ubuntu distribution, which I think is more similar to the Odroid XU4 Armbian configuration file than the Rock64 configuration file.

 

Thanks

 

Link to comment
Share on other sites

After several unsuccessful attempts, I decided to use the kernel configuration file of the "Ubuntu MATE 18.04 LTS" as it is, without any change, because in that distribution apcupsd works and the node /dev/usb/hiddev0 exists.

 

Regretfully, it doesn't work on Armbian :(:(:(

 

So my conclusion is that the problem is not just about the kernel, but there must be something else, and I have no idea what it might be.


So I had to change and move on to the "Ubuntu Minimal 18.04 LTS" with XFCE Desktop Environment, and it works.

https://wiki.odroid.com/odroid-xu4/os_images/linux/ubuntu_4.14/20180531

 

Link to comment
Share on other sites

I can also confirm that I've had this issue for some time.

 

For me, the issue started around the time of the introduction of the 4.x series of kernels, on all distros for the XU4.  When that change occurred, APCUPSD stopped working. 

Link to comment
Share on other sites

@PatrikXThere was a driver missing related to USB, it has since been added/enabled. The latest kernel releases should support it, if not building an kernel package yourself will work, have done this myself and the APC UPS works just fine.

Link to comment
Share on other sites

I have tested it today and it still does not work. I get "Warning communications lost with UPS". It works on Rock64. Both Odroid C2 and Rock64 use latest Armbian Ubuntu 18.04. 
 

It looks like something is not quite right with the Odroid C2 image. 

Link to comment
Share on other sites

2 hours ago, PatrikX said:

It works on Rock64. Both Odroid C2 and Rock64 use latest Armbian Ubuntu 18.04. 


With kernel 4.4.y I suppose?

 

2 hours ago, PatrikX said:

It looks like something is not quite right with the Odroid C2 image. 


Whenever you report a problem, provide armbianmonitor -u ... without its really hard to tell anything.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines