GUI for ganglion hangs at Starting Session [resolved]
I´m using the Ganglion board with the openBCI GUI on a Windows PC. The software gets stuck and hangs when trying to start the session. It says ´Starting Session´ but never actually starts. I tried some things:
Happens on Windows 10 and 11, both with and without running as admin.
Happens with two different bluetooth receivers, and on two different ganglion boards. All of those do actually function properly on different windows PCs.
Happens with both the GUI application standalone as well as through the processing app.
Tried reinstalling several times, no luck unfortunately.
Would you have any idea what it could be or what I could try?
Thanks!!
Comments
Processing throws a NullPointerException error...
OpenBCI_GUI: Channel count set to 4
[DEFAULT]: Refreshing available Ganglions using BLED112 Dongle...
ControlPanel: Found BLED112 Dongle on COM port: COM4
OpenBCI_GUI_Helpers Version: 2.0.1
bleList: click!
[DEFAULT]: Ganglion Device Name = Ganglion-a1d0
[DEFAULT]: Attempting to Start Session...
initButtonPressed: Calling initSystem() after next draw()
OpenBCI_GUI: Start session. Calling initSystem().
=================================================
|| INITIALIZING SYSTEM ||
MAC address for Ganglion is c8:11:b7:6b:4b:09
[DEFAULT]: Detected Ganglion firmware version 2
Sending config string to board: n
OpenBCI_GUI: Channel count set to 4
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_arm.dll
java.lang.NullPointerException
at java.base/java.util.Objects.requireNonNull(Objects.java:209)
at java.base/java.nio.file.Files.copy(Files.java:3128)
at brainflow.JarHelper.unpack_from_jar(JarHelper.java:31)
at brainflow.MLModel.(MLModel.java:46)
at OpenBCI_GUI$W_Focus.initBrainFlowMetric(OpenBCI_GUI.java:24883)
at OpenBCI_GUI$W_Focus.(OpenBCI_GUI.java:24670)
at OpenBCI_GUI.setupWidgets(OpenBCI_GUI.java:31734)
at OpenBCI_GUI$WidgetManager.(OpenBCI_GUI.java:31824)
at OpenBCI_GUI.initSystem(OpenBCI_GUI.java:849)
at OpenBCI_GUI.systemInitSession(OpenBCI_GUI.java:1117)
at OpenBCI_GUI.draw(OpenBCI_GUI.java:654)
at processing.core.PApplet.handleDraw(PApplet.java:2094)
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:840)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:782)
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81)
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:453)
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178)
at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
at java.base/java.util.TimerThread.run(Timer.java:516)
file: onnxruntime_arm.dll is not found in jar file
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_arm64.dll
java.lang.NullPointerException
at java.base/java.util.Objects.requireNonNull(Objects.java:209)
at java.base/java.nio.file.Files.copy(Files.java:3128)
at brainflow.JarHelper.unpack_from_jar(JarHelper.java:31)
at brainflow.MLModel.(MLModel.java:47)
at OpenBCI_GUI$W_Focus.initBrainFlowMetric(OpenBCI_GUI.java:24883)
at OpenBCI_GUI$W_Focus.(OpenBCI_GUI.java:24670)
at OpenBCI_GUI.setupWidgets(OpenBCI_GUI.java:31734)
at OpenBCI_GUI$WidgetManager.(OpenBCI_GUI.java:31824)
at OpenBCI_GUI.initSystem(OpenBCI_GUI.java:849)
at OpenBCI_GUI.systemInitSession(OpenBCI_GUI.java:1117)
at OpenBCI_GUI.draw(OpenBCI_GUI.java:654)
at processing.core.PApplet.handleDraw(PApplet.java:2094)
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:840)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:782)
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81)
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:453)
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178)
at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
at java.base/java.util.TimerThread.run(Timer.java:516)
file: onnxruntime_arm64.dll is not found in jar file
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_x64.dll
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_x86.dll
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\MLModule.dll
[SUCCESS]: Marker Widget: Listening for markers on 127.0.0.1:12350
InitSettings: Saving Default Settings to file!
SessionSettings: 4 active widgets saved!
[SUCCESS]: Session started!
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\DataHandler.dll
NullPointerException
NullPointerException
And the standalone version console log says:
=================================================
|| INITIALIZING SYSTEM ||
MAC address for Ganglion is c8:11:b7:6b:4b:09
[DEFAULT]: Detected Ganglion firmware version 2
Sending config string to board: n
OpenBCI_GUI: Channel count set to 4
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_arm.dll
java.lang.NullPointerException
at java.base/java.util.Objects.requireNonNull(Objects.java:208)
at java.base/java.nio.file.Files.copy(Files.java:3128)
at brainflow.JarHelper.unpack_from_jar(JarHelper.java:31)
at brainflow.MLModel.(MLModel.java:46)
at OpenBCI_GUI$W_Focus.initBrainFlowMetric(OpenBCI_GUI.java:24885)
at OpenBCI_GUI$W_Focus.(OpenBCI_GUI.java:24672)
at OpenBCI_GUI.setupWidgets(OpenBCI_GUI.java:31736)
at OpenBCI_GUI$WidgetManager.(OpenBCI_GUI.java:31826)
at OpenBCI_GUI.initSystem(OpenBCI_GUI.java:849)
at OpenBCI_GUI.systemInitSession(OpenBCI_GUI.java:1117)
at OpenBCI_GUI.draw(OpenBCI_GUI.java:654)
at processing.core.PApplet.handleDraw(PApplet.java:2094)
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:840)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:782)
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81)
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:453)
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178)
at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
at java.base/java.util.TimerThread.run(Timer.java:516)
file: onnxruntime_arm.dll is not found in jar file
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_arm64.dll
java.lang.NullPointerException
at java.base/java.util.Objects.requireNonNull(Objects.java:208)
at java.base/java.nio.file.Files.copy(Files.java:3128)
at brainflow.JarHelper.unpack_from_jar(JarHelper.java:31)
at brainflow.MLModel.(MLModel.java:47)
at OpenBCI_GUI$W_Focus.initBrainFlowMetric(OpenBCI_GUI.java:24885)
at OpenBCI_GUI$W_Focus.(OpenBCI_GUI.java:24672)
at OpenBCI_GUI.setupWidgets(OpenBCI_GUI.java:31736)
at OpenBCI_GUI$WidgetManager.(OpenBCI_GUI.java:31826)
at OpenBCI_GUI.initSystem(OpenBCI_GUI.java:849)
at OpenBCI_GUI.systemInitSession(OpenBCI_GUI.java:1117)
at OpenBCI_GUI.draw(OpenBCI_GUI.java:654)
at processing.core.PApplet.handleDraw(PApplet.java:2094)
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:840)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:782)
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81)
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:453)
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178)
at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
at java.base/java.util.TimerThread.run(Timer.java:516)
file: onnxruntime_arm64.dll is not found in jar file
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_x64.dll
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\onnxruntime_x86.dll
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\MLModule.dll
[SUCCESS]: Marker Widget: Listening for markers on 127.0.0.1:12350
InitSettings: Saving Default Settings to file!
SessionSettings: 4 active widgets saved!
[SUCCESS]: Session started!
Unpacking to: C:\Users\NEUROP~1\AppData\Local\Temp\jna-1116465799\DataHandler.dll
java.lang.NullPointerException: Cannot invoke "ddf.minim.ugens.Gain.setValue(float)" because "this.this$0.auditoryNfbGains[i]" is null
at OpenBCI_GUI$AuditoryNeurofeedback.update(OpenBCI_GUI.java:2229)
at OpenBCI_GUI$W_Focus.updateFocusState(OpenBCI_GUI.java:24837)
at OpenBCI_GUI$W_Focus.updateFocusWidgetData(OpenBCI_GUI.java:24970)
at OpenBCI_GUI$DataProcessing.process(OpenBCI_GUI.java:9341)
at OpenBCI_GUI.processNewData(OpenBCI_GUI.java:9074)
at OpenBCI_GUI.systemUpdate(OpenBCI_GUI.java:1046)
at OpenBCI_GUI.draw(OpenBCI_GUI.java:649)
at processing.core.PApplet.handleDraw(PApplet.java:2094)
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:840)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:782)
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81)
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:453)
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178)
at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
at java.base/java.util.TimerThread.run(Timer.java:516)
ConsoleLog: Copying console log to clipboard!
```
Just solved it! The audio NullPointerException error was more serious than I thought. I don´t need it, but simply plugging in a cheap pair of speakers solved all the issues! I guess the gui was trying to play sounds during connection with the board. Without speakers it got stuck there