The SV1BTL-version can be found here: https://github.com/sv1btl/PhantomSDR-Plus ..it is compatible with the normal version, but enhanced.

Recent posts

#61
PhantomSDR / Desktop PhantomSDR+ Applicatio...
Last post by Emmanuel SV1BTL - Aug 27, 2026, 07:59 AM
Hi all,

I would like to introduce Desktop PhantomSDR+, a desktop application for Linux and Windows designed to provide direct access to PhantomSDR+ servers, other WebSDR/SDR receivers, and virtually any web-based interface** without requiring a conventional web browser.

What does Desktop PhantomSDR+ do?

Instead of opening a browser every time you want to access a PhantomSDR+ server or another SDR receiver, you can store the server URLs directly in the application and launch them from a single station list.

Although it was primarily designed for **PhantomSDR+**, it is not limited to PhantomSDR+ servers. You can add practically any SDR receiver that provides a web interface, or even any standard webpage.

Main advantages

* Direct and convenient access to all SDR receivers and web interfaces you regularly use.
* Multiple SDR servers can be stored and managed from a single application.
* Significantly lower CPU and memory overhead compared with running multiple tabs in a full web browser.
* Stations can be renamed, reordered, or removed at any time.
* Fast keyboard access to frequently used receivers.
* Full-screen operation, page reload, and zoom controls.
* No browser configuration or bookmarks are required.

---

Installation

Because of GitHub's file-size limitations, the binary installers are currently hosted here:

https://www.dropbox.com/scl/fo/kjwj96zg3kj7dgq4fjef9/APnA3c9hhv4hk3YMGIGjH7s?rlkey=jfiwklly63kv73poalx631pk3&st=esqowtg6&dl=0
You DON"T NEED a Dropbox account to download the files!

Download the appropriate package for your operating system.

Linux

Available packages:

* `PhantomSDR-Plus-1.0.1.AppImage`
* `phantomsdr-plus-desktop_1.0.1_amd64.deb`

AppImage Download:
`PhantomSDR-Plus-1.0.1.AppImage`

Make the file executable if necessary:
chmod +x PhantomSDR-Plus-1.0.1.AppImage
Then launch it either by double-clicking/right-clicking it from your file manager or from a terminal:
./PhantomSDR-Plus-1.0.1.AppImage
If nothing happens when the AppImage is launched, FUSE may not be installed. Recent Ubuntu releases no longer install the required FUSE compatibility package by default, and launching an AppImage from a graphical file manager may fail without displaying an obvious error.

Install the appropriate package once:
sudo apt install libfuse2t64     # Ubuntu 24.04 and later
sudo apt install libfuse2        # older Ubuntu/Debian releases

Alternatively, you can run the AppImage without installing FUSE:
./PhantomSDR-Plus-1.0.1.AppImage --appimage-extract-and-runThis method works without FUSE, although application startup may be slightly slower.

Debian/Ubuntu `.deb` package

Download:
`phantomsdr-plus-desktop_1.0.1_amd64.deb`

Install it with:
sudo dpkg -i phantomsdr-plus-desktop_1.0.1_amd64.deb
If `dpkg` reports missing dependencies, run:
sudo apt-get -f install```

After installation, PhantomSDR-Plus will appear in your desktop environment's application menu.

To uninstall it:
sudo apt remove phantomsdr-plus-desktop
---

Windows


Download and run:
`PhantomSDR-Plus Setup 1.0.1.exe`

Windows may display the blue: Windows protected your PC

SmartScreen warning. This occurs because the installer is currently **not digitally code-signed**. Commercial code-signing certificates involve a significant recurring cost, which is not currently justified for this project.

To continue:

1. Click **More info**.
2. Click **Run anyway**.

Desktop PhantomSDR+ is installed **per user**, so administrator privileges are not normally required.

The application can later be removed through: **Settings → Apps → Installed apps** like any other Windows application.

---

## macOS
There is currently **no macOS build available**.

---

Using Desktop PhantomSDR+

Adding a receiver is very simple.
1. Address: Enter the receiver's complete URL in the **Address** field, exactly as you would enter it in a web browser. For example:
https://sdr.example.com:9002

or:
http://192.168.1.50:8900

Both HTTP and HTTPS addresses are supported. A hostname can also be entered where appropriate.

2. Name. The **Name** field is optional. You can assign any descriptive name to the receiver, for example:
SV1BTL PhantomSDR+ or: 40m Receiver. If the field is left empty, the application automatically uses the hostname as the station name.

3. Add the station. Click **Add**. The receiver will now appear in your station list.

---

Reordering stations
After creating your station list, receivers can be arranged in any order you prefer.
There are two methods.
u]Drag and drop[/u] Press and hold the **left mouse button** anywhere on a station row, except directly on one of its control buttons.
- Drag the station upward or downward. A blue insertion line indicates the new position. Release the mouse button and the station will be moved to that location.

Arrow controls
Each station row also contains a small pair of arrows:
**▲** moves the station one position upward.
**▼** moves the station one position downward.
An arrow is automatically disabled when further movement in that direction is not possible. Therefore, the first station cannot be moved further upward and the last station cannot be moved further downward.

Stations can, of course, also be **renamed or deleted** at any time.

---

Keyboard shortcuts

| Shortcut            | Function                                                            |
| ------------------- | ------------------------------------------------------------------- |
| `Ctrl+L`            | Bring the station list window to the foreground                    |
| `Ctrl+N`            | Open the station list and focus the Address field                  |
| `Ctrl+1` ... `Ctrl+9` | Open stations 1–9 according to their current list order            |
| `Ctrl+V`            | Paste text into an input field; right-click paste is also supported |
| `Ctrl+W`            | Close the current window                                            |
| `F11`              | Toggle full-screen mode                                            |
| `Ctrl+R`            | Reload the current station/web page                                |
| `Ctrl++`            | Zoom in                                                            |
| `Ctrl+-`            | Zoom out                                                            |
| `Ctrl+0`            | Reset zoom to the default level                                    |

---

Desktop PhantomSDR+ is intentionally a small and lightweight application. Its primary purpose is to provide **PhantomSDR+ end users with a faster and more convenient way to organize and access their preferred SDR receivers without keeping multiple browser tabs open.

It can also be used as a general-purpose launcher/viewer for other web-based SDR systems and web interfaces.

I hope you find it useful.

Have fun!

73 de SV1BTL (Emmanuel)

----

UPDATED!!!

A minor bug (Ctrl + + for zoom in didn't work) is fixed
Please use the link given :

https://www.dropbox.com/scl/fo/kjwj96zg3kj7dgq4fjef9/APnA3c9hhv4hk3YMGIGjH7s?rlkey=jfiwklly63kv73poalx631pk3&st=esqowtg6&dl=0

You DON"T NEED a Dropbox account to download the files!
to download and install v.2.0.0

It would be better to first uninstall the previous version in both Linux & Windows and install the newer one.
All your already saved links, will be there.
#62
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by Emmanuel SV1BTL - Aug 27, 2026, 07:08 AM
OK Eric, understood. Very interesting indeed. I suppose that this will be a very useful option for owners of a Flex Radio. Let us see it in action.
#63
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by F1NSK - Aug 27, 2026, 12:18 AM
Quote from: Emmanuel SV1BTL on Aug 26, 2026, 09:43 PM
Quote from: F1NSK on Aug 26, 2026, 07:46 PMHello Guy's

The link between Phantom 3.8.0 and AetherSDR for FlexRadio is in test at home !  ;D

A patch add a special websocket to Phantom to send pseudo Kiwi protocol.

I will push intensive tests before sending the kiwi_install.sh to Emmanuel

73's

What is the benefit for doing this link?
What have we to expect?

FlexRadio transceivers can listen on two antenna at the same time in diversity mode.
Very helpful to extract small stations from noise.

AetherSDR (a free alternative to manage a Flex) is a powerfull software.

Aether can use a KiwiSDR as a second antenna. The audio and waterfal are synchronised.

This amazing feature work only with a Kiwi.

My idea is to connect other types of SDR
A Phantom work better than a Kiwi and support more users.

No benefit for Phantom basic users but an opportunity for Flex users to link a high quality SDR.

At this time, the patch install, compile and run fine on Phantom 3.6.0, 3.7.0 and 3.8.0.

Sound and Waterfall are perfect, only miss the S meter...work in progress

More info on https://lu5dx.github.io/AetherSDRDocsEnglish/latest/

73's

#64
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by Emmanuel SV1BTL - Aug 26, 2026, 10:20 PM
A message "API KEY REQUIRED" is shown in users.html and stats.html. The issue is fixed. Please download the fixed files from the repo, recompile frontend and hard refresh the browser.
Or.... run ./update.sh.
#65
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by Emmanuel SV1BTL - Aug 26, 2026, 09:43 PM
Quote from: F1NSK on Aug 26, 2026, 07:46 PMHello Guy's

The link between Phantom 3.8.0 and AetherSDR for FlexRadio is in test at home !  ;D

A patch add a special websocket to Phantom to send pseudo Kiwi protocol.

I will push intensive tests before sending the kiwi_install.sh to Emmanuel

73's

What is the benefit for doing this link?
What have we to expect?
#66
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by F1NSK - Aug 26, 2026, 07:46 PM
Hello Guy's

The link between Phantom 3.8.0 and AetherSDR for FlexRadio is in test at home !  ;D

A patch add a special websocket to Phantom to send pseudo Kiwi protocol.

I will push intensive tests before sending the kiwi_install.sh to Emmanuel

73's
#67
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by Emmanuel SV1BTL - Aug 26, 2026, 06:05 PM
For ALL sysops with v.3.8.0

Please update only the file frontend/src/audio.js and recompile only frontend. A minor bug is corrected.
#68
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by F1NSK - Aug 26, 2026, 10:08 AM
Hello Guy's

3.8.0 install and run error free on a real Ubuntu 26.04 computer.

3.7.0 crashes at install on 26.4

73's
#69
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by 9a7aof - Aug 25, 2026, 09:18 PM
I tried running just ./update.sh, it listed which files were outdated and
which files I edited manually.

After that, I ran ./update.sh --apply on all three servers (one public and two test),
it has a nice interactive dialog,
the default value is the one I manually entered into the scripts, great.

During the update, admin, proxy and phantom itself are stopped, after the update,
these services are automatically started.

It is also possible to revert to the old values,
although I don't think anyone will need it.

Great thing for system administration!

Kind regards,
Darko, 9a7aof
#70
PhantomSDR / Re: Pre-announcement of Phanto...
Last post by Emmanuel SV1BTL - Aug 25, 2026, 08:34 PM
A brilliant idea of George (https://hfsdr.gr/?frequency=7120000&modulation=LSB) this is the last addon of the newer version of PhantomSDR-Plus v. 3.8.0 (which is already in the GITHUB - https://github.com/sv1btl/PhantomSDR-Plus)

Updating an existing PhantomSDR-Plus instance

For a sysop who is running an older PhantomSDR-Plus and wants the current one.

You do not download the whole newer version and copy it over your tree. You fetch
one file — `update.sh` — and it does the rest: it compares your installation with the
published tree and updates only what needs updating, without touching the files that make
the machine *your* receiver.

---

Step 1 — get the tool (once, ever)

cd ~/PhantomSDR-Plus
curl -fLO https://raw.githubusercontent.com/sv1btl/PhantomSDR-Plus/main/update.sh
chmod +x update.sh

That is the only manual step. Everything else — sources, frontend, documentation,
installers — is brought in by the tool itself from then on.

If your PhantomSDR-Plus lives somewhere else, use that path instead. `update.sh` works on
the directory it is sitting in, so a second clone updates itself and not the one on air.

---

Step 2 — look before touching anything

./update.sh
This **writes nothing at all**. It downloads the published tree, compares it with yours,
and prints a report: how many files are new, how many would be updated, how many look like
your own edits and will be put to you, and how many site-local files it is leaving alone.
It is safe to run at any time, including on a receiver that is on the air.

Worth running once as well:
./update.sh --list-excludes

so you can see with your own eyes that your `.toml` configs, `markers.json`,
`admin_config.json`, `autorun.json`, the frequency list, the chat history, your chosen
S-meter variant, the logs and the build output are all on the never-touch list.

---

Step 3 — a backup, the first time only

The tool already protects these, but the first run is the one to be careful with:

cd ~
tar czf phantom-backup.tgz \
  PhantomSDR-Plus/*.toml \
  PhantomSDR-Plus/markers.json \
  PhantomSDR-Plus/admin_config.json \
  PhantomSDR-Plus/frontend/site_information.json

---

Step 4 — update

cd ~/PhantomSDR-Plus
./update.sh --apply


What you will see on a first run

There is no record yet of which version your files came from, so every file in the
"always asked" group is put to you: the launchers (`start-*.sh`), the `*.service` units,
the installers, `recompile.sh`, `setup_admin.sh`, and the admin and proxy scripts. Expect
roughly ten questions, each looking like this:


  ❓ start-rx888mk2.sh  (K)eep mine / (u)pstream / (b)oth  (ENTER = Keep mine)


How to answer:

| Your situation | Answer | What happens |
|---|---|---|
| You never edited that file | `u` | The new version is installed. This is the usual case. |
| You edited it — your own `RX888_ARGS`, CPU pinning, a tweaked unit | `b` | Yours is kept, and the new one lands beside it as `<file>.new` to merge later. |
| You are not sure | ENTER | Yours is kept. Nothing is lost, and you can compare afterwards. |

Your configuration is never part of this. The questions are only ever about scripts and
service units.

From the second update onward these questions mostly disappear. The tool records which
version of each file it installed, so next time it can tell a file *you* edited from a file
that is merely old, and it only stops to ask about the ones you actually changed.

It stops your receiver, the admin panel and the reverse proxy before writing anything, and
starts back exactly what it stopped when it has finished.

---

Step 5 — rebuild when it offers

Source and frontend files will have changed, so it will ask whether to run `recompile.sh`.
Say yes, and choose:

* **[3] Both backend and frontend**
* then **[1] build-all.sh** (desktop + `/mobile`)

The receiver comes back up on its own afterwards.

---

Step 6 — check, and undo if you need to
[/b][/u]
./update.sh

should now report everything current, apart from any files you chose to keep. If the site
misbehaves:


./update.sh --restore LAST
./recompile.sh


Every file that was overwritten is kept in `.update-backups/<timestamp>/`, each with its own
`restore.sh`, and the last three runs are retained.

---

One caveat for a *really* old instance

`update.sh` updates **files**, not system packages. If your tree is old enough that the
build now needs libraries you do not have, `recompile.sh` will fail with a compiler or meson
error. That is not a broken update — you simply need the dependencies:

./install.sh
which is itself brought up to date by the same run. Your configuration survives that too.

---

For a machine you do not sit at

./update.sh --apply --yes
Never asks anything, and **every file you have edited is kept**. Safe for cron.

A plain `./update.sh` exits `0` when you are up to date and `10` when an update is waiting,
so a cron job can tell you when there is something to do:

0 6 * * *  cd ~/PhantomSDR-Plus && ./update.sh || \
  mail -s "PhantomSDR-Plus update available" you@example.com

---

Quick reference

./update.sh                what WOULD change; writes nothing
./update.sh --apply        do it, asking about anything you edited
./update.sh --apply --yes  unattended; your edits are all KEPT
./update.sh --restore LAST  put back whatever the last run overwrote
./update.sh --list-excludes the never-touch rules as they resolve here
./update.sh --ref v3.8.0    a tag, branch or commit instead of main
./update.sh --verbose      list every file, not only the first 40

Add your own never-touch rules with one glob per line in `update-exclude.txt` in the root
folder of the installation.

73 de SV1BTL
Powered by EzPortal