
Our latest feature release improves offline setup and adds support for HF Skywave, interference analysis and indoor simulation.
Offline by default
With pre-built images, offline install is now enabled by default.
This was developed to both speed up the install, ensure all dependencies are present and correct and automatically assign the domain name / IP address. IP networking in particular was noted as common support issue so we’ve put effort into helping users get this right early on in the setup.
We use a lot of open source libraries in our stack and there is no guarantee they will be available or compatible at the point a user decides to build. This stung us after we launched 1.8 when a third party “npm install” command later failed causing us to release a patch (1.8.1).
A build-your-own option is available to users who wish to generate their own images using our compose script.
HF Skywave
Rather than reinvent the wheel, we integrated the popular VOACAP engine into our API as a new model option. You can use VOACAP via the web interface and API to make HF heatmaps or frequency predictions.
We incorporated feedback from VOACAP experts about the critical relationship between antenna height, take off angle, and the subsequent antenna pattern. The engine uses HF antenna patterns which are built on-demand by our API dynamically so you will get the corrected pattern for a given dipole height above the ground.
The HF model was calibrated against published papers and crowd sourced sounding data. You can read more about this in the HF blog.
ARM-64 support
Support for ARM-64 architecture has been officially added now. We field tested this portable edge server concept up a mountain and were very pleased with the power economy of the Nvidia Jetson.
Read more about the field test from earlier this year.
Phase Tracing interface
A new 3D interface with BYO models designed for urban simulations with multi-path, material properties, phase tracking and support for the glTF 3d model format.
This builds upon the 3D API which shipped with 1.8 last year.
Read more about Phase Tracing in the blog.
Enhanced interference analysis
Interference analysis had a significant upgrade in December to enable support for co-site interference and network analysis.
Now you can compare entire networks to see how they might interfere and get a visualisation of the impact of bandwidth and power on adjacent channels.
Read more in the interference blog.
Deprecated features
As a small software company we cannot add features indefinitely. We have therefore retired the following interfaces in line with CloudRF:
Google Earth desktop interface
This was getting harder to support with every new Javascript feature as it’s Webkit browser was frozen in time since they focused effort on the web based version. You can still export to KMZ and open in Google Earth.
TAK chatbot
We made this in 2021 to avoid writing an Android app as we have scars from Android development going back to 2012. The first version used the taky TAK server which was then rewritten for the OG TAK server. As a result we ended up learning a lot about TAK and our open source setup script became one of the most popular non-DoD TAK Server repos on Github.
We now have a signed ATAK plugin which does not need a TAK server so is much easier 🙂
Product Flyer
Security
Anchore compatible SPDX-2.3 SBOM available upon request.
SHA1 Checksum:
411f309d9e228b0238e6918d15bc4e5bd7803a93 SOOTHSAYER-1.9_OFFLINE.zip
SOOTHSAYER™ Changelog
1.9.0 04/2025
- Update: API
3.23.1
, UI3.16.2
, 3D UI1.1.0
, CPU Engine1.16.0
, GPU Engine1.12.0
, 3D Engine0.2.1
, AntennaWizard2.0.5
, Bouncyball0.4.3
, Analysis Utilities (QRM2 & SuperTool)1.0.0
, Documentation2.9.0
. - Update: pgAdmin container updated to
8.14
. - Update: PHP updated to
8.4
. - Feature: Support for HF Skywave.
- Feature: Added binaries for new processing of interference and superlayer.
- Feature: Added new 3D UI – available at
/phase-tracing
. - Feature: Added new
install.sh
,start.sh
,stop.sh
, andwatch.sh
scripts to simplify management. - Feature: Added support for importing pre-built containers for offline environments.
- Feature: Improved automatic assistance with setting FQDN during install.
- Feature: Improved conditional logic for GPU and non-GPU environments.
- Feature: Reduced size of
soothsayer-network
from /24 to /28 to reduce opportunity for network subnet overlap. - Fix: Removed use of Docker
hello-world
for checking Docker permissions. - Fix: Improved timeout delays when serving cached tiles from MapProxy.
- Fix:
/dbadmin
endpoint not working for non-standard HTTP/HTTPS ports. - Fix: Changing database password in the admin dashboard doesn’t change password within
/dbadmin
. - Fix: Updated default
TLE_CATALOG_URL
value.
API
3.23.1 (2025-04-03)
- Fix: Points data endpoint failed when using legacy colour keys.
3.23.0 (2025-03-18)
- Fix: BSA restricted receiver sensitivity unnecessarily.
- Fix: BSA forced to FSPL and no diffraction for all requests.
- Fix: Terrain data map throws a 400 at low zoom levels.
3.22.0 (2025-02-27)
- Deprecation: Removed
v1
API endpoints (key=value), deprecated since Dec 2022 - Deprecation: TAK chatbot removed now we have an ATAK plugin
- Feature: Added colour schema to URL export.
- Feature: Added favourite sorting to antenna database.
- Fix: Empty colour schema file being written to
archive
when requesting KMZ files. - Fix: Added handler to prevent creation of clutter profiles with system profile names.
- Fix: Unable to delete clutter profiles which contain certain characters.
- Fix: Improved validtions when creating a bad clutter profile.
- Fix: Improved error message for GPU engine over ocean.
3.21.0 (2025-02-18)
- Improvement: Increase maximum reflections limit to 25.
- Change: Uploaded model textures are compressed on upload
- Feature: Credit-based purchases removed from API.
- Feature: Users on free plan can upload 3D models.
- Feature: Added “Raw Request” to KMZ balloon.
- Feature: Improved system clean-up of stale files.
- Improvement: Increase maximum reflections limit to 25.
- Improvement: Show “No LOS” with PPA PNG chart if LOS blocked with LOS model
- Change: Uploaded model textures are compressed on upload
- Fix: Improve validations on
edges
for BSA requests. - Fix: Custom colour schema support for negative step sizes.
- Fix: Custom colour schema step size of
0
triggers a loop.
3.20.0 (2025-01-22)
- Fix: Added restriction to
/mesh
and/merge
endpoint where sites must be within 40 degrees of each other. - Fix: Input model filenames with spaces would fail 3D calculations.
- Fix: 3D calculations sometimes incorrectly returning previous responses.
- Fix: HF NVIS calculations not working.
- Fix: Incorrectly translating hex code of
ff
to RGB value of254
for red and green channels when creating a custom colour key. - Fix: Downloading greyscale calculations as SHP alters the source file which causes other analysis tools to fail.
- Fix: Sending a request to
/area
without anoutput.out
value results in a HTTP 500.
3.19.0 (2024-12-30)
- Improvement: Better handling of streaming large files.
- Feature: Added
/3d/models
and/3d/model/delete
endpoints. - Feature: Antenna file uploading moved into Antenna Wizard.
- Fix: MANET tool reporting validation errors with RCS, even when RADAR mode isn’t used.
- Fix: Favouriting antenna patterns sometimes is not always reflected with the favourite button.
- Fix: Uploading of some 3D models incorrectly failing validation.
- Fix: Improved validation when uploading small and large models.
- Fix: Some requests fail where a user agent header is not sent to the API.
- Fix: Antenna database filters now reset the page number.
- Fix: Some environment values not persisting after multisite or satellite calculations.
- Fix: Validation error when using database noise on multisite requests.
3.18.0 (2024-12-12)
- Enhancement: Allow custom per-bucket colour when creating custom colour schemas.
- Enhancement: Upgraded
/inteference
to show JS ratio instead of just which site is strongest. - Improvement: Increased the speed of the
/mesh
endpoint, and added an alias/merge
. - Improvement: Added controls to Antenna Wizard.
- Fix: Colour schema editor doesn’t give warning if name is invalid.
- Fix: Colour schema buckets will style the label according to the brightness of the background.
- Fix: Some CPU calculations failing if input files contained spaces.
3.17.0 (2024-11-25)
- Improvement: Added support for compressed glTF models
- Improvement: Extended noise API to handle array of values.
- Fix: Fixed points kmz url.
- Fix: Landcover and buildings always returned as enabled from preferences.
- Fix: Differing logic relating to noise limits.
- Fix: SNR units reporting as BER when sensitivity out of range.
3.16.0 (2024-11-11)
- Feature: Added HF Skywave APIs
/hf/area
and/hf/prediction
UI
3.16.2 (2025-04-03)
- Fix: Maximum altitude of 120,000 to align with API.
- Fix: Disable engine toggle when loading in a flight path.
- Fix: Calibration mode has redundant button to enable multipoint links.
- Fix: Download report failing on some browsers. Moved the report within a modal window.
3.16.1 (2025-03-31)
- Deprecated: Google Earth layer removed.
- Feature: Added example long format CSV file to help for automatic processing.
- Fix: Antenna not set during interface load or during selection of a template.
- Fix: Automatic processing fails if colour schema name is only numeric.
- Fix: Clearing layers changes radius after HF Skywave model has been used.
- Fix: BSA mode removes Tx marker to avoid confusion.
- Fix: BSA mode disables adjustment of model and diffraction to avoid confusion.
- Fix: Mesh download title was undefined.
- Fix: Loading calculations from the archive didn’t set colour key correctly.
3.16.0 (2025-02-27)
- Feature: Added “Select all” to archive.
- Improvement: Give modal warning when deleting a network from the archive.
- Improvement: Show “No LOS” with PPA chart if LOS is blocked and LOS model is selected.
- Improvement: Show
calculation_adjusted
messages for interference tool. - Improvement: Clicking success/error icon with “Automatic processing” shows debug info.
- Fix: No feedback when using archive functions without selecting a calculation.
- Fix: ‘invalid’ metrics entries.
- Fix: Environment values not set from template.
- Fix: Gain from a template gets replaced after loading a template.
- Fix: Retrieving a
null
antenna upon load. - Fix: Satellite mode does not reference API.
- Fix: Colour key replaced with a
dBm
equivalent after using “Manage My Colours”. - Fix: Operator mode is giving option for custom antenna patterns.
3.15.0 (2024-12-12)
- Improvement: Intereference analysis lets you compare two networks
- Improvement: Colour picker lets you define full custom values and colours
- Fix: Interference analysis docs link updated
- Fix: Loading some layers from archive throw antenna validation error when “Custom pattern” is selected.
- Fix: Coverage analysis values have overly high precision.
3.14.0 (2024-11-11)
- Feature: Added HF Skywave propagation model
3D UI
1.1.0 (2025-04-03)
- Feature: Added GLB export menu.
- Feature: Added a toggleable scale indicator.
- Feature: Wireframe mode improved by removing interaction with light sources which create strange effects.
- Fix: Wireframe mode is broken on some models.
- Fix: Saving scene is not correctly loading from cached values.
- Fix: Antenna pattern rendering not depth-checked.
- Fix: Loading models from cache not working.
1.0.0 (2025-01-30)
- Initial release.
CPU Engine
1.16.0 – 2025-03-19
- Fix: Pathloss colour bins were offset.
1.15.0 – 2025-01-30
- Fix: Opening a .ter file did not update its atime.
1.14.0 – 2024-12-12
- Improvement: Antenna pattern interpolation.
- Improvement: Write a .json file with metadata
- Change: Write RGBA images so as to reduce post-processing
GPU Engine
1.12.0 (2025-03-19)
- Feature: Added CUDA fast math flag to release builds.
- Deprecation: Removed CUDA architecture 87.
- Improvement: Calibration against CPU engine for different units.
- Improvement: Values between the colour key and rxs are output as black.
- Fix: SNR colour keys with negative numbers are now handled correctly.
1.11.0 (2025-01-30)
- Improvement: Increase per-thread sleep to reduce power consumption.
1.10.2 (2024-12-12)
- Fix: Removed antenna pattern artifact at azimuth 0 and 90.
- Improvement: More accurate area/coverage calculation.
3D Engine
0.2.1 (2025-03-19)
- Improvement: Refraction attenuation is now per meter
- Fix: Fixed overflow resulting in random hot spots
- Fix: Reflection attenuation was applied before the incident
- Build: Added cuda fast math flag to release builds
- Build: Removed cuda architecture 87
- Build: Commented-out unused code to reduce binary size
0.2.0 (2025-01-17)
- Performance: Only generate photons on collisions, not along the whole path
- Improvement: Photons can be exported as a GLB for debug purposes
- Improvement: Material refraction coefficient can be set
- Fix: Photons were invalidated when the movement distance was to small, preventing refracting through more than one voxel
- Fix: AllInRadius mode was summing all the photons that didn’t belong to a given transmitter ID, rather than all the ones that did
- Fix: Refraction loss was not scaled by voxel size
0.1.1 (2024-11-12)
- Improvement: Draco compressed models are now supported
- Fix: Diffusion was not being passed on correctly
- Improvement: Antenna pattern model size can be changed
- Fix: Engine was not restarted on fatal cuda error
- Fix: Idle CPU usage was too high