Hey all I have been looking at doing this for some time now. I ran across this posting and this is the type of led strip I am using. However, using that code seems to have errors when trying to add it to my java swing application.
The code I am using:
I have referenced:private void testLEDs() { LedStrip ledStrip; int pixels1 = 10; pi4j = Pi4J.newAutoContext(); System.out.println("LED strip app started ..."); // Initialize the RGB ledStrip = new LedStrip(pi4j, pixels1, 0.5); //set them all off, so nothing is shining System.out.println("Starting with setting all leds off"); ledStrip.allOff(); System.out.println("setting the LEDs to RED"); ledStrip.setStripColor(LedStrip.PixelColor.RED); ledStrip.render(); try { TimeUnit.SECONDS.sleep(3); } catch(InterruptedException e1) { e1.printStackTrace(); } System.out.println("setting the LEDs to Light Blue"); ledStrip.setStripColor(LedStrip.PixelColor.LIGHT_BLUE); ledStrip.render(); try { TimeUnit.SECONDS.sleep(3); } catch(InterruptedException e1) { e1.printStackTrace(); } System.out.println("setting the first led to Purple"); ledStrip.setPixelColor(0, LedStrip.PixelColor.PURPLE); ledStrip.render(); try { TimeUnit.SECONDS.sleep(3); } catch(InterruptedException e1) { e1.printStackTrace(); } System.out.println("setting the brightness to full and just show the first led as White"); ledStrip.allOff(); ledStrip.setBrightness(1); ledStrip.setPixelColor(0, LedStrip.PixelColor.WHITE); ledStrip.render(); try { TimeUnit.SECONDS.sleep(3); } catch(InterruptedException e1) { e1.printStackTrace(); } //finishing and closing ledStrip.close(); System.out.println("closing the app"); System.out.println("Color " + ledStrip.getPixelColor(0)); System.out.println("LED strip app done."); }
pi4j-plugin-mock-2.1.1.jar
pi4j-core-2.1.1.jar
slf4j-api.jar
slf4j-simple.jar
and my classes are:
LedStrip.java
ledStripTest.java
And when I run the jar I get this:
pi@raspberrypi:~/Desktop $ sudo java -jar -Dsun.java2d.xrender=false "led3.jar" [AWT-EventQueue-0] INFO com.pi4j.Pi4J - New auto context [AWT-EventQueue-0] INFO com.pi4j.Pi4J - New context builder [AWT-EventQueue-0] INFO com.pi4j.platform.impl.DefaultRuntimePlatforms - adding platform to managed platform map [id=mock-platform; name=Mock Platform; priority=-1000; class=com.pi4j.plugin.mock.platform.MockPlatform] LED strip app started ... [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: OPEN(CHANNEL=0; BAUD=6400000) [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Starting with setting all leds off [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) setting the LEDs to RED [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) setting the LEDs to Light Blue [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 F8 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) setting the first led to Purple [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 C0 C0 C0 C0 C0 C0 C0 C0 F8 C0 C0 C0 C0 C0 C0 C0 F8 C0 C0 C0 C0 C0 C0 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 C0 C0 F8 F8 C0 F8 F8 C0 C0 C0 F8 C0 F8 C0 F8 F8 C0 C0 F8 F8 F8 C0 C0 F8 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) setting the brightness to full and just show the first led as White [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - [ [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - Mock SPI Provider [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - :: [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - SPI1 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ] :: WRITE(0x [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - 00 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 00 [AWT-EventQueue-0] INFO com.pi4j.plugin.mock.provider.spi.MockSpi - ) closing the app Color 0 LED strip app done.
But the LED strip never lights up? What am I missing?