Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

changing buttons/options on the interface crashes the program and some are not working -Ubuntu #54

Open
Mark-Record opened this issue Feb 9, 2024 · 1 comment

Comments

@Mark-Record
Copy link

Spectrum does successfully scan initially once the sdr device is selected.
However, changing the settings from its user interface crashes the program on my PC
I'm running it from XUbuntu
Description: Ubuntu 23.10
Release: 23.10
Codename: mantic
When the program starts from a Terminal launcher on the desktop, it writes a config.csv file on the descktop.
I found, editing this file on the desktop allows Spektrum settings such as startFreq and stopFreq to be set. My copy of Spectrum appears to read successfully from config.csv file on the desktop during startup.
However. if I change a user option such as startFreq using the Spectrum graphic interface, the scanning hangs very shortly afterwards. The program is apparently looking for a config.csv file located in /usr/share/spektrum/
I suspect there is an issue about which path is used to access the config.csv
The Text is printed to the terminal window when the crash occurs is as follows.

Loading libs from /usr/share/spektrum/lib.
Library rtlsdr file /usr/share/spektrum/lib/librtlsdr.so.
Library rtlpower file /usr/share/spektrum/lib/librtlpower.so.
Generic RTL2832U OEM: 00000001
ControlP5 2.2.6 infos, comments, questions at http://www.sojamo.de/libraries/controlP5
Reached end of setup.
Loading libs from /usr/share/spektrum/lib.
Library rtlsdr file /usr/share/spektrum/lib/librtlsdr.so.
Library rtlpower file /usr/share/spektrum/lib/librtlpower.so.
Found Rafael Micro R820T tuner
File config.csv
/home/stem/Desktop/config.csv
File config.csv exists.
Reached end of makeconfig
loadConfig: Config table config.csv loaded.
startFreq = 24000000 stopFreq = 450000000 binStep = 1000 scaleMin = -60 scaleMax = 0 rfGain = 0 fullRangeMin = 24000000 fullRangeMax = 1800000000 ifOffset = 0 ifType = 0
"ARIAL" is not available, so another font will be used. Use PFont.list() to show available fonts.
setRange exception.
Mode: hopping
setRange: CROP set to 0.0
setRangeButton
offsetToggle
minmaxToggle
sweepToggle
rfGain
RF GAIN CLICKED
avgShow
avgSamples
refShow
refYoffset
refYoffset
perShowMaxToggle
perShowMedToggle
perShowMinToggle
ifMinusToggle
ifPlusToggle
Mode: hopping
setRange: CROP set to 0.0
Reached end of setupControls.
deviceDropdown
RESIZE DETECTED
refShow
avgShow
sweepToggle
Mode: hopping
setRange: CROP set to 0.0
resetMin
saveConfig: Active Configuration 0 with name AutoSave
java.io.FileNotFoundException: /usr/share/spektrum/config.csv (Permission denied)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.(FileOutputStream.java:213)
at java.io.FileOutputStream.(FileOutputStream.java:162)
at processing.core.PApplet.createOutput(PApplet.java:7674)
at processing.data.Table.save(Table.java:1175)
at processing.core.PApplet.saveTable(PApplet.java:6299)
at spektrum.saveConfigToIndx(spektrum.java:1989)
at spektrum.saveConfig(spektrum.java:1964)
at spektrum.draw(spektrum.java:1768)
at processing.core.PApplet.handleDraw(PApplet.java:2482)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)
java.lang.NullPointerException
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297)
at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141)
at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229)
at java.io.PrintWriter.flush(PrintWriter.java:320)
at processing.data.Table.writeCSV(Table.java:1292)
at processing.data.Table.save(Table.java:1203)
at processing.data.Table.save(Table.java:1175)
at processing.core.PApplet.saveTable(PApplet.java:6299)
at spektrum.saveConfigToIndx(spektrum.java:1989)
at spektrum.saveConfig(spektrum.java:1964)
at spektrum.draw(spektrum.java:1768)
at processing.core.PApplet.handleDraw(PApplet.java:2482)
at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)

Copying the config.csv file from the desktop to /usr/share/spektrum/ stops the program crashing but then the program still seems to use the desktop version at start up.

Thanks for all your work making this incredibly handy piece of software.

@Mark-Record Mark-Record changed the title changing buttons/options on the interface crashes the program and some do not working -Ubuntu changing buttons/options on the interface crashes the program and some are not working -Ubuntu Feb 9, 2024
@pavels
Copy link
Owner

pavels commented May 7, 2024

The code responsible for saving the config is all messed up - i will try to find some time to rework this in near future

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants