Hi,
I've started to implement the TETRA TMO MAC layer, i.e. the part that takes MAC blocks from higher layers and applies CRC, FEC, interleaving and scrambling before finally handing the bits to the DQPSK-modulator.
The code can now generate a (hopefully valid) to-be-modulated bit pattern for a 'continuous downlink synchronization burst', i.e. what corresponds to the 'SCH+FCCH+BCCH' in GSM.
You can find the code (including a small README) at: gitosis@git.osmocom.org:tetra-misc.git in the 'src' directory.
If you don't yet have git access, feel free to mail me your sshv2 key.
What's missing: * CRC16-CCITT to be computed over odd number of bits like 60 or 124 (all common implementations assume you encode integral # of bytes) [zecke] * decoding: * decoder for the RM(30,14) code [zecke] * soft-input/soft-decision viterbi for the RCPC code * synchronizer, able to detect synchro and normal training sequence [laforge]
Once those tasks are completed, we can not only generate simulated burst bit patterns, but also decode them - which should be a good start for the time when Hopscotch' demodulator will spit out some real received bitstream.
Regards, Harald