mattjlewis / diozero

Java Device I/O library that is portable across Single Board Computers and microcontrollers. Tested with Raspberry Pi, Odroid C2, BeagleBone Black, Next Thing CHIP, Asus Tinker Board and Arduinos / Pico. Supports GPIO, I2C, SPI as well as Serial communication. Also known to work with Udoo Quad.
https://www.diozero.com
MIT License
261 stars 59 forks source link

WS281x on raspberry PI 4 hardware revision. #46

Closed e-fadil closed 3 years ago

e-fadil commented 5 years ago

Hi, I'm trying to use the WS281x library on raspberry pi 4 but get the error below, works fine on rasberry pi 3.

JDK Server VM warning: You have loaded library /tmp/libws281xj10313733273385733761.so which might have disabled stack guard. The VM will try to fix the stack guard now. It's highly recommended that you fix the library with 'execstack -c ', or link it with '-z noexecstack'. Error loading library from classpath, trying from system library path Loaded library 'ws281xj' from system library path ws2811_init failed: Hardware revision is not supported Exception in thread "main" java.lang.RuntimeException: Error initialising the WS281x strip at com.diozero.ws281xj.WS281x.(WS281x.java:165) at com.diozero.ws281xj.WS281x.(WS281x.java:132)

A fatal error has been detected by the Java Runtime Environment:

SIGSEGV (0xb) at pc=0x9351e664, pid=1036, tid=1058

JRE version: OpenJDK Runtime Environment (11.0.3+7) (build 11.0.3+7-post-Raspbian-5) Java VM: OpenJDK Server VM (11.0.3+7-post-Raspbian-5, mixed mode, g1 gc, linux-) Problematic frame: C [libws281xj.so+0x2664] ws2811_fini+0xc

No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again

An error report file with more information is saved as: /home/pi/Desktop/hs_err_pid1036.log

If you would like to submit a bug report, please visit: Unknown The crash happened outside the Java Virtual Machine in native code. See problematic frame for where to report the bug.

mattjlewis commented 5 years ago

I now have a Raspberry Pi 4 so will take a look. Should simply be a recompile of the library.

mattjlewis commented 4 years ago

This should now work with the latest snapshot build. Please let me know so that I can close the issue.

e-fadil commented 4 years ago

Great. The latest snapshot build uploaded still seems to 0.12-SNAPSHOT3 .. is it somewhere else?

mattjlewis commented 4 years ago

It should be available in the sonatype snapshot repositories. I've also uploaded it here: https://drive.google.com/open?id=1RjUc4_ko6vhjSKHYhV4zuyAhjY3_yFv7

This page gives instructions on setting up your development environment, including instructions on using the diozero snapshot builds.

e-fadil commented 4 years ago

Thanks!. that works.

Tortoc commented 4 years ago

Got that issue today with an Raspberry Pi 4 rev. 1.2 on version 0.12-SNAPSHOT. Executing the test in jgarff-folder works.

Is there a newer version for rev. 1.2 support?

mattjlewis commented 4 years ago

I’ve checked in a new build into GitHub. I’ll publish a new snapshot build soon.

Regards, Matt

On 11 Apr 2020, at 12:00, Tortoc notifications@github.com wrote:

 Got that issue today with an Raspberry Pi 4 rev. 1.2 on version 0.12-SNAPSHOT. Executing the test in jgarff-folder works.

Is there a newer version for rev. 1.2 support?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

mattjlewis commented 3 years ago

Should now be fixed.