Welcome to IridiumLive!
IridiumLive is a Blazor server application which allows for the real-time vizualization of the iridium satellites as they pass above your location.
It is another tool which allows for the visualization of live data coming from gr-iridium. Will not work without it.
You install the application in your local network, and use the browser to interact with it.
Binaries: https://github.com/microp11/iridiumlive/releases
To build/run from source you need dotnet version 3.1.* installed, then run:
git clone https://github.com/microp11/iridiumlive
cd iridiumlive
cd IridiumLive
dotnet run
At this time the following ports have been hard coded:
7777: IridiumLive server port,
15007: udp port for receiving data from gr-iridium and iridium-toolkit.
If the ports cannot be bound to, use:
lsof -i :7777
lsof -i :15007
to find out what's attached to these port(s).
You could use:
lsof -ti :7777 | xargs --no-run-if-empty kill -9
to forcefully clear out the port as part of your pre-start routine.
The data will be provided by your personal install of gr-iridium and iridium-toolkit (see gr-iridium and iridium-toolkit). See bottom of page for quick instructions.
...
import socket
ap = ("192.168.2.10", 15007) sk = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM) def sendOverUdp(line): ...
4. Change the center frequency of the gr-iridium decoder to include the Ring Alert band as described at min 9 in the Stefan “Sec” Zehl, schneider during their presentation at [The Eleventh HOPE (2016): Iridium Satellite Hacking](https://www.youtube.com/watch?time_continue=562&v=JhJT7Cvh6NE&feature=emb_logo).
5. Instantiate the iridium receiver and pipe through decoder, filter and udp transmitter adapting the following command line:
user@computer:~/gr-iridium$ iridium-extractor --offline --multi-frame examples/hackrf.conf | ~/iridium-toolkit/iridium-parser.py -p /dev/stdin /dev/stdout | python udp-for-il.py
6. Only continue to next step if you see udp lines being transmitted:
```python
191
1576397118 | i: 68/s | i_avg: 19/s | q: 0 | q_max: 7 | o: 106/s | ok: 63% | ok: 43/s | ok_avg: 51% | ok: 32064 | ok_avg: 9/s | d: 0
1576397119 | i: 67/s | i_avg: 19/s | q: 0 | q_max: 6 | o: 103/s | ok: 64% | ok: 43/s | ok_avg: 51% | ok: 32108 | ok_avg: 9/s | d: 0
1576397120 | i: 58/s | i_avg: 19/s | q: 0 | q_max: 5 | o: 91/s | ok: 57% | ok: 33/s | ok_avg: 51% | ok: 32142 | ok_avg: 9/s | d: 0
1576397121 | i: 69/s | i_avg: 19/s | q: 0 | q_max: 4 | o: 115/s | ok: 61% | ok: 42/s | ok_avg: 51% | ok: 32185 | ok_avg: 9/s | d: 0
169
173
191
169 <- the length of one blob sent over UDP
173
191
169
This was my first .NET Core web app. Blazor on top of it. Be merciless and gentle!
The following has been tested on RPi 400 with https://sourceforge.net/projects/dragonos-pi64/
Currently DragonOs contains gnuradio 3.8+
Use the following to have your gr-iridium aligned with these versions:
git clone -b maint-3.8 https://github.com/muccc/gr-iridium.git
cd gr-iridium
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig
git clone https://github.com/muccc/iridium-toolkit.git
git checkout -b local-branch-from-commit e173069f43189ee7dfca2875f56ac284e74b17e4