Skip to content

JuliaGNSS/GNSSDecoder.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GNSSDecoder.jl

Decodes various GNSS satellite signals. Currently implemented:

  • GPS L1
  • Galileo E1B

Usage

Install:

julia> ]
pkg> add GNSSDecoder

Initialization

The decoder must be initialized beforehand.

decoder = GPSL1DecoderState(1) #Initialization of decoder with PRN = 1

Decoding

Pass bits to decoder as an unsigned integer value and let the decoder decode the message.

for i in 1:iterations
    # Track signal for example with Tracking.jl
    track_res = track(signal, track_state, decoder.PRN , sampling_freq)
    track_state = get_state(track_res)
    decoder = decode(decoder, get_bits(track_res), get_num_bits(track_res))
end

The data can be retrieved by

decoder.data

Note that GNSSDecoder decodes each time a complete subframe has been retrieved. decoder.raw_data holds the raw data. decoder.data hold data that has been checked for consistency. decoder.num_bits_after_valid_subframe counts the number of bits after a valid subframe has been retrieved.