We have a couple of presentations about web-based software
and radio. In my case, my interest in web-based VR was to access
signal that were not accessible from my locations using direct
receptions. And I'm interested in very low frequency time transfer
and especially the signal broadcast from UK from interns.
So that's too far from my locations and that's hence my use of the QSDR
web-based network. So first of all, let me remind you why
historically there has been very low frequency communication
and why there is renewed interest in this technology.
I'm going to talk quickly about briefly about the performance of
the various time transfer signal you have access in Western Europe.
And I'm going to focus on one particular signal that has been important
from the US and that's been broadcast by the UK, which is
enhanced low-run, ill-run. So I'm going to get in the details to show you
how I use the QSDR signal to get a detailed understanding of ill-run
CRC for the raw correction payload structure and I'm going to show you
some of results. So to the best of my knowledge, this is the first open source
ill-run decoder available. So just as a quick reminder at a space age
where everyone's forgotten that there was a point where there was no satellite
in space, why are we actually broadcasting radio frequency signal
over satellites? Well, it's very simple. It's about a direct line of
size range. If you're on the surface of the earth because earth is a sphere,
well, you have a finite line of size and the further away your transmitter
the longer this communication range. If I do a quick calculation,
which is just trigonometry of a guy on the surface of the earth
and the satellite flying at an orbit are just by simple trigonometry,
you can show that the length of this arc will be something like
8,500 kilometers if you have a GNSS signal at 20,000 kilometers away
and you can have a geostation satellite which you basically cover half of a surface of
the earth, so 20,000 kilometers on both sides. So that's very convenient, but satellites are far away
prone to spoofing and jamming and rather challenging to launch. So
historically, you had a way of broadcasting beyond direct line of size using the
ionostric bouncing on the ionostric layer, which is low frequency, which
happens to be limited by the cutoff frequency of a plasma in the ionostric here.
So low frequency are 30 to 30 earth signals and they benefit from this ionostric effect.
As an example, my watch is synchronized every night when the broadcast of the
LF signal is best using the DCF 77 German broadcast station. Now in the lab,
I have a few of these webber stations, which is also synchronized on DCF 77,
gives you millisecond accuracy that sometimes fails to decode the date because
there's so much noise in our lab at such the LF frequency. So
you get high resolution, but don't charge the date. So if you look around, so this is for
example, one of the manual of my watch, and actually this watch, we'll have a decoder,
it will detect where it is located, it will use UVV in the U.S., it will use JJY
or the Chinese in Southeast Asia and in Europe, it's using either MSF in the U.K., DCF 77 in
Central Europe from Germany, no one's using the French ALS because it's subject to
licensing and that's an issue. So, capture or decide it to use MSF
DCF 77, YYVB, JJY, the Chinese broadcast station as well.
So this gives me an overview of what are the signal we have access in Western Europe.
So most of us will know DCF 77, MSF 60 kilohertz, ALS 162, which used to be for
a French speaking audience, used to be fronceteer and they stop broadcasting the AM,
but there are so many strategic French users of the timing signal that they keep on broadcasting
162 kilohertz, which is phase modulated. I'm going to show you. So the day here are
dates of launch and dates of update of the technology. Now, some of the people who are
sensitive to time transfer are the energy and the smart grid. So in Germany, they created EFR,
which is a signal dedicated for a signal for a smart grid processing. And if you're interested,
there is a beautiful presentation at CCC last year about spoofing the EFR signal. And they actually
realized that it was used in much more powerful production plan that originally expected.
At the moment, you might know that there is a bit of jamming around the Baltic Sea,
between Ukraine, Russia and the Dan-American Norway. And so in the Baltic Sea, there's a creation
of the R mode, not exactly why this people are creating yet a new protocol, because they're basically
recreated exactly what the Americans created during the Second World War to drive their
bomber to Germany, which was called Loran Long Range. Now, Loran was initially a two-megahertz
signal, which was upgraded, so rather a minimalistic range. And it was upgraded to 100 kilohertz
in 1958. And since then, we had this Baltic Sea long run for positioning, and if we need positioning,
we need high-resolution time transfer. Loran has slowly decayed, because everyone got familiar with
GNSS, and now with the Ukraine War, people are getting familiar again with lots of GNSS,
and maybe there's a good idea to keep a backup solution, actually. So I do not access the Loran
signal. One reason being that I don't have a big FN10, I remember 100 kilohertz is 3 kilometer
wavelength, and there is a fundamental rule, which actually was published in 1947,
that says that if you have an antenna, which is much more than the wavelength, it must necessarily
be resonant and high-q-factor, that's that's the relationship. So if you want to recover this
CF77 MSF, L162, and Loran 100 kilohertz, either you have a huge antenna, or you need multiple
antennas, but you're going to have one small antenna receiving all these guys. Now, rather than focusing
on receiving these guys myself, I looked at what I can fetch online. Now, you might all be familiar
with the WebAs ER from the University of Twenton. It works, but there are some limitations.
First of all, if you look at the manual, so you cannot find a way of automating
recording from WebAs ER from Twenton. And if you look at the manual that they tell you that
including distribution part are entirely for reverse engineering is not allowed, and that's not exactly
my conception of what open source means. So that's what we're going to forget about WebAs ER,
and also WebAs ER is not timestamped. So I was more interested in timestamping because I wanted
to have some time transfer capability, and that's exactly what QES ER is giving you. So this is
the web interface of QES ER. Not only does it give you timestamp samples, but it also gives you
the ability through an open QE client automated recording capability using patent scripts.
So this is the list of broadcasts, sorry, the receiver. So the French ALS162, DCF77,
in Germany, entered with Iloran Abwehr, and these are all the stations I've been looking at
when recording. So what do we look like? This is a French system. Remember, the French
system was next to the AM broadcast of Constantinople. So it's very narrow bandwidth, a few
Hertz. So you're going from plus one region to minus one region in 20 milliseconds. So basically,
you have a few Hertz bandwidth. And you remember from the radar equations that the time
transfer capability is inverse of the bandwidth. So this is the time transfer I recorded this over
a week of the various stations I showed you earlier, super simple decoding process, look at the
zero crossing of the phase, and you get something in the millisecond range. The offset is the time
of flight because there's no location of compensation. So what you're interested in is the line
thickness, basically, fraction of a millisecond. Now if you go for DCF77, since 1988,
Hetzel added on top of the AM modulation, a spread spectrum phase modulation, and this is
750 Hertz wide. So you already see that DCF77 is much now or much better time transfer capability.
And finally, you look at Loran, so the long range, initially developed 1942, it's part of
MIT radiation lab publication that was recording all the development of US radio frequency
communications during Stephen World War. And this is the kind of output that you get.
Now you might say, hey, if it's the same thickness as the previous lines, what's the benefit
of using Loran? Well, I change the scale. If you put this on the same scale as earlier,
this is what you get from Loran. So remember, Loran is dedicated to location and locations
to saturation, it's time of flight. So what the Americans got from their usage of system for
positioning is not just a few Hertz, as DCFs, as an L362 or a few hundred Hertz, like DCF77,
they got 20 kilohertz. Now, 20 kilohertz, that 100 kilohertz is a significant fraction of a spectrum.
But this is what they got and the benefit of using a 20 kilohertz wide signal is your time transfer
capability is much, much better. Now, Loran, we've seen earlier, Loran, we've seen earlier
that we had these phase modulations for L362, Loran is based on these pulses. And I'm going to
spend a bit of time now showing you the details of how these pulses are analyzed and how we look
at the Loran protocol using the QESR recordings. Just before we get in the details, this was published
February 17, 2022. I don't know if you have in mind the date when Russia invaded Ukraine,
exactly one week after this. And you might or might not trust GPSW, but so,
Glodas is a Russian GNSS and actually, the Russians have been using the equivalent of Loran,
I wouldn't have pronounced the name because I don't know how to pronounce it, CHYKA. And
well, we see so many pictures of CRPA GNSS antennas, but I'm not sure this prediction
of ditching Glodas and going from Loran is correct, but it's a matter of fact that without
Crimea, your Loran network from Russia will be hard to use over Ukraine. Maybe just a coincidence.
So what is Loran? Loran is a set of broadcasting stations, a master and secondaries, and these people
are broadcasting at the same time, so you need to have some differentiation, it's CDA-A, time
time division multiple access. So you have various pulses, in X-axis is the time, you've got a master,
you've got a few secondaries, and you see these pulses that we've been recording from the QESR.
Now these pulses have a polarity, not only do I have a magnitude, but if you can also look at the
sign, and the polarity will tell you by the sequence of polarity, whether it's a master or second
there is broadcasting, and this is exactly what you're seeing, so in blue is the magnitude,
and in red is the phase of the baseband signal, because the QESR does not give you access to
100, 200 kilohertz, you've got the baseband signal. Now the difference between Loran, the historic
Loran from the US and the Loran and hence Loran, is that since 2000s, there has been the addition
of a digital modulation. Now surprisingly enough, this was developed at Delft University by the Dutch
people in Europe, and it's called Eurofix. Now Eurofix adds plus or minus 1 microsecond offset
over these pulses, and if you look at plus or 1 microsecond at 10 microsecond period 100 kilohertz,
it's plus or minus 36 degree phase shift. So not only you have a plus, 90 degree or minus 90 degree,
the tell you is it's a master of secondary, but you see that you've both pulses plus 36 degree
or minus 36 degree, and this gives you the big value that they added. The sum of these bits of
sets are new, so that non-Loran receivers or Loran receiver can still get an accurate timing. So
the sum of these positive and negative pulses will cancel out, so that the average
seal operates for proper Loran, Loran broadcast receiver. Now this Loran protocol is
partly documented in an ITU documentation. It's been now promoted by an American company called
Eurofix enough, and it seems to be sold or promoted by a Dutch company whose got many
document manuals online, and these manuals are much more detailed than they should be, but that's
good for us because it gives us a lot of information. So when you look at the phase that I showed
you earlier, the QESDR is time-stamped, but obviously it's not a GPS discipline oscillator,
because when you look at the phase, you see it's slowly drifting for all the master and secondary
recording. So obviously this is a receiver drifting also because the master and secondary of Loran
are driven by seismic clock and seismic clocks are not drifting by definition. And so you first
you must first cancel out the local oscillator drift of your QESDR recording, and then when you
look at this plus or minus 36 degree at all the earlier, so you remove the plus or minus 90,
which is of course facing information, and you see on the histogram that we have minus 36 degree,
plus 36 degrees, or chances that we will be able to decode the phases and the bits are pretty good.
So then you get into the ITU documentation that describes, so this is not invented. This is from the ITU
published in 1996, if I remember well. And what they tell you is that actually they use a
tristate because your phases can be minus 1, 0 or plus 1. And actually yesterday I discovered there
was a both meeting of people working with free treats. So I was not even aware that people were
doing this kind of statistics, but yet people are more familiar with bits. So you convert the
treats to bits through this table. Again, you will see that the sum of all the phases is 0,
and what you actually end up having is 120, so out of your six treats, you get 127 possible bits.
So these are seven bits sequences. So first of all, you need to translate your free phase states
into bits. And once you get your bits, then you need to analyze the payload, the content.
If you're familiar with continuous data stream with just in earlier advice presentation,
usually you put a sync word because the sync word gives you the starting of your, of your
frame. In Iran, there is no such thing as a sync word, so you need to find a way of identifying
where is the beginning of a sentence. One thing we do know is that the payload is 70 bits,
including 56 data, 14 bits CRC, and 140 bits for the forward error correction reads Solomon.
So we know one thing, we know that the total message length is 210 bits long.
And if you draw the phases as 210 values by the slow time over here, obviously you do see some
pattern, these are the useful data, these are the forward error correction which looks random.
So visually, you do identify where is the beginning of a sentence. But how do you automate this
process? So there's a few data online. I used to work on RDS, one of the very first projects to
get me into a SDR was the rate of data system that you have on the FM broadcast. And if you read the
RDS documentation, they put a CRC at every sentence that they sent. And they tell you explicitly
in RDS that you should be using. So you just run for each big position what would be the CRC
for a given payload. And if CRC beats actually match your calculation, then you find the
beginning of a frame. So this is one way. There is another approach which is using the forward
error correction, which is pretty much the same, except that I did not know at this time how the
forward error correction was working, whereas CRC is much easier to implement than read Solomon.
So what I did is implement the CRC. But if you're familiar with CRC between the documentation
and the implementation, there's so many things you can change. You can flip the input bit,
you can flip the polynomial coefficient, you can flip the resulting CRC. You can save at the
place instead of assigning minus 36 degree and plus 36 degree to minus one and plus one stage.
You can flip the conversion from phase-state to big-state. So there is so many degrees of freedom
that it does take a bit of trial and error. It actually took us two months to realize that there
were so many degrees of freedom because, of course, for the first two months, it was failing.
And then at some day, it was a Eurocar morning. After another night of trying this,
going to the lab in the morning, let's see again if it failed. And one morning you come and you
see the green lines and that's just one of the few beautiful morning when you come when you realize.
So this is what happens. The green lines, you've got, on the left, is the big index. So that's
a position in the file. Then you've got the data. Then you've got the 14-bit CRC that we calculated.
All of these lines, I only displayed the one for which the CRC matches the actual recording.
And then you've got the four-direction that's better later. Now you see here that we identified
sentences, position 14 and 15 as starting. Then 225, 226. Then 435, 442, 443. So actually,
this method, I had not realized initially, but it's kind of weak because you can demonstrate
that in the CRC, if you make a cyclic rotation of the payload, you make the same cyclic
rotation of the CRC checksum. And this means that if you have the right payload at this location,
and if you just flip the beginning and the end, well you end up having the same CRC over here.
And so you might have some fast detection. Yet, because we know that it's only 2010 bits
spacing between sentences, if you only keep the one that are separated by 2010 bits, which I did
in the green lines here, you get the right sentences. And this is a point where we can start
having fun because we know where the sentences start. We know what the CRC is. So now,
well, now we start analyzing. So I told you there is this Dutch company,
Rio Tronica, selling Iloran hardware, and their manual are super detailed,
actually it's written that the guy who invented your fix, they can show off. And here I'm just
showing you these are the bits that we decoded, and everything has to be bit flipped. So they always
start with a least significant bit to the right. So whenever you see a sentence, you must flip the
bits, yet another awkward aspect. But when you do this and you look at the manuals from Real Tronica,
you end up finding that it's a UTC broadcast message, tag number one. You have to remember to flip
a bit. So you take these bits and you flip that upside down. And you look, this is the seconds
within the hour, precise time with 10 and a second, and you've got the leap second between
Lauran C and UTC. And if you look at the documentation, indeed, Lauran is 27 of 2 UTC.
And then if you continue, you're sorry here, you've got the next message,
subtype. Now you can have another type of UTC message, which is what is the date. And you find that
you can actually decode the hour of a year. And you take one of these online, one of these online
calculators that gives you what is the hour of a year. And you actually, indeed, find that this
thing was recorded October 14, which is indeed the name of the file that I saved, which includes
the time at which it was recorded. And finally, you see that the year is 2025. So this is all correct.
So now we've learned how to decode Lauran. We have our first item where we can not only get
the precise time from the analog signal, but we get the decode payload, which is UTC time.
One limitation of the historic Lauran is that you're measuring surface wave time of flight.
Now the problem with surface waves is they're propagating between the waveguide, which is made
on the one hand by the atmosphere. And on the other hand, by whatever you have in the surface of
Earth, whether it's soft water, ideal for wave, but when it's propagated over ground,
whether it's raining, whether you're dry ground, your velocity of a surface wave differs.
Now this, I was first introduced to this for lightning detection. You might have heard of a
Greek project to us about lightning detection, where they introduce this correction factor of
the speed of electromagnetic waves, depending on whether they propagate over sea or ground. And this
in Iran is this ASF differential time in correction. Unfortunately, this message seems to be
proprietary and I could not find any documentation. So if there's anyone who knows about ASF,
I would be eager. Well, to know a bit more, what we do see here is that we know from the
documentation that 13 is the ASF message. And we see that if you remember to flip the bits,
it's all zeros and a tiny value. So I'm pretty sure it's something like delay, and if
look at the documentation, they're mostly all written in two nanoseconds, multiple. So this
looks very much to me like a station identifier and a time delay, multiple of two nanoseconds,
but there's just a hint. And then you've got another message which is the health of the broadcast
mutation. So when you're looking at Antoine, Antoine is actually in Western Europe. There's
only one country that keeps on broadcasting Iran, because remember, Iran is American, so there's
only one country in Western Europe that's a Persian horse of the US. And so UK still broadcasting
Iran over the other Western Europe decided to ditch their lower annotations. So actually the poor
Antoine has to broadcast both the master and the secondary signal because there is no over secondary
broadcast station in Western Europe. And so when you look at the messages, you find this health
state, and this is a 10-bit station ID. There's a free-bit station health. These messages were not
publicly available. The only thing I figured out by myself is I knew that Antoine was on the wrong
side of a green-witch meridian. It wasn't the west. And so being on the west, it was a negative
longitude. And when you see this quantity here, you have a hint that when you've got all these
leading ones, that's a good hint that this is a negative quantity in two complement. And if you
just convert these binary numbers as a digit, a 32 digit, you actually end up finding something
that looks like this, which multiplied by 10 to a minus 7 gives you a longitude and latitude
you ask this to open street maps and you get exactly on the Antoine broadcast station. So this
is correct. And actually there was a discussion, if you're familiar with the time that's
mailing list, that's a list of people who are interested in time and frequency, the offer of
WebAsYR published a couple of copy-paste that he made because he claims to have written an
ill-around recorder, but he doesn't he doesn't publish anything. And the few lines he published
on the mailing list matched the identifier of this station. So this is all matching very well.
Yeah, I just wanted to add that the offer of a Eurofix revision 2015, which is one of
his professors of dancing university, was kind enough to send me the update of a Eurofix revision
you will not find it on the internet. It's not publicly available, but he sent me a copy. So I can
tell you that these are correct and now you have your own information despite not being in the Eurofix
revision. So okay, we've got the payload, we've got the CRC, we would like to have a read Solomon.
And a read Solomon is one of his, I only use read Solomon in the case of CCSDS and CCSDS,
despite all of the information that Daniel is sharing on his blog about the various declination
of CCSDS when even within NASA they cannot agree what is the definition of CCSDS.
I had never had to read the read Solomon by myself. So the first thing I was not familiar with
is that when people tell you that they are doing read Solomon's 3010, well it doesn't exist
3010. You cannot make a read Solomon's 30 because 30 is not a power of 2 minus 1. So actually
it must be the closest power of 2, which should be 32. However, you saw earlier that we're working
with 7 bits and 7 bit packets, they call it GF7 and I had again to learn how sorry GF128,
2 to the 7. And I heard I learned the naming convention this means that you get data which are
127, possibly with a lot of leading zeros followed by, so when you say you've got 3010,
it means you've got 10 bit payload, 30 bit word syncword. And this means that actually out of
1307 data you've got 97 leading zeros, then the 10 useful data leading to 127 reads Solomon output.
So this is actually what you end up processing. And then again Daniel has been super useful during
the Christmas vacation answering very quickly to my request because I couldn't understand anything
to what I was looking at and he knows. And so Daniel figured out that when you actually,
this is a short sentence that I had not even noticed, the relation between GF128 elements in binary
data should be to consider the value of a power of alpha as a 7 bit binary. And I didn't know
what that meant, but Daniel identified this means you're taking alpha to the power of B and not
the B's as the powers of a polynomial coefficients here. And so I will not get into detail. I'll
just show you the piece of code that Daniel sent me and thanks to which this all works.
And so the trick is that you need to convert from the input binary state to the power,
then you do all the decoding. So usually you don't want to encode, you just want to decode,
but then you decode and you have to go back into your original state. So this is totally from each
and that's my understanding what is the difference between these powers of alpha and alpha to the power.
So at the end of the day, what does this mean? Well, if on purpose, I change one byte in the message.
So I corrupt one message on purpose. You see that the fact is doing its job. It found that I had
corrupted a data. So I equals 5. It detected the error on solution 5. And it said you put 42,
but originally it was 1c. So the further correction is working now. And if you want to use it
for your synchronization, it's working as well. So now concluding this presentation,
okay, we did an turn, but does it work somewhere else? So first of all, we know that the Koreans
are using illoran. If you look at the countries using illoran, basically Western Europe decided
to ditch it because it's not used. You have got South Korea because North Korea is jamming their
geniuses. You've got South Korea, because they have Iran next door. You've got China. So all the
countries during illoran are the one subject to Genesis loss. So Korea, Korea, we only have one
signal that we can get from QSDR. And unfortunately, it does not seem to be holding any information.
But that doesn't conclude much because there's at least four stations in Korea,
three of which I have never been able to listen at. So that's the limitation of the QSDR receivers.
Then we've got, I told you the Russians, which are supposed to use illoran. And there is one QSDR
in Finland, which is getting a very nice signal which I attribute Russia, because I don't
see who else would be broadcasting illoran compatibility with Syria. And again, the red is the master,
the green is one of the second there is. And I don't think I see a neurofix message on the Russian
illoran. So at the moment this is still working progress. And then we've got Saudi Arabia.
And Saudi Arabia, there is one QSDR receiver in Qatar working very well. And actually it's only
a few kilometers even from this, I think it's called Salwa. Yeah, this broadcast station Saudi Arabia.
I'm not going to do the whole story again, but if you record the data from this QSDR,
the structure is a little different because somehow usually you're supposed to have eight
bits on the second there is nine bits on the master. And somehow the Saudis, they have nine bits
everywhere. So for decoding illoran, I just get rid of the nine bits. And if you get rid of the nine
bits, you get something, again, I'm not going to get people hold the demonstration. But you get a
latitude, you get a longitude. This time I had to ask Google Maps, because Open Street Maps
doesn't have anything in Saudi Arabia. And you end up finding exactly the location of a
map. And if you decode the message, you see that this is called the Whiskey Station,
which I can't sign up for Saudi Arabia. So that's the decoding process of the Saudis signal,
which is meeting the Europe's definition. So this concludes my exploration of illoran illoran
is a technology that has been very long that I wanted to work on illoran. And last summary,
if I remember well in July, the French president went to the UK. And there was a press,
really saying, France is going to work with illoran. No one knows who decided this, no one who
affected the side of that illoran will be broadcast in France. And so because I'm not working on
in the primary methodologies institute, I have nothing to say. But because I'm working on HDR,
I've been informally asked, what do you think of it? And I said, okay, you're going to import
an American technology, you don't know how it works, you don't know how to decode it,
it doesn't know how to use it by yourself. That's very clever. So I don't have anything to say about
it, but at least I can tell you now that we have an open source illoran decoder that affects
my contributions of illoran. I'm interested in time and presidency transfer. These are
all deviations. If you're familiar, if you're not familiar, just take this as a standard deviation,
the higher it is, the worse it is. This is a French L1062, this is DCF77,
and this is a loran from Qatar. You obviously see that the broader the bandwidth,
that they're the timing capability. I tried to show you that we could do this all of this
without relying on actual real signals. This is all relying on web services. We have become familiar
with illoran, the digital payload, the CRC, the four-layer correction. We've been able to use
mostly publicly document, publicly available documents to decipher the payload, working progress.
It would be really nice to have more signal from the Koreans, because at the moment I don't
have one signal which doesn't carry anything. The Chinese, there's a lot of signal from China
that need to be decoded. I recently discovered one key way is the receiver in Tushu in South
and Japan, which is getting a very good signal. The Russians, I need to figure out why they're
not broadcasting the Eurofic signal. There is one message that is published on Korea. You've got
a lot of online documents from the Koreans about GNSS-proofing and protection. The Koreans are broadcasting
one message, which is called Message Number 10, which I've never seen, and I would really be eager
to detect this information. With this website, with the KiwiSDR software, it's a bear because
public monitor be code, and with this, I thank you for attention.