Historic Data Formats
Over time some data formats used in Intermagnet have fallen out of use or become limited in their application. This appendix lists and documents formats that are no longer actively used, so that any historic data that is still available in these formats can be decoded.
Data Transmission via Satellite
In the early years, Intermagnet used satellites for data transmission because computer networks were not available at observatories. Typically communication would take place using a data channel on a weather satellite which had very limited bandwidth (e.g. Meteosat which allowed 649 bytes per transmission, 1 transmission per hour). This required the use of a compressed data format with low resolution. Since that time Internet access at observatories has become common. Satellite transmission, which was used by many observatories and was received at all Intermagnet GINs, is (in 2026) only used internally at the Golden and Ottawa GINs for transport of USGS and NRCan data.
What follows is the description from earlier versions of the Intermagnet Technical Manual of preparing data for transmission via satellite.
In preparation for transmitting data to one of several possible satellites, an IMO will first prepare its data in INTERMAGNET format IMFV2.83 or later. This format, which is fully described in APPENDIX G2, imposes a common structure on the data files, ensuring that all necessary information is included so that the data may be properly decoded at a GIN. Once data are in IMFV2.83, a supplementary encoding step is applied to make the data stream, as transmitted to satellites, exactly compatible with the requirements of the satellite operators. APPENDIX G3 shows the supplementary encoding steps for the GOES and Meteosat satellites along with examples using a specific data set.|app_sat_cod| also provides provisional information about encoding for the GMS satellite.
Geostationary Satellites
Orbiting the earth, 36,000 km above the equator with approximately 72E of longitude between them are four geostationary satellites, METEOSAT, GOESEast, GOES-West, and GMS. The primary function of these satellites is to provide regular updates, to meteorological agencies, of cloud and infra-red image data which they use to produce forecasts of weather conditions worldwide. Along with these imaging facilities the satellites can, at regular time intervals, relay data collected from remote ground based transmitters to users equipped with suitable receiving and decoding equipment.
METEOSAT
Each Data Collection Platform (DCP) that transmits through METEOSAT is allocated a one-minute transmission slot every hour. During this time, the DCP encodes and transmits to the satellite any data input to it during the previous 60 minutes. From the satellite, the data are relayed to the EUMETSAT operations center at Darmstadt, Germany, where they are checked and temporarily stored. The GIN automatically collects the data from the EUMETSAT web site. For more information please contact the Paris GIN manager.
GOES
Observatories transmitting through the GOES East/West satellites output their data every 12 minutes to the satellite; there is no secondary retransmission stage, as is the case with METEOSAT. In the GOES system, the data are transmitted directly to a receiving GIN where they are transferred to the INTERMAGNET web site. This form of communication is simpler, but the GOES link does require a much larger receiving antenna as signals transmitted directly from a geostationary satellite are at a very much lower power than those relayed using the METEOSAT retransmission facility. To overcome the necessity for a large 3-5m receiving dish antenna, users in or near the United States may also access GOES East and West transmissions using a DOMSAT (DOMestic SATellite) receiving station. This is a retransmission facility similar to that used with METEOSAT, providing users with a much stronger signal and hence a considerable reduction in the size of the receiving antenna required (1.2 - 1.8m in diameter).
Transmission Access
The use of satellites and the timed-transmission slots on any of the geostationary satellites is very closely controlled. Before an observatory can transmit data using a satellite, an application must be made to the relevant controlling body. All transmission equipment used must be checked and certified to be of an acceptable standard before a licence and a transmission slot can be granted. Also, although it may be possible to gain free access to geostationary satellites, depending on the institute and the use to which the data is being put, the satellite operators may charge users for access.
Two different types of transmission authority may be necessary before an observatory can transmit its data through a satellite to a GIN:
Authority to transmit to an Earth orbiting apparatus. This is a licence issued by the government of a particular country which gives an institute permission to operate radio transmission equipment. This type of licence may not be necessary, but prospective participants should check with the appropriate regulatory authorities in their country to ensure that they are not contravening any transmission laws in force in their country.
Application must be made to the operators of whichever satellite is accessible from the observatory. APPENDIX B shows the footprints of geostationary satellites and from this users can decide which satellite should provide the best transmission path. Since satellite positions are sometimes changed, those intending to operate an IMO near the edge of a footprint should contact the satellite operators for more detailed information concerning the satellite accessibility. Most satellite operators have a standard application form. A prospective user should write to the operator giving details of the proposed use to which the transmitted data is to be put, a brief description of the project and a request for a transmission slot application form.
If an application form has to be completed, it may include many questions about the operator, site location, and technical questions about the type of DCP, transmission power and whether or not the proposed DCP has been certified for use on this satellite by the satellite operators. To answer these questions, it is usually necessary to contact the DCP supplier.
The completed form is then sent to the respective satellite operator, who, after due deliberation will hopefully issue the applicant with a satellite identification number, a transmission frequency/channel and a specific time slot on the allocated channel.
Alternatively, if the user or the organization to which the user belongs is a member of the World Meteorological Organization (WMO), access to a specific satellite and a transmission slot may be granted simply by quoting an identification number which has been issued by the respective satellite operators to the member state or country.
The length of the time slots allotted to the applicant depends on the satellite which is being accessed. A METEOSAT time slot is 1 minute every hour. On GMS it is 90 seconds every 12 minutes and on GOES, 20 seconds every 12 minutes. During these times users transmit their data. It is essential that the DCP clocks maintain accurate timing, as any transmission outside the allocated time slot will result not only in corruption of the data being transmitted, but also of data transmitted by users on adjacent time slots.
Satellite Operators
Those whose potential IMOs would be serviced by METEOSAT are advised to first contact the PARIS GIN operators for timely information on access to METEOSAT.
Those whose potential IMOs would be serviced by GOES are advised to first contact the GOLDEN GIN operators for timely information on access to GOES.
Satellite Services
Other methods of obtaining permission to transmit via METEOSAT and GOES East and West are:
Through MAEDS (Multisatellite Applications Extended Dissemination Service), which is a commercial organization based in France. This company undertakes to arrange a satellite transmission slot on METEOSAT and GOES.
CLS Service MEADS18, Av. Edouard BelinToulouse Cedex 31055FRANCEThrough North American Collection and Location Service (NACL), which is a company providing similar services to those provided by MAEDS.
Mr. Peter GriffithNorth American Collection & Location bySatellite9200 Basil Court, Suite 306Landover, MD 20785USATelephone: 1-301-341-1814Fax: 1-301-341-2130
These companies have been given the right by EUMETSAT to market environmental data gathering services.
INTERMAGNET Satellite Transmission Format : IMFV2.83
The INTERMAGNET satellite data transmission format IMFV2.83 defines the structure of 126 bytes of magnetic observatory information. METEOSAT users, who must transmit once per hour, will send five 12-minute IMFV2.83 data blocks. GOES users transmit at 12-minute intervals one IMFV2.83 data block encoded in NESS-BINARY (189 bytes). The order of transmission to the satellite will be in byte sequence low-byte first, then high-byte. Refer to APPENDIX G3 for satellite coding examples.REFERENCE MEASUREMENT (RM) or FREE SPACE
|
Day of first sample (1-365/366) |
12 Bits |
1 - 3 [1] |
Minute of the day of first sample (0 - 1439) |
12 Bits |
1 - 3 [1] |
|
Offset for C1 |
8 Bits |
4 |
|
Offset for C2 |
8 Bits |
5 |
|
Offset for C3 |
8 Bits |
6 |
|
Offset for C4 |
8 Bits |
7 |
|
Flag #1 |
8 Bits |
8 |
|
Flag #2 |
8 Bits |
9 |
|
Colatitude in 1/10 degrees (0 - 1800) |
12 Bits |
10 - 12 [1] |
|
Flag #2 |
12 Bits |
10 - 12 [1] |
|
08 BYTES |
FREE SPACE |
64 Bits |
13 - 20 |
10 BYTES |
REFERENCE MEASUREMENT (RM) or FREE SPACE |
80 Bits |
21 - 30 |
|
C1 for Sample 1 |
16 Bits |
31 - 32 |
C2 for Sample 1 |
16 Bits |
33 - 34 |
|
C3 for Sample 1 |
16 Bits |
34 - 35 |
|
… |
… |
… |
|
C1 for Sample 12 |
16 Bits |
119 - 120 |
|
C2 for Sample 12 |
16 Bits |
121 - 122 |
|
C3 for Sample 12 |
16 Bits |
123 - 124 |
|
C4 for Sample 12 |
16 Bits |
125 - 126 |
MSB |
Description |
|---|---|
8 |
Orientation Code Component 1 Component 2 Component 3 Component 4
0 X Y Z F
1 H D Z F
2 D I F
3 Other
|
7 |
|
6 |
Scale factor for X or H |
5 |
Scale factor for Y or D |
4 |
Scale factor for Z or I |
3 |
Scale factor for F |
2 |
Filtering - 0: INTERMAGNET approved filtering, 1: non-approved filtering. See INTERMAGNET terminology “filtering”. |
1 |
Alert capability - The IMO has the ability to detect magnetic events if the flag is set to 1. 0: not active 1: active |
MSB |
Description |
|---|---|
8 |
Sudden storm commencement detected |
7 |
Storm in progress A storm is in progress if the level of magnetic activity is equivalent to K > 4 for past one-hour period. The flag will be reset to zero when the equivalent level of activity drops to K <= 4. |
6 |
0: No Reference Measurement (RM) capability bytes 13-30 are user free space 1: Base Reference Measurement data available inbytes 21-30. Bytes’ 13-20 are user free space. |
5 |
Free (user defined) |
4 |
Free (user defined) |
3 |
Free (user defined) |
2 |
Free (user defined) |
1 |
Free (user defined) |
IMFV2.83 Header Encoding
In IMFV2.83 format, the time stamp and site identification code are encoded in 3-byte strings formed from two 12-bit fields combined as described below:
Time Stamp Input |
Encoded Output |
|---|---|
Least sig. 8 bits of day |
Byte 1 |
Most sig. 4 bits of day |
Byte 2, four least sig. bits |
Least sig. 4 bits of minute |
Byte 2, four most sig. bits |
Most sig. 8 bits of minute |
Byte 3 |
Site Identification Code Input |
Encoded Output |
|---|---|
Least sig. 8 bits of colatitude |
Byte 10 |
Most sig. 4 bits of colatitude |
Byte 11, four least sig. bits |
Least sig. 4 bits of east longitude |
Byte 11, four most sig. bits |
Most sig. 8 bits of east longitude |
Byte 12 |
Bit (MSB to LSB) |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Hex |
Day 30 (first item) |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
01E |
Minute 684 (second item) |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
2AC |
Byte 0 |
Byte 1 |
Byte 2 |
||||
|---|---|---|---|---|---|---|
Byte |
0001 |
1110 |
1100 |
0000 |
0010 |
1001 |
Hex |
1 |
E |
C |
0 |
2 |
A |
Value |
8 LSB Day |
4 LSB Minute |
4 MSB Day |
8 MSB Minute |
||
IMFV2.83 Data Value Encoding
Constraints on the bandwidth of a GOES satellite communications channel dictate a maximum transmission block of 126 bytes of data once every 12 minutes from an INTERMAGNET Magnetic Observatory (IMO). To conserve bytes, each measurement of a magnetic component is represented using only 2 bytes which, upon reception, are interpreted together with header information to produce a resultant 3-byte representation at the Geomagnetic Information Node (GIN). All magnetic field values in this encoding description are expressed in tenths of nanoTeslas (tnT) unless otherwise noted. The resolution of the measurements is 1 tnT and so a 16-bit representation allows a 216 = 65536 tnT (6553.6 nT) dynamic range within a 12-minute IMFV2.83 block. This is inadequate to accomodate magnetic storms at some locations, and so the encoding scheme produces measurements at reduced sensitivity when extremely large excursions are present. The INTERMAGNET data encoding produces an Offset (OFF) value and a Scale Factor (SF) flag bit for each component, as well as the encoded individual minute values (see diagram at end of appendix). The OFF and SF apply to all measurements of a component within an IMFV2.83 data block.
We define the terms used in encoding as follows:
Data(i) |
Set of minute values measured in tnT |
Dpos (i) |
Minute values shifted by 1048576 to be always positive |
Dmax |
Largest Dpos (i) of a given component in IMFV2.83 block |
Dmin |
Smallest Dpos (i) of a given component in IMFV2.83 block |
OFF |
Offset value |
BF |
Bias Factor = 8192 |
SM |
Scale Multiplier for sensitivity of encoded data |
SF |
Scale Factor flag for sensivity of encoded data |
E(i) |
Set of encoded minute values |
Numbers used in this encoding algorithm have been chosen to permit simple binary arithmetic operations:
8192 = 213
57344 = 216 - 213
1048576 = 220
2097151 = 221 - 1
Encoding of a 12-minute IMFV2.83 data block begins by adding a constant 1048576 tnT to the minute values Data(i) to produce a new data set \(D_{pos}(i)\) whose values are always positive.
The limiting values of these \(D_{pos}(i)\) are 0 and 2097151tnT. An Offset value (OFF) is next computed from the \(D_{pos}(i)\) for each component by using the minimum value of the component, \(D_{min}\).
where INT means the truncated integer after the division. The OFF value for each component may be anywhere in the range of 0 to 255 and the OFF values for the four components are stored in bytes 4,5,6,7 of the header for use in decoding the data after reception at a GIN. A Scale Multiplier (SM) for each component is now computed:
The encoding algorithm produces an SM whose value is governed by the range of \(D_{pos}(i)\) within a data block. In this application to format IMFV2.83, however, SM can in practice be limited to values of either 1 or 2. Format IMFV2.83 reserves only one flag bit per component for storing scale information. These flags are bits 6,5,4,3 of byte 8 in the header, labelled Scale Factor (SF). Flag bit SF=0 represents SM=1, where the encoded data are considered at normal sensitivity (1 tnT/bit). At SM=1, the dynamic range available in the data block is at least 49152 tnT (= 57344-BF) and at most 57344 tnT, depending upon where the \(D_{min}\) value sits relative to the quantity OFF*BF. Flag bit SF=1 represents SM=2, where the encoded data are considered as half sensitivity (2 tnT/bit). At SM=2, the dynamic range in the data block is at least 106496 tnT (= 2*57344-BF) and at most 114688 tnT (= 2*57344) depending again upon where \(D_{min}\) is relative to the quantity OFF*BF. Encoded data values are now computed as:
and are stored in bytes 31 to 126. Upon reception at the GIN, encoded data are reconstituted using the expression:
This reconstitution is exact for SM=1 but rounded down by no more than 2 tnT on those infrequent occasions when SM=2. In summary, the expressions defining each of the encoding and reconstitution steps are:
\(D_{pos}(i) = Data(i) + 1048576\)
\(OFF = INT (D_{min}/BF)\)
\(SM = INT ((D_{max} - OFF*BF)/57344) + 1\)
\(E(i) = INT((D_{pos}(i) - OFF*BF)/SM)\)
\(Data(i) = E(i)*SM + OFF*BF - 1048576\)
Scale Factor flags are set
SF |
SM |
|---|---|
0 |
1 |
1 |
2 |
Note
E(i) set to 65535 (FFFF hex) indicates missing or invalid data.
Satellite Coding Examples
Coding Example for Goes Satellite
Each block of 126 bytes in IMFV2.83 must be encoded in 189 NESS-BINARY bytes (NESSbytes). NESSBINARY breaks each pair of source bytes (word) into 3 NESSbytes. If the bits of the source word are B15-B0 with B15 the most significant, then these are placed right-justified in NESSbytes as follows: B15-B12 are in the first NESSbyte, B11-B6 are in the second NESSbyte and B5-B0 are in the third NESSbyte. Within NESSbytes, bit 6 is always set to 1 and bit 7 is set for odd parity. In the first NESSbyte, bits 5 and 4 are filled by sign extension, i.e. they take the same value as bit 3. As an example, consider the 16-bit source word h0C4E, d3150.
Step 1 - break into 3 formative NESSbytes.
byte 1: XXXX0000
byte 2: XX110001
byte 3: XX001110
Step 2 - sign extend in byte 1, bit 6=1, bit 7=odd parity.
NESSbyte 1:01000000
NESSbyte 2:11110001
NESSbyte 3:11001110
After encoding, the 12-minute block is sent to the data collection platform (DCP) to be transmitted.
Consider the following data set:
Date: March 23 1993 (day 082)
Time of first sample 12:00
Observatory identification: 04342275 (co-latitude 43.4E, longitude 227.5E)
Sensor orientation is XYZF
INTERMAGNET approved filtering
No alert capability
No RMs
Flag #1: 00000000
Flag #2: 00000000
Minute values of C1, C2, C3, C4
209062 -56 423216 472036
209062 -52 423218 472038
209058 -46 423220 472038
209053 -49 423219 472035
209052 -51 423214 472030
209054 -55 423214 472031
209061 -56 423215 472035
209066 -55 423217 472039
209062 -52 423214 472034
209055 -54 423212 472030
209055 -52 423213 472030
209056 -50 423213 472031
Hex dump of IMFV2.83 binary of this 12-minute block: (126 characters)
52 00 2D 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A6 10 C8 1F 30 15 E4 13 A6 10 CC 1F 32 15 E6 13 A2 10 D2 1F 34 15 E6 13 9D 10 CF 1F 33 15 E3 13 9C 10 CD 1F 2E 15 DE 13 9E 10 C9 1F 2E 15 DF 13 A5 10 C8 1F 2F 15 E3 13 AA 10 C9 1F 31 15 E7 13 A6 10 CC 1F 2E 15 E2 13 9F 10 CA 1F 2C 15 DE 13 9F 10 CC 1F 2D 15 DE 13 A0 10 CE 1F 2D 15 DF 13
After conversion to NESS-BINARY for GOES satellite: (189 characters)
45 C8 40 C2 76 D9 C7 FE 73 FB 64 40 40 C2 F2 43 46 CE 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 7A 58 D0 7C E0 DF 43 40 D5 FE D0 D3 7A 58 D0 7C 70 DF 43 C8 D5 FE 58 D3 7A C8 D0 FD C8 DF 43 D0 D5 FE 58 D3 79 F4 D0 7C 7C DF 43 4C D5 FE 4C D3 79 70 D0 7C F4 DF C2 F8 D5 FD F8 D3 79 F8 D0 7C 64 DF C2 F8 D5 FD 7C D3 7A 54 D0 7C E0 DF C2 7C D5 FE 4C D3 7A 68 D0 7C 64 DF 43 C4 D5 FE DC D3 7A 58 D0 7C 70 DF C2 F8 D5 FE C8 D3 79 7C D0 7C 68 DF C2 70 D5 FD F8 D3 79 7C D0 7C 70 DF C2 F4 D5 FD F8 D3 7A 40 D0 7C F8 DF C2 F4 D5 FD 7C D3
Coding Example for Meteosat Satellite
As the duration between two time slots on the METEOSAT satellite is one hour, five 12-minute blocks are chained and sent to the DCP for transmission. As a METEOSAT message is 640 bytes long, 10 bytes (hex00) are added to the end of the 630 bytes of the 5 X 12-minute blocks (5 X 126 bytes). Binary from IMFV2.83 format is sent to the DCP without any modification.
Consider the following data set:
Date: March 23 1993 (day 082)
Time of first sample 12:00
Observatory identification: 04342275 (co-latitude 43.4E, longitude 227.5E)
Sensor orientation is XYZF
INTERMAGNET approved filtering
No alert capability
No RMs
Flag #1: 00000000
Flag #2: 00000000
Minute values of C1, C2, C3, C4
Block #1: minute 0-11
209062 -56 423216 472036
209062 -52 423218 472038
209058 -46 423220 472038
209053 -49 423219 472035
209052 -51 423214 472030
209054 -55 423214 472031
209061 -56 423215 472035
209066 -55 423217 472039
209062 -52 423214 472034
209055 -54 423212 472030
209055 -52 423213 472030
209056 -50 423213 472031
Block #2: minute 12-23
209059 -45 423215 472034
209057 -45 423214 472032
209059 -40 423216 472035
209057 -42 423214 472032
209054 -40 423213 472030
209053 -42 423214 472030
209048 -45 423214 472028
209046 -47 423217 472030
209045 -45 423217 472030
209044 -46 423217 472029
209043 -44 423214 472026
209045 -43 423215 472028
Block #3 : minute 24-35
209050 -44 423215 472030
209056 -45 423217 472035
209064 -45 423218 472039
209072 -43 423217 472042
209073 -41 423216 472041
209069 -39 423216 472039
209063 -37 423215 472036
209059 -36 423216 472035
209054 -37 423216 472033
209051 -42 423215 472030
209046 -47 423215 472028
209045 -50 423216 472029
Block #4: minute 36-47
209041 -56 423214 472025
209044 -58 423215 472027
209044 -60 423215 472027
209049 -57 423217 472031
209056 -54 423217 472035
209063 -48 423217 472038
209068 -45 423217 472040
209070 -42 423216 472040
209072 -40 423217 472042
209070 -38 423216 472040
209065 -40 423215 472037
209063 -41 423215 472036
Block #5: minute 48-59
209067 -39 423217 472039
209064 -41 423216 472037
209059 -42 423215 472034
209058 -41 423215 472034
209061 -40 423214 472034
209063 -37 423215 472036
209060 -37 423215 472034
209060 -38 423213 472033
209063 -39 423213 472034
209063 -40 423212 472033
209068 -37 423215 472038
209071 -33 423217 472041
Hex dump of IMFV2.83 binary of these five 12-minute blocks: (5 * 126 + 10 trailing zeros = 640 characters)
52 00 2D 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A6 10 C8 1F 30 15 E4 13 A6 10 CC 1F 32 15 E6 13 A2 10 D2 1F 34 15 E6 13 9D 10 CF 1F 33 15 E3 13 9C 10 CD 1F 2E 15 DE 13 9E 10 C9 1F 2E 15 DF 13 A5 10 C8 1F 2F 15 E3 13 AA 10 C9 1F 31 15 E7 13 A6 10 CC 1F 2E 15 E2 13 9F 10 CA 1F 2C 15 DE 13 9F 10 CC 1F 2D 15 DE 13 A0 10 CE 1F 2D 15 DF 13 52 C0 2D 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A3 10 D3 1F 2F 15 E2 13 A1 10 D3 1F 2E 15 E0 13 A3 10 D8 1F 30 15 E3 13 A1 10 D6 1F 2E 15 E0 13 9E 10 D8 1F 2D 15 DE 13 9D 10 D6 1F 2E 15 DE 13 98 10 D3 1F 2E 15 DC 13 96 10 D1 1F 31 15 DE 13 95 10 D3 1F 31 15 DE 13 94 10 D2 1F 31 15 DD 13 93 10 D4 1F 2E 15 DA 13 95 10 D5 1F 2F 15 DC 13 52 80 2E 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9A 10 D4 1F 2F 15 DE 13 A0 10 D3 1F 31 15 E3 13 A8 10 D3 1F 32 15 E7 13 B0 10 D5 1F 31 15 EA 13 B1 10 D7 1F 30 15 E9 13 AD 10 D9 1F 30 15 E7 13 A7 10 DB 1F 2F 15 E4 13 A3 10 DC 1F 30 15 E3 13 9E 10 DB 1F 30 15 E1 13 9B 10 D6 1F 2F 15 DE 13 96 10 D1 1F 2F 15 DC 13 95 10 CE 1F 30 15 DD 13 52 40 2F 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 91 10 C8 1F 2E 15 D9 13 94 10 C6 1F 2F 15 DB 13 94 10 C4 1F 2F 15 DB 13 99 10 C7 1F 31 15 DF 13 A0 10 CA 1F 31 15 E3 13 A7 10 D0 1F 31 15 E6 13 AC 10 D3 1F 31 15 E8 13 AE 10 D6 1F 30 15 E8 13 B0 10 D8 1F 31 15 EA 13 AE 10 DA 1F 30 15 E8 13 A9 10 D8 1F 2F 15 E5 13 A7 10 D7 1F 2F 15 E4 13 52 00 30 99 7F B3 B9 00 00 B2 31 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 AB 10 D9 1F 31 15 E7 13 A8 10 D7 1F 30 15 E5 13 A3 10 D6 1F 2F 15 E2 13 A2 10 D7 1F 2F 15 E2 13 A5 10 D8 1F 2E 15 E2 13 A7 10 DB 1F 2F 15 E4 13 A4 10 DB 1F 2F 15 E2 13 A4 10 DA 1F 2D 15 E1 13 A7 10 D9 1F 2D 15 E2 13 A7 10 D8 1F 2C 15 E1 13 AC 10 DB 1F 2F 15 E6 13 AF 10 DF 1F 31 15 E9 13 00 00 00 00 00 00 00 00 00 00
Coding Example for GMS Satellite
The GMS satellite system requires that DCP data transmission use a long preamble, recommends that the length of time for data block be at least 63 seconds, and that transmitted data conform to a specified character set. A base-44 coding algorithm was developed for converting binary data to the GMS character set. The coded data format follows:
HEADER 21 BYTES |
||||
Field |
Length (bit) |
Length (word) |
Position |
Frame |
Time Day of the year |
12 Bits |
3/4 word |
0 word - 0.75 |
|
Minute of the day |
12 Bits |
3/4 word |
0.75 word - 1.5 |
|
Offset for C1 |
8 Bits |
1/2 word |
1.5 word - 2.0 |
|
Offset for C2 |
8 Bits |
1/2 word |
2.0 word - 2.5 |
|
Offset for C3 |
8 Bits |
1/2 word |
2.5 word - 3.0 |
|
Offset for C4 |
8 Bits |
1/2 word |
3.0 word - 3.5 |
|
Flag #1 & #2 |
16 Bits |
1 word |
3.5 word - 4.5 |
|
Station colatitude |
12 Bits |
3/4 word |
4.5 word - 5.25 |
|
Station longitude |
12 Bits |
3/4 word |
5.25 word - 6.0 |
-18 byte |
(CR-CR-LF)-21 byte |
||||
FREE SPACE 27 BYTES CODED |
||||
Field |
Length (bit) |
Length (word) |
Position |
Frame |
D1 Indices and Basline control |
8 Bits |
1/2 word |
6.0 word - 6.5 |
|
… |
||||
D18 Indices and Basline control |
8 Bits |
1/2 word |
15.5 word - 15.0 |
-48 byte |
(CR-CR-LF)-51 byte |
||||
MINUTE VALUES 157 BYTES CODED |
||||
Field |
Length (bit) |
Length (word) |
Position |
Frame |
C1 for t+0 minute |
16 Bits |
1 word |
15.0 word - 16.0 |
-54 byte |
C2 for t+0 minute |
16 Bits |
1 word |
16.0 word - 17.0 |
-57 byte |
C3 for t+0 minute |
16 Bits |
1 word |
17.0 word - 18.0 |
-60 byte |
C4 for t+0 minute |
16 Bits |
1 word |
18.0 word - 19.0 |
-63 byte |
… |
||||
C4 for t+4 minute |
16 Bits |
1 word |
34.0 word - 35.0 |
-111 byte |
(CR-CR-LF)-114 byte |
||||
C1 for t+5 minute |
16 Bits |
1 word |
35.0 word - 36.0 |
-117 byte |
… |
||||
C4 for t+9 minute |
16 Bits |
1 word |
54.0 word - 55.0 |
-174 byte |
(CR-CR-LF)-177 byte |
||||
C1 for t+10 minute |
16 Bits |
1 word |
55.0 word - 56.0 |
-180 byte |
… |
||||
C1 for t+11 minute |
16 Bits |
1 word |
59.0 word - 60.0 |
-192 byte |
C2 for t+11 minute |
16 Bits |
1 word |
60.0 word - 61.0 |
-195 byte |
C3 for t+11 minute |
16 Bits |
1 word |
61.0 word - 62.0 |
-198 byte |
C4 for t+11 minute |
16 Bits |
1 word |
62.0 word - 63.0 |
-201 byte |
CRC |
16 Bits |
1 word |
63.0 word - 64.0 |
-204 byte |
(CR-CR-LF)-208 byte |
||||
Time Framing for GMS
A multiple data transmission (12-minute data block repeated 3 times) may be used to satisfy the GMS minimum block transmission time of approximately 63 seconds. The time framing for GMS would be:
no-signal carrier 5.0 second : 5.0 sec
bit synchronization 2.5 : 7.5
word synchronization 0.15 : 7.65
address 0.31 : 7.96
first (64*3+16-1)*8/100 16.56 :24.52 (177 bytes)
second (64*3+16-1)*8/100 16.56 :41.08 (177 bytes)
last (64*3+16)*8/100 16.64 :57.72 (178 bytes)
EOT-EOT-EOT 0.24 :57.96
The following table shows time slots assigned to DCPs. Each table line represents 60 seconds, the station ID is placed at the beginning of a data transmission block, ‘….’ is for the no-signal (carrier only) period, ‘- -’ is for synchronization sequence, and ‘==’ is for the data block.
Assigned time slots for the GMS coding would allow 58 seconds per transmission and 7 seconds guard time. This would allow 11 observatories to transmit every 12 minutes.
min sec0....*....1....*....2....*....3....*....4....*....5....*....
12*(n) .....--M01================================================__
+01 _____.....--M02=============================================
+02 ===_______.....--M03========================================
+03 ========_______.....--M04===================================
+04 =============_______.....--M05==============================
+05 ==================_______.....--M06=========================
+06 =======================_______.....--M07====================
+07 ============================_______.....--M08===============
+08 =================================_______.....--M09==========
+09 ======================================_______.....--M10=====
+10 ===========================================_______.....--M11
+11 ================================================____________
12(n+1).....--M01================================================__
Base-44 Coding for GMS
The characters used on the GMS system are: LF CR SP ‘ ( ) + , - . / 0 1 2 3 4 5 6 7 8 9 : = ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (TOTAL 50). The base-44 character set is shown in the table below.
Each IMFV2.83 data block is encoded by dividing the data block into 16-bit integers. Signed integers are represented by 2’s complement. Each integer value is converted to 3 base-44 numbers, <n1,-n2,n3>, the most significant being n1 and the least significant n3. Each base-44 number may be represented by a base-44 character from Table 1. Example conversions are shown below:
decimal base-44 base-44
number number char
0 < 0, 0, 0> 000
1 < 0, 0, 1> 001
43 < 0, 0,43> 00?
44 < 0, 1, 0> 010
32767 <16,40,31> G-V
-1 <43,43,43> ???
-44 <43,43, 0> ??0
-1935 <43, 0, 1> ?01
-32768 <27, 3,12> R3C
DIGIT |
BASE-44 |
DIGIT |
BASE-44 |
|---|---|---|---|
0 |
0 |
22 |
M |
1 |
1 |
23 |
N |
2 |
2 |
24 |
O |
3 |
3 |
25 |
P |
4 |
4 |
26 |
Q |
5 |
5 |
27 |
R |
6 |
6 |
28 |
S |
7 |
7 |
29 |
T |
8 |
8 |
30 |
U |
9 |
9 |
31 |
V |
10 |
A |
32 |
W |
11 |
B |
33 |
X |
12 |
C |
34 |
Y |
13 |
D |
35 |
Z |
14 |
E |
36 |
( |
15 |
F |
37 |
) |
16 |
G |
38 |
+ |
17 |
H |
39 |
, (comma) |
18 |
I |
40 |
- (hyphen) |