(this post is based on latest discussions on this topic in IRC)
New Satellites in SatNOGS
SatNOGS has an identification of a new satellite of interest consisting of the satellite name and a set of transmitters (in edge cases only of the transmitter and not the satellite name) usually before the launch as provided by the satellite owners (or other sources) or shortly after the launch by scan observations.
NORAD IDs and COSPAR designators
JSpOC tracks new satellites and assigns a sequential 5 digit NORAD IDs to each of them. Each new satellite is also assigned a COSPAR designation, consisting of the year of launch, a 3 digit ID number, incrementing with each launch, and a 3 letter code as the sequential object identifier within each launch.
The NORAD ID and COSPAR designation are linked and are consequtive; the object with COSPAR designation C has a NORAD ID which is 2 higher than object A.
Neither the NORAD ID nor the COSPAR designation are temporary, and usually room is left in the NORAD ID associated with the expected number of objects to be catalogued for a launch (I.e. the highest assigned SSO-A NORAD ID from 2018-099 is 43799, while launch 2018-100 starts with NORAD ID 43823. In other words, they expect to still catalogue 23 objects).
Though the IDs and designators don’t change, TLEs are sometimes swapped between objects (on rare occasions they swap NORAD ID and COSPAR ID around to put the rocket body as the last in the COSPAR range of that launch (i.e. 18103D if A, B and C were payloads).
(this explanatory section was provided by @cgbsat, many thanks! )
IDs in SatNOGS
Currently the NORAD ID is used by satnogs-network and satnogs-db as the primary identifier for satellites. As the correct NORAD ID & COSPAR designation for a satellite is unknown until the satellite was officially identified (by JSpOC/TSKelso), SatNOGS assigns temporary NORAD IDs from the unused 99XXX range to unidentified satellites. When the official identification happened, this temporary NORAD ID is replaced by the correct official NROAD ID in satnogs-network and satnogs-db (@fredy could describe the details).
In order to stop the usage of temporary NORAD IDs and to be able to reliably sync satnogs-db and satnogs-network, we plan to introduce an unique identifier for each satellite tracked by SatNOGS. This identifier has to be available before the launch.
Subsequently we only associate a NORAD ID when a candidate TLE is available or after the official identification was done (already discussed implementation detail: for the former we introduce the field
norad_track_id, for the latter the field
norad_id in the db).
- How should such an unique identifier for satellites be defined?
- How we can implement it in the backend database in an elegant way that a single TLE (from external sources with a NORAD ID or directly provided by other means) to be associated with multiple satellites in SatNOGS?
Please add your comments and ideas!