# Kraken Pro Cloud BETA Status
This software is in BETA status. That means that it may have multiple bugs. We also do not guarantee any uptime for the service at this time. The server could crash and go offline for several hours to days at a time in the worst case. The server could lag if many people are using it.
**Before starting, please ensure you are on the latest code or on the latest image file for the Pi 4, Pi 5, Orange Pi 5 or Virtual Box.**
# Kraken Pro Cloud Features and Pricing
Currently, Kraken Pro Cloud and all its features are offered free of charge. However, we do intend on eventually moving towards a 'freemium' based model, where the basic features remain free, but advanced features such as history require an (affordable) subscription service. This is to help offset our development and server running costs.
# Kraken Pro Cloud
[Kraken Pro Cloud (map.krakenrf.com](https://map.krakenrf.com) is our online cloud mapping solution for KrakenSDR devices. It allows you to upload KrakenSDR direction finding data onto our central server, so that you can combine bearing data from multiple geographically distributed KrakenSDR devices. With the right geography of the receivers and transmitter, this allows you to instantly determine the location of a transmitter without needing to take multiple readings with a vehicle.
![image](https://user-images.githubusercontent.com/78108016/196401334-e6971c38-953b-40dc-9031-dce34c5a6075.png)
## Geography and Positioning
At least two and ideally three or more KrakenSDRs spread out over some distance will be required. If you are detecting transmitters far away, the receivers will need to be spread out more in order to get good crossing of the bearings.
# Software Usage
Kraken Pro Cloud can be accessed by browsing to https://map.krakenrf.com. In order to sign up you will need to enter your email address, and have the serial number of any KrakenSDR that you own. This is the 8 to 12-digit number printed under the CE/FCC/UKCA/NoBinning logos on the front-right of the device.
**KerberosSDR Owners:** KerberosSDR owners are also welcome to use this software. However as the KerberosSDR does not have a serial number, please email us at thekraken@krakenrf.com with proof of ownership details. Be it a photo of the KerberosSDR with the current date, or an invoice. We will generate a serial number for you.
Once logged in your will be presented with a map and control sidebar.
## Adding a KrakenSDR
### Create a Remote SDR Station
To use the live bearing plotting features of the software you will need to add your KrakenSDR as a 'Remote SDR'. To do this, click on the `+` icon next to the 'Remote SDRs' text and select 'Remote Kraken'.
![image](https://user-images.githubusercontent.com/78108016/196310125-5fdd2c15-0b37-43df-a3d7-546fcca607de.png)
Enter the serial number of the KrakenSDR (don't forget the space), give it an easy to remember name (perhaps based on location), enter a default frequency, and the heatmap decay time you want (we recommend a default of 60 seconds).
The decay time setting defines how long data from this KrakenSDR will contribute to the heatmap. Generally, this could be anywhere from 10 to 120 seconds. Larger decay times result in more averaging over the grid space, and are useful if locating fixed stationary transmitters. Lower decay times result in more noise, but are required for moving transmitters. If your KrakenSDR is on a moving platform like a car, unless the TX is moving quickly, you probably want to set the decay time much larger (for example 30-60 minutes / 1800-3600 seconds), as then you do not want to lose the older data from points collected over time.
Once you have the details entered, click `Create Station`.
![image](https://user-images.githubusercontent.com/78108016/196310458-a912f541-92f4-4ffc-9841-000041077d0d.png)
You should now see the station added on the left sidebar. Click the gear icon next to the newly added station.
Under the device settings heading you should see an `APIKey`. Copy this value and store it for the next section.
![image](https://github.com/user-attachments/assets/018eb975-f083-4afb-ba30-c9eb67dd04d5)
### Add the API Key to your Local KrakenSDR Software
Next, you will need to set up your local KrakenSDR software via it's Web GUI.
First connect to the KrakenSDR's web GUI via it's local IP address.
Under the `Station Information` settings box, enter a Station ID name and change the DOA Data Format to `Kraken Pro Remote`.
In `Kraken Pro Key`, paste in the `APIKey` that you got from the mapper in the previous section.
Change location source to `Static` and enter the Latitude, Longitude and Heading of the antenna array.
The settings should automatically apply and auto save.
Repeat the above "Create a Remote SDR Station" and "Add the API Key to your Local KrakenSDR Software" steps for as many KrakenSDRs as you are setting up. (Currently you are restricted to a maximum of three KrakenSDRs).
### Creating a Group
Next, you will want to group your KrakenSDRs. This step must be done, even if you are only going to create one group.
The grouping feature allows you to separate KrakenSDRs into distinct groups. KrakenSDRs in each group will plot on the same heatmap. This is useful if you have KrakenSDRs spread out over a country. When triangulating, you will likely only want the KrakenSDRs local to a signal to contribute to the heatmap, as KrakenSDRs in another part of the country may point to a different transmitter.
To create a group press the '+' button next to the 'Remote SDRs' text and click on 'Device Group'. Select a name for the grouping, and then select all the KrakenSDRs that you want in that group.
## Starting the Mapper
A few seconds after entering the API key into the KrakenSDR web GUI as explained in the previous section, you should notice that the KrakenSDR on the cloud mapper turns green.
Once all your KrakenSDR's are green you can now start visualizing data by clicking on the "Start" button.
After a few seconds, you should see the DOA lobe and bearing lines on the map. The heatmap should show up a few seconds later.
### KrakenSDR Remote Control
Each KrakenSDR can be remotely controlled individually or as a group by the cloud mapper.
To control an individual KrakenSDR, click the gear icon next to it. You will see all the settings available in the local KrakenSDR web GUI. To make a change, simply change a parameter and click 'Save'. After a few seconds, the remote KrakenSDR should update its local settings.
To control several KrakenSDR's in a group, click the gear icon next to the grouping's name. This is useful to synchronize multiple KrakenSDRs onto the same frequency.
### KrakenSDR Multi-VFO
KrakenSDR is capable of outputting DoA data for multiple VFOs. If your KrakenSDR is set to output multiple VFOs, you can select which VFO gets displayed on the map by using the 'VFO Frequency' drop-down box. For each VFO frequency, there should be one entry in the drop-down box that can be selected.
## Options and Features
### Main configure button (blue gear icon at the top)
**Heatmap Size:** Total size from edge to edge in kilometers of the heatmap grid. Set this appropriately for your expected search space. Too large and you will lose resolution. Too small and you may have difficulting visualizing the lobe intersections.
**Heatmap Resolution:** Number of cells per axis on the grid. A higher value can result in more precise TX localization. But setting it too high can make calculations too slow. Maximum resolution is currently capped at 250.
It's important to note that setting a smaller heatmap size naturally results in a higher resolution grid. For example, if you set your grid to 100km and resolution to 500, each grid cell has a size of 100,000/500 = 200 x 200 meters.
Now if you set the grid size to 10km, each cell has a size of 20 x 20 meters.
![image](https://user-images.githubusercontent.com/78108016/196387732-cf3dcf53-9de2-4427-af73-d0993f8e17c4.png)
### Double Click Menu
If you double-click on the map a menu will pop up.
![image](https://github.com/user-attachments/assets/bbb31dd5-44bd-4f12-abf9-972e76c74b51)
**Add Marker:** Adds a reference marker on the map. Useful for marking to location of known transmitters.
**Center Heatmap:** Centers the heatmap grid wherever you clicked.
**Set as Home:** Tells the mapper where on the map the mapper should default to upon load.
**Copy Lat, Lon:** Copies to the clipboard the current latitude and longitude of the point you double clicked at.
**Open in Google Maps:** Open the coordinates where you double clicked in Google Maps. This may be useful if you want to use street view.
### Layer Options
Layer options can be accessed via the layers button ![image](https://user-images.githubusercontent.com/78108016/196389663-db4e8921-2c46-4780-a4d5-4d759ede084a.png) on the top right.
This allows you to choose between a light or dark street map, or a satellite image map.
## History
The cloud mapper is capable of playing back data received over 24 hours. As long as your KrakenSDR is online, and has the KrakenSDR showing green in the cloud mapper, data is constantly being recorded. Currently, data is recorded for a week, anything older than a week is deleted.
_The 24 hour playback timeframe and week long data retention may change in the future depending on how much server load this causes. Longer timeframes may become an (affordable) paid subscription feature in the future to help offset server running costs._
To access the history feature, click the clock icon ![image](https://github.com/user-attachments/assets/c68594ff-a9b8-4f48-9ab2-51464c6a8c78) at the top, under your customer name, and then on the popup click 'Switch'.
Select the grouping, or individual KrakenSDRs that you would like to be part of the playback.
Select the timeframe that you would like to playback. Currently, 24 hours is the maximum length of time that can be selected.
Select the VFO Frequency that you would like to playback.
Select the heatmap decay time. Currently choices of 1 minute to 10 minutes is possible.
Now to playback at 1x speed (1 second = 1 decay interval), press the play button.
If you want to playback at a faster timelapse speed, you will need to precompute the heatmap data for this time frame first. To do this, click on the 'Precompute Heatmap' button. This may take a few minutes to complete. Once completed, you will be able to select a playback speed of 2x, 4x or 8x.
## Offline Log Files
Kraken Pro Cloud can be used to visualize logs produced directly from the KrakenSDR core software created in the web GUI via the Local Data Recording feature, or for logs saved via the Android App.
To access the offline log files plotting menu, click on the file icon ![image](https://github.com/user-attachments/assets/aa255103-cd4f-4d46-8533-3501fe296ca4) under your customer name and then click 'Switch' on the popup.
To open a log file click on the folder icon next to the 'Log Files' text. Choose your .csv log file and click open.
If the file contains multi-VFOs, select the VFO you are interested in.
After a few moments, you should see the logfile load in. The heatmap calculation may take a few moments longer if the log file is large.
![image](https://user-images.githubusercontent.com/78108016/196309714-aacc7933-f6f2-45ed-80f0-e3483408a7f3.png)
You can click on individual data points on the map for more information about that particular point, as well as a drawing of the lobe.
## Moving Markers with Data
You can upload coordinate data to the KrakenSDR server and have it plotted as a marker on the map. This is useful for verifying a KrakenSDR setup, for example by driving around your target area with a beacon and GPS, or using a weather balloon radiosonde.
A Python script that shows an example of how to upload data to the server can be found at https://github.com/krakenrf/krakensdr_docs/blob/main/misc_scripts/sondehub_krakenmap.py. The script uses the SondeHub API to receive GPS coordinates of a weather balloon. The GPS coordinates are then forwarded to the Kraken Pro Cloud server.
# Future Features
Our developer is currently working on new advanced features, some of which may require a subscription payment. These features include
- Object Tracking: The ability to automatically track an object.
- More than three KrakenSDRs
- Beacon ID: The ability to track KrakenSDR beacons that may be transmitting unique IDs but on the same frequency.