2

Right now I am working on a project that requires sending ascii commands via serial to control a machine (i.e, turning a machine on off, change speed, etc.). The whole thing will be controlled with a touch screen GUI interface.

The problem I am running to is the amount of time it takes to load a jar, which is ~15 seconds on a model B+. This time was measured with a test jar that contains only two buttons, nothing else.

Seeing as JDK8 for ARM no longer supports JavaFX, I am searching for alternatives. As I see it, here are my options:

  1. Create a frankenstein JDK, combining JDK8 for ARM and OpenJFX.
  2. Switch to Swing (not sure how much this would help, if at all).
  3. Learn another language such as Python (which I have no problem with).

What can I do do achieve a quicker launch? How much of a difference would it make if I switched to the Model 2B?

Keep in mind, the only things I need on the Pi are be the ability to run the app itself with touchscreen support, the ability to send serial, and ssh.

iamjoshlee
  • 23
  • 3

2 Answers2

1

Option 1, using Oracle JDK8 for ARM and add OpenJFX into, it is possible. I haven't tried it myself, but an Oracle-Member presented this as a valid solution on a Presentation about JavaFX in general. I would go with this option.

You could use an older release from Oracle JDK. JavaFX support was removed on JDK 8u33 so all releases prior to this still support JavaFX, but you don't have any security updates any longer.

Switching to a Model 2B Raspberry Pi should improve the start up time (no guaranty) because the JVM can be executed in parallel on 4 cores.

Use a different language? Always a valid Option if you really want to spent the time for this but personally I would not do it.

Simulant
  • 651
  • 1
  • 9
  • 22
0

Boot To QT C++

Windows 10 Iot Core using C#

Switch to Rasp 3 which has 64 Bit instruction set