Last Updated on 4. October 2026 by SuffocationLink status: OK
Da ich am liebsten in Java programmiere, verwende ich die Bibliothek Pi4J zur Ansteuerung der GPIOs am Raspberry Pi 2 und 3.
I will not go into detail about the library's installation, as this has already been exhaustively described on the following websites.
http://pi4j.com/install.htmlhttp://pi4j.com/utility/pi4j.htmlhttp://www.forum-raspberrypi.de/Thread-tutorial-ansteuerung-der-gpio-ports-mit-pi4jLink status: Broken
It is also important to know that Pi4J is built on the wiringPI library, and that it must naturally be installed as well.
As a development environment, I use BlueJ because you get a class diagram with it straight away.
There's also plenty of documentation, so why this post?
Ich möchte nach und nach eine kleine FaQ erstellen mit den Problemen, die ich während der Nutzung dieser beiden Tools hatte, habe und haben werde.
The ports are doing nothing
In der alten Version vom BlueJ scheint in den Einstellungen das Flag zur Ausführung als Root nicht richtig initialisiert zu sein. Nach dem Start von BlueJ einfach das Flag entfernen und wieder rein machen, dann geht’s. Dieses Problem scheint in der aktuellen Version behoben zu sein.

Sollte es dann immer noch nicht klappen, einfach mal die IOs auf der Console testen. Hilfe gibts hereLink status: Broken or hereLink status: OK.
Soweit ich weiß, muss man zur Ansteuerung der GPIOs root (od. sudo) Rechte besitzen. Der Benutzer pi ist entsprechend gut ausgestattet und eignet sich am besten für erste Tests. (Man soll sich ja nicht mehr als root anmelden ;( ).
Nothing's working after the upgrade
I updated my Raspberry Pi to the latest version. This also updated the kernel to version 4.9.32. After that, the GPIOs stopped working. Downgrading the kernel to version 4.4.50 has temporarily solved the problem. Is there any help available for this? hereLink status: Unknown and hereLink status: OK.
Software PWM for servo
Für ca. 180° stehen beim Software PWM leider nur 20 Stellungen/Schritte für den Servo zur Verfügung, was ca. 9° pro Schritt entspricht.
Weiterhin gibt es durch andere Funktionen im Betriebssystem oft Gewackel am Servo (jitter). Man sollte ihn so programmieren, dass die entsprechende Stellung angefahren wird und dann den PWM wieder ausschalten.
Eine bessere Möglichkeit ist natürlich, einen Hardware PWM zu verwenden, wenn man noch einen frei hat ;).
Andere Bibliotheken, die besser funktionieren sollen, habe ich noch nicht getestet, hier eine kleine Auflistung, diese müssten dann gegebenenfalls mit dem Java Native Interface angesteuert werden:
- ServoBlasterLink status: OK
- RPIOLink status: OK
- …
Further information on PWM [1]Link status: OK [2]Link status: OK [3]Link status: OK
Weitere Probleme werden sicherlich folgen ….
Related Posts
| Date | Change | Author |
|---|---|---|
| 04.10.2026 | Rechtschreibung korrigiert: Tippfehler, Kommas, Groß-/Kleinschreibung | Suffocation |
| 03.10.2026 | Log-Liste eingefügt | Suffocation |
| 16.06.2017 | Post created | Suffocation |