Latest release: V3.0.3 (2025-09-23, seeRelease Notes).
This project is intended to providea friendly object-oriented I/O API and implementation libraries for Java Programmers to access thefull I/O capabilities of the Raspberry Pi platform. This project abstracts the low-level native integration and interrupt monitoring to enable Java programmers tofocus on implementing their application business logic.
If you immediately want to “dive” into Pi4J development, check these resources:
The Pi4J Project was started in2012, the same year the Raspberry Pi was introducedas a tool to provide Java developers a simple and familiar object-oriented interface libraryto access the low-level I/O capabilities of the Raspberry Pi includingGPIO,I2C,SPI,PWM andSerial communications.
The Pi4j project has evolved in all these years as the whole Java eco-system and Raspberry Pi systems have been evolving. This resulted in the following main versions:
The Pi4J Project’s mission is to provide arich and powerful, yet simple to use,Java-friendly API library enabling programmatic access to the low-level hardware I/Ocapabilities of embedded platforms such as the Raspberry Pi.