Decoding James Webb Space Telescope

Decoding James Webb Space Telescope

The James Webb Situation Telescope doubtlessly wants no introduction, since it is a ways liable to be fundamental and smartly-known mission of the closing years. It used to be launched on Christmas day from Kourou, French Guiana, into a direct switch orbit to the Solar-Earth L2 Lagrange level. JWST makes exhaust of S-band at 2270.5 MHz to transmit telemetry. The science files will likely be transmitted in K-band at 29.5 GHz, with a rate of up to 28 Mbps.

After start, the fundamental groundstation to catch the S-band label from JWST used to be the 10 m antenna from the Italian Situation Company in Malindi, Kenya. This groundstation commanded the telemetry rate to enhance from 1 kbps to 4 kbps. After this, the spacecraft’s footprint persisted transferring to the east, and it used to be tracked for a pair of hours by the DSN in Canberra. No doubt one of the most things that Canberra did used to be to enhance the telemetry rate to 40 kbps, which it appears is the most to be ragged in the mission.

As JWST moved a ways from Earth, its footprint started transferring west. After Canberra, the spacecraft used to be tracked by Madrid. Edgar Kaiser DF2MZ, Iban Cardona EB3FRN and assorted newbie observers in Europe received the S-band telemetry label. When Iban started receiving the label, it used to be again the utilization of 4 kbps, however some time after, Madrid switched it to 40 kbps.

At 00: 50 UTC on December 26, the spacecraft made its first correction burn, which lasted an excellent 65 minutes. Edgar caught this maneouvre in the Doppler observe.

In a while, between 7: 30 and 11: 30 UTC, I had been receiving the label with truly appropriate one of the most 6.1 metre dishes at Allen Telescope Array. The telemetry rate used to be 40 kbps and the spacecraft used to be presumably in lock with Goldstone, even though it didn’t seem in DSN now. I’ll submit the recording in Zenodo as fashionable, however for the explanation that files are quite tall I’ll doubtlessly prick back the sample rate, so publishing the files will settle some time.

In the leisure of this post I give a description of the telemetry of JWST and pause a first watch at the telemetry files.

The decrease rate configurations of the telemetry label of JWST exhaust PCM/PSK/PM with a 40 kHz subcarrier, whereas the 40 kbps configuration makes exhaust of PCM/PM/NRZ. The spacecraft makes exhaust of CCSDS concatenated coding, so the 4 kbps configuration if truth be told corresponds to precisely 8 kbaud, whereas 40 kbps is 80 kbaud.

Fixed with the facts recorded by Iban, the 4 kbps telemetry makes exhaust of a single (252, 220) Reed-Solomon codeword. This preference is appealing, because it presents a frame size of 2048 bits at the enter of the convolutional encoder, taking into fable the ASM. Quite a bit of Chinese language missions corresponding to Tianwen-1 and Chang’e 5 have ragged this codeword size, for the explanation that baudrates they exhaust are powers of two, corresponding to 2048 or 16384 baud. By having 2048 bit frames, the score an amazing round label for the time it takes to transmit a frame, corresponding to 2 seconds, or 0.25 seconds. On the opposite hand, in the case of JWST the baudrate is no longer a energy of two, however quite a “fantastic round amount in defective 10”, corresponding to 4000 or 40000. Due to this truth, they don’t score these fantastic round intervals for the frames. Thus, it is a ways unheard of that they’ve chosen the shortened size of (252, 220) quite than the plump size of (255, 223).

The 40 kbps telemetry makes exhaust of 5 interleaved (252, 220) Reed-Solomon codewords, so the total frame size is 1100 files bytes.

The GNU Radio decoder flowgraph that I ragged with Iban’s recording, which comprises 4 kbps telemetry, will also be downloaded here. It is confirmed in the settle underneath.

GNU Radio decoder for the 4 kbps telemetry

Unfortunately, the SNR in Iban’s recordings is a shrimp bit decrease than wished for decoding, and I haven’t been in a map to score a single Reed-Solomon frame decoded accurately. Silent, taking into fable that the facts has errors, one can watch at the frames and learn some things, for the explanation that Reed-Solomon code is systematic. Right here is what has been doing with the recordings.

For the 40 kbps telemetry in the ATA recordings I’ve ragged this flowgraph, which is confirmed here.

GNU Radio decoder for the 40 kbps telemetry (the utilization of twin polarization)

The antenna feeds in the ATA exhaust twin linear polarization (X and Y), so the Auto-polarization block combines the 2 polarizations to maximise the SNR. The label from JWST is nominally circularly polarized (RHCP, I keep in mind), however for the explanation that low assemble antenna is a patch antenna and we don’t look it straight from its boresight route, in traditional we can look some elliptical polarization (look my post in regards to the Chang’e 5 polarization). I seen that at the starting of the recording there used to be rather more label energy in the X polarization than in the Y polarization. I’ll have to take a look at how this evolves all the map in which via the recording. The settle underneath reveals the spectrum of the label the utilization of most appealing the X polarization.

The SNR in the X polarization is barely enough to decode, and one of the most frames will also be decoded, however others no longer. By combining every polarizations we assemble some SNR and it is a ways imaginable to decode a tall part of the frames.

The settle underneath reveals the GUI of the GNU Radio decoder working with the starting of the ATA recording. We can look the adaptation of SNRs between the X and Y polarizations in the simpler left spectrum space. We glance that the symbols are very noisy, so it practically appears magic that the Viterbi and Reed-Solomon decoder are in a map to decode so many factual frames.

GNU Radio recording working with the ATA recording

The frames transmitted by JWST are CCSDS AOS frames. The spacecraft ID is 170 (0xaa), which works the ID ragged in NASA HORIZONS and the SANA registry. There are two virtual channels in exhaust, virtual channel 0, which carries the telemetry, and virtual channel 63, which is Ultimate Sluggish Records. The Ultimate Sluggish Records frames have all the payload (every little thing besides the AOS fundamental header) stuffed with 0x78 bytes, which is ASCII for x.

Roughly 95% of the frames belong to virtual channel 0. The frames in virtual channel 0 private CCSDS Situation Packets the utilization of the M_PDU protocol. The closing 4 bytes of the frame are a trailer. It sounds as if the contents of the trailer cycle via the values 0x010001eb, 0x0904019e, and 0x09080100 every three frames (no longer decrease than end to the starting of the recording). I am no longer obvious what this trailer represents. I don’t keep in mind it is a ways a Communications Hyperlink Management Be aware (as described in the CCSDS TC Situation Records Hyperlink Protocol) because truly appropriate one of the most reserved bits is determined to one as an different of zero because it would. On the opposite hand I will be succesful of’t rule out the probability fully, for the explanation that values of the leisure of the fields could perchance well per chance assemble sense.

The settle underneath reveals the preference of frames misplaced in virtual channel 0 primarily based on the jumps in the virtual channel frame counter. We can look that in the direction of the tip of the recording, because the spacecraft elevation decreases and never straight away goes underneath the elevation cloak, the error rate will increase. Overall, 76% of the frames in virtual channel 0 had been decoded accurately.

Many Situation Packet APIDs are vigorous. As fashionable, I’ve carried out raster plots of every of them in a Jupyter notebook. Glancing via these raster plots, my affect is that there are varied that have complex files buildings, even though there are also many zones padded with zeros. The two figures underneath demonstrate some examples of how the APIDs watch love. The plump listing of plots will also be seen in the Jupyter notebook.

I’ve also seen that there are varied fields with floating level numbers. These usually have a obvious “texture”, so they score no longer appear to be so complex to place in these raster plots.

I’ve tried to plow via all the APIDs, plotting the values of all the floating level fields, even though I haven’t tried to be exhaustive and can also have left some. I haven’t seen any that watch as appealing because the reveal vector files of Tianwen-1. Many of the floating level fields are 32-bit wide (the utilization of IEEE 754 big-endian representation), however there are a pair of that are 64-bit wide.

Perchance the floating level channels that I’ve chanced on more appealing are these adjacent three, which seem in APID 1201, and also in APIDs 1404 and 1727 (in just a few conditions it appears the same or very identical files appears in some fields of just a few assorted APIDs).

Floating level channels in APID 1201

One more put of floating level channels which appears to be like appealing are the following 6 adjacent channels in APID 1755.

Floating level channels in APID 1755

The plump listing of these plots is also in the Jupyter notebook. For the time being I score no longer have any thought of what roughly files any of them are exhibiting. One wants to be careful when interpreting the facts, because there could be even the probability that one of the most fields are no longer in actuality floating level, however integers, even supposing they’ve cheap values when interpreted as floating level.

Potentially I’ll approach attend to these recordings in the next few days, however for now I needed to submit what I’ve to this level. The decoded frames will likely be found in the Github repository and also will likely be received the utilization of git-annex as described in the README.

Join the pack! Join 8000+ others registered users, and score chat, assemble teams, post updates and assemble chums around the enviornment!

Charlie Layers

Charlie Layers

Fill your life with experiences so you always have a great story to tell