# Processing on raspberry 3 without display

**URL:** <https://discourse.processing.org/t/processing-on-raspberry-3-without-display/17979>\
**Category:** Processing for Pi\
**Created:** [February 21, 2020, 5:02pm UTC](https://discourse.processing.org/t/processing-on-raspberry-3-without-display/17979 "2020-02-21T17:02:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![faebser](https://avatars.discourse-cdn.com/v4/letter/f/f19dbf/32.png) [@faebser](https://discourse.processing.org/u/faebser)\
**Post date:** [February 21, 2020, 5:02pm UTC](https://discourse.processing.org/t/processing-on-raspberry-3-without-display/17979/1 "2020-02-21T17:02:40Z")

</div>

Hi everybody,

## Status

I have slighlty winded question but it boils down to that I have a Java app that uses some of parts of processing to draw some text and output that via SPI to some LED-matrices on the MAX7219. I am running **Xfvb** because there is no display attached to the board.

The app pulls in it’s dependencies via a gradle.build:

```auto
dependencies {
    compile group: 'com.pi4j', name: 'pi4j-core', version: '1.2'
    compile 'com.google.apis:google-api-services-analytics:v3-rev136-1.22.0'
    compile 'com.google.oauth-client:google-oauth-client-jetty:1.22.0'
    compile 'com.google.code.gson:gson:2.8.5'
    compile group: 'com.google.oauth-client', name: 'google-oauth-client-jetty', version: '1.11.0-beta'
    compile 'com.google.http-client:google-http-client-gson:1.19.0'
    compile group: 'org.processing', name: 'core', version: '3.3.7'
    compile 'com.google.apis:google-api-services-analyticsreporting:v4-rev139-1.25.0'
    compile group: 'org.ejml', name: 'ejml-all', version: '0.38'
    // https://mvnrepository.com/artifact/io.prometheus/simpleclient
    // compile group: 'io.prometheus', name: 'simpleclient', version: '0.8.0'
    // https://mvnrepository.com/artifact/io.prometheus/simpleclient_httpserver
    // compile group: 'io.prometheus', name: 'simpleclient_httpserver', version: '0.8.0'
    testCompile "org.spockframework:spock-core:1.1-groovy-2.4-rc-2"
    testCompile "cglib:cglib:2.2"
    implementation 'com.github.mgunlogson:cuckoofilter4j:1.0.1'
}

```

Naturally on my development machine this works without a hitch but on the raspberry pi both the **P2D** and the **P3D** renderer are not working, which I attributed to the virtual framebuffer.

## Today

I realised that the performance (≈ 15 fps) is not exactly enough and I spent some time to get the GPU based renderers to work. Cue to me finding out about the special processing version that supports the weird GPU drivers of the raspi.

## Question(s)

- So my question is now, how do I use the custom version of processing together with the gradle setup that I have?
- Do I need to use the java binary that is included or can I use the installed java-8?
- Is it enough if I just add the jars from the custom version to my classpath or is there something else that I need to observe?

Thank you very much 🙂

---

<div class="post-metadata">

**Author:** ![faebser](https://avatars.discourse-cdn.com/v4/letter/f/f19dbf/32.png) [@faebser](https://discourse.processing.org/u/faebser)\
**Post date:** [March 2, 2020, 7:51pm UTC](https://discourse.processing.org/t/processing-on-raspberry-3-without-display/17979/2 "2020-03-02T19:51:15Z")

</div>

In the end I downloaded the tar from the processing website, added a **libs/** folder in the top level of my project and copied the all jars from **processing-3.5.3/core/library** in it.

I also added the following lines to my gradle.build:

```auto
    flatDir {
        dirs 'libs'
    }
    mavenCentral()
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
   ...
}

```
