Forum: Bugs, features, coding issues

Calculation of Hopping Sequence (Part#2)

continued due to text truncation ...

8, gp= 9, g2 = 3814697265625.0
9, gp=10, g2 = 95367431640625.0
10, gp=11, g2 = 2384185791015625.0
11, gp=12, g2 = 59604644775390624.0

This caused a sudden rush of blood to the head for a few days, until we sorted it out!

The various minds behind the JANUS code have looked at this hopping sequence calculation problem and have concluded that the example code we provide on the JANUS wiki correctly implement (as far as we know) the JANUS standard, which has 13 hop choices. The Matlab and C code produce identical results from which JANUS signals may be generated and decoded.

Now, if you would like to have a hopping sequence calculation algorithm that is valid for more general FH sequences (particularly for a much larger number of slots), you will indeed need a more general algorithm than we provide. Giovanni has generated a couple of routines that might be more useful for you as they are resistant to the rounding errors of the simple JANUS routine. Email Giovanni Zappa at if you are interested.

An Integer-based algorithm may be best for DSP implementations, depending on the hardware. Note that the example code that we provide is distributed under GPL, so any company that wishes to produce JANUS-compliant software for profit must write their own proprietary code.

Our example implementations may be used by new users who want to quickly experiment with JANUS, for inspiration and for bench-testing comparisons with proprietary implementations.

Rainer, thanks for pointing this out and for contributing to the JANUS wiki. Let me know if we can be of any further help in supporting L-3 to experiment with and use JANUS.


The original document is available at