Comments (21)
Could you try the following version on Windows. I'm still looking into Ubuntu.
The config utility was designed for Java 8, so I have no idea if it will work on Java 14, but I've updated the version of launch4j which should now handle the new version numbers and realise that 14.0.1 is newer than 1.8.0.
from astroeq.
For Ubuntu, could you run the following script:
#!/bin/sh
JAVA_VER=$(java -version 2>&1 | sed 's/.*version "\(.*\)\.\(.*\)\..*"/\1\2/; 1q')
[ "$JAVA_VER" -ge 18 ] && echo "ok, java is 1.8 or newer" || echo "it's too old..."
from astroeq.
On Windows I only get the loading screen, while the config utility is all grey, nothing is drawn
Linux:
I'm installing Processing to test everything from the sources.
from astroeq.
Could you extract this into the same folder as AstroEQ.exe and run it.
AstroEQDebug.zip
It will run AstroEQ with a command prompt to provide debugging information.
from astroeq.
Looks like jSSC is outdated, among other things.
Here you go:
Starting AstroEQ Config Utility, V3.9.2
Time is 13:20:58
OS: Windows 10. JRE Version: 14.0.1. JRE Arch: amd64
Java Path: D:\Windows\Programs\JDK14\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;D:\Windows\Programs\Git\cmd;C:\Users\marco\AppData\Local\Microsoft\WindowsApps;C:\Users\marco\AppData\Local\GitHubDesktop\bin;C:\Users\marco\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;;D:\Windows\Programs\Microsoft VS Code\bin;D:\Windows\Programs\JDK14\bin;.
Creating Window. Setting DPI Scaling to 1
Setting Window Size to: 510 x 525
Setting Frame Rate
Creating Executioner thread
Connecting to Clipboard
java.lang.UnsatisfiedLinkError: C:\Users\marco\Desktop\AstroEQ-ConfigUtility\bin\jSSC-2.8.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2452)
at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2508)
at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2704)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2669)
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:807)
at java.base/java.lang.System.loadLibrary(System.java:1907)
at AstroEQUploader.setup(AstroEQUploader.java:231)
at processing.core.PApplet.handleDraw(PApplet.java:2393)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1540)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:316)
Current Dir: C:/Users/marco/Desktop/AstroEQ-ConfigUtility/AstroEQDebug.exe\
Populating Firmware Variants
The file "C:/Users/marco/Desktop/AstroEQ-ConfigUtility/AstroEQDebug.exe\hex\versions.txt" is missing or inaccessible, make sure the URL is valid or that the file has been added to your sketch and is readable.
java.lang.NullPointerException
at java.base/java.io.Reader.<init>(Reader.java:167)
at java.base/java.io.BufferedReader.<init>(BufferedReader.java:101)
at java.base/java.io.BufferedReader.<init>(BufferedReader.java:116)
at AstroEQUploader.populateVariants(AstroEQUploader.java:432)
at AstroEQUploader.setup(AstroEQUploader.java:267)
at processing.core.PApplet.handleDraw(PApplet.java:2393)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1540)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:316)
Board List Loaded
Loading ControlP5
ControlP5 2.2.6 infos, comments, questions at http://www.sojamo.de/libraries/controlP5
Building GUI
x=0, y=104, width=510, height=372
buildBeginScreen --- ID is: begin
buildVersionCheckScreen --- ID is: versionCheck
buildFirmwareFetchScreen --- ID is: firmwareFetch
buildEEPROMWriterScreen --- ID is: EEPROMWriter
buildCheckEEPROMScreen --- ID is: checkEEPROM
buildRecoverEEPROMScreen --- ID is: recoverEEPROM
buildEnterConfigScreen --- ID is: enterConfig
buildProgramConfigScreen --- ID is: programConfig
buildDownloadFirmwareScreen --- ID is: downloadFirmware
buildTestFirmwareScreen --- ID is: testFirmware
buildFinishedScreen --- ID is: finished
Initialising Serial Ports
java.lang.UnsatisfiedLinkError: 'java.lang.String[] jssc.SerialNativeInterface.getSerialPortNames()'
at jssc.SerialNativeInterface.getSerialPortNames(Native Method)
at jssc.SerialPortList.getWindowsPortNames(SerialPortList.java:309)
at jssc.SerialPortList.getPortNames(SerialPortList.java:298)
at jssc.SerialPortList.getPortNames(SerialPortList.java:182)
at processing.serial.Serial.list(Unknown Source)
at AstroEQUploader.refreshComm(AstroEQUploader.java:303)
at AstroEQUploader.setup(AstroEQUploader.java:293)
at processing.core.PApplet.handleDraw(PApplet.java:2393)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1540)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:316)
from astroeq.
Ok, so that makes some sense.
The Config utility only supports 32-bit Java on Windows, so you'll need to have the 32bit JRE installed. Otherwise the JSSC DLL for serial comms won't load correctly. I'll have a look into whether I can include both 32 bit and 64 bit DLLs, not sure if I can.
Also, for some reason Java 14 is giving the full exe filename for the current path rather than the folder. That will need to be fixed as well.
64bit should work on Ubuntu as it uses the jssc deb package rather than including the binary file.
For Ubuntu, what does this return:
#!/bin/sh
#https://stackoverflow.com/a/56243046/1557472
JAVA_VER=$(java -version 2>&1 | head -1 | cut -d'"' -f2 | sed '/^1\./s///' | cut -d'.' -f1)
[ "$JAVA_VER" -ge 8 ] && echo "ok, java is 1.8 or newer" || echo "it's too old..."
from astroeq.
Debugging from Processing does work, but ofc reports it lacks a 64-bit jSSC library. I'll give you a compatible DLL in a moment. Probably you need to update Java and Processing and build everything from there, but I'm concerned about backwards compatibility with Java 8.
New script:
marco@marco-win:/tmp$ ./test2
ok, java is 1.8 or newer
from astroeq.
I've got a copy of the 64 bit DLL, its a case of trying to figure out whether I can load it based on architecture. Last time I tried it got upset because the name didn't match.
For the ubuntu, could you modify /usr/bin/astroequploader
(just a script file) and change lines 11 and 12 from:
JAVA_VER=$(java -version 2>&1 | sed 's/.*version "\(.*\)\.\(.*\)\..*"/\1\2/; 1q')
if [ "$JAVA_VER" -lt 18 ]; then
to;
#https://stackoverflow.com/a/56243046/1557472
JAVA_VER=$(java -version 2>&1 | head -1 | cut -d'"' -f2 | sed '/^1\./s///' | cut -d'.' -f1)
if [ "$JAVA_VER" -lt 8 ]; then
And see if that launches.
from astroeq.
I'm taking a look at the sources, and I understand why you got upset. You should use the jSSC jar library (which automatically selects the right DLL) instead of the DLLs directly. But that would mean rewriting part of the config utility, perhaps in pure Java. I'll test the new Ubuntu launcher ASAP.
from astroeq.
It is using the jar library, the problem is that in order to wrap everything in a single EXE I have to merge all of the jars into a single fat jar, at which point the JSSC jar file seemed unable or unwilling to load the DLL. There seems to be some weird path issue that I never sussed.
The config utility is a bit of a mess - was written in a hurry, I've just never had the time to tidy it up.
from astroeq.
Hmm. In fact it seems to be working without loading the DLL. So that solves that problem. It seems that when I upgraded to JSSC 2.8 from 2.6 a while ago that problem went away.
from astroeq.
New version to try out if you could
AstroEQ-ConfigUtility-LINUX.zip
from astroeq.
Never mind, it does need the DLL. Must be finding it on my Path somewhere.
from astroeq.
AstroEQ-ConfigUtility-LINUX.zip works every once in a while, I have to open it several times before getting an usable GUI. Most of the times launches a gray window or no window at all.
Output of the new Windows Debug exe (still gray window):
Starting AstroEQ Config Utility, V3.9.3
Time is 14:7:16
OS: Windows 10. JRE Version: 14.0.1. JRE Arch: amd64
Java Path: D:\Windows\Programs\JDK14\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;D:\Windows\Programs\Git\cmd;C:\Users\marco\AppData\Local\Microsoft\WindowsApps;C:\Users\marco\AppData\Local\GitHubDesktop\bin;C:\Users\marco\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;;D:\Windows\Programs\Microsoft VS Code\bin;D:\Windows\Programs\JDK14\bin;.
Creating Window. Setting DPI Scaling to 1
Setting Window Size to: 510 x 525
Setting Frame Rate
Creating Executioner thread
Connecting to Clipboard
Current Dir: C:/Users/marco/Desktop/AstroEQ-ConfigUtility/AstroEQDebug\
Populating Firmware Variants
The file "C:/Users/marco/Desktop/AstroEQ-ConfigUtility/AstroEQDebug\hex\versions.txt" is missing or inaccessible, make sure the URL is valid or that the file has been added to your sketch and is readable.
java.lang.NullPointerException
at java.base/java.io.Reader.<init>(Reader.java:167)
at java.base/java.io.BufferedReader.<init>(BufferedReader.java:101)
at java.base/java.io.BufferedReader.<init>(BufferedReader.java:116)
at AstroEQUploader.populateVariants(AstroEQUploader.java:431)
at AstroEQUploader.setup(AstroEQUploader.java:266)
at processing.core.PApplet.handleDraw(PApplet.java:2393)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1540)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:316)
Board List Loaded
Loading ControlP5
ControlP5 2.2.6 infos, comments, questions at http://www.sojamo.de/libraries/controlP5
Building GUI
x=0, y=104, width=510, height=372
buildBeginScreen --- ID is: begin
buildVersionCheckScreen --- ID is: versionCheck
buildFirmwareFetchScreen --- ID is: firmwareFetch
buildEEPROMWriterScreen --- ID is: EEPROMWriter
buildCheckEEPROMScreen --- ID is: checkEEPROM
buildRecoverEEPROMScreen --- ID is: recoverEEPROM
buildEnterConfigScreen --- ID is: enterConfig
buildProgramConfigScreen --- ID is: programConfig
buildDownloadFirmwareScreen --- ID is: downloadFirmware
buildTestFirmwareScreen --- ID is: testFirmware
buildFinishedScreen --- ID is: finished
Initialising Serial Ports
java.lang.UnsatisfiedLinkError: 'java.lang.String[] jssc.SerialNativeInterface.getSerialPortNames()'
at jssc.SerialNativeInterface.getSerialPortNames(Native Method)
at jssc.SerialPortList.getWindowsPortNames(SerialPortList.java:309)
at jssc.SerialPortList.getPortNames(SerialPortList.java:298)
at jssc.SerialPortList.getPortNames(SerialPortList.java:182)
at processing.serial.Serial.list(Unknown Source)
at AstroEQUploader.refreshComm(AstroEQUploader.java:302)
at AstroEQUploader.setup(AstroEQUploader.java:292)
at processing.core.PApplet.handleDraw(PApplet.java:2393)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1540)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:316)
from astroeq.
Take 4 - this seems to load the DLL properly when it has a different name. I've called one jSSC-2.6-x86 and the other jSSC-2.6-amd64. Hopefully that should load for you.
There is still a strange issue with the sketch path that I'm trying to figure out. This may fix that too.
Not sure about ubuntu yet. Still looking.
from astroeq.
I'm sorry, go for take 5 π now the GUI loads and responses, but as soon as I connect an AstroEQ V4.7 board and hit Configure it crashes the bad way with a Java EXCEPTION_ACCESS_VIOLATION. Error log: hs_err_pid9400.log. Note that the list of serial ports is loaded properly, so in theory jSSC is being found.
This still sounds like a DLL issue because there's no Java stacktrace in the log.
from astroeq.
Lol. That seems to be an issue with the 64bit version of JSSC itself - I can't do anything about that unfortunately. At least its loading the correct DLL now.
Meanwhile, this seems to fix Ubuntu for me - loads and talks to the AstroEQ:
AstroEQ-ConfigUtility-LINUX.zip
Occasionally it will load with a black screen, at which point resizing the window brings it back. Not sure what that is about.
from astroeq.
Theres a newer version of JSSC here: https://github.com/java-native/jssc/releases/tag/v2.9.1
Downloading the native library from there and renaming it to 2.8 seems to still work for the x86 version. I've attached the amd64 native from there. Might be worth a try.
from astroeq.
The latest linux version loads, but I'm running it in a virtual machine, so I can't test if it connects to the board (it should work there, libjssc is a system-wide official package on Ubuntu). I'll switch to my full Ubuntu installation when I reboot the PC. jSSC 2.9.1 amd64 works like a charm on Windowsπ
from astroeq.
Hurrah, 5th times the charm :D
from astroeq.
I confirm that the latest version works flawless on Ubuntu, bug closed! Looking forward to the next stable release π
from astroeq.
Related Issues (20)
- Firmware Uploading Problem HOT 9
- Setup HOT 2
- Setup HOT 9
- Vixen MT1 motors HOT 7
- Microstepping while guiding/moving (Arduino) HOT 7
- Microstepping using spiral search HOT 6
- Cannot register to AstroEQ forum
- AstroEQUploader can't upload firmware under Linux x64
- GUI-related bug in the utility HOT 4
- AstroEQ doesn't work with EQMOD 2.xx HOT 7
- Strange design of the Arduino version HOT 1
- Wrong DEC GoTo Speed HOT 4
- Changing COM baud rate HOT 6
- Usb connection
- Motor Speed set up HOT 3
- Connection Problems. HOT 1
- Tracking Backwards..... HOT 2
- Question about Pulse Guiding HOT 1
- "Real" Stepper motors HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from astroeq.