The Engineerguy

Auf dem YouTube Cannel engieerguyvideo erklärt Bill Hammack regelmässig die wundersamen Hintergründe hinter von uns alltäglich genutzten Dingen wie Microwellen, dem Quarz in der Quarzuhr oder Glühbirnen.

 

RXTX mismatch

Sollte ich mal wieder mit dem Arduino und Processing rumspielen, oder jemand anderes.
Hier eine kleine Hilfestellung falls Prcessing auf OSX folgendes meldet.

    WARNING:  RXTX Version mismatch
    Jar version = RXTX-2.2pre1
    native lib Version = RXTX-2.2pre2

Habe jetzt zum 2. mal an diesem Problem Stundenlang rum geschraubt.
Schreib mir endlich mal die Lösung auf. (bei Win und UNIX geht es ähnlich)

Warum tritt dieser Fehler überhaupt auf?
RXTX ist soweit ich es verstanden habe der serial Port Driver für Java.
Bei der Entwicklung hat sich seit Mai 2009 aber nichts mehr getan.
Das Problem ist, als die Entwicklung zum stillstand kann, hatte die letze herausgegebene Treberversion rxtx2.2pre2 den Fehler die Jar und die native lib Datei in unterschiedlichen Buildnummern zu beinhalten. Beide Dateien passen nicht wirklich zusammen und führten jedenfalls bei mir zu etlichen abstürzen von Processing Programmen.
War natürlich bekannt und stand im TODO, tat sich nur nichts mehr. Link.

“TODO: The 2.2pre2 bins contain the 2.2pre1 jar file and the 2.2pre2 native lib which causes a mismatch warning.”

Java beinhaltende Distributionen schnappten sich seit dem den neuesten nicht als stable gekennzeichneten und fehlerhaften Treiber.

 

 

 Auf der Spur
Ich copy/paste mal die für mich funktionierende Lösung:
Hier gefunden.

“… dont use the RXTXcomm.jar and librxtxserial.jinlib thats with processing. copy the versions that are in your arduino folder under (contents/resources/java) from arudino -22  they are dated 24th dec and are 2.1-7 – ensure these versions are in the processing folder , the arduino folder you just copied them from  (obviously they will be the right ones) and under macintosh hd/library/java/extensions
rerun and they will match.”

Unter Lion sind es die Ordner: macintosh hd/system/library/java/extensions für beide Dateien,
nachdem man Processing mit Paketinhalt anzeigen geöffnet hat
…/Processing151.app/Contents/Resources/Java/modes/java/libraries/serial/library/macosx/
für die librxtxSerial.jnilib
und
…/Processing151.app/Contents/Resources/Java/modes/java/libraries/serial/library/
für die RXTXcomm.jar

Jetzt läuft es unter 2.1-7, der letzten stabilen Version.