Legacy LongRange Mode information (mode 1 in the my attached link)

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
link for more information about this mode category : https://www.ti.com/lit/an/swra642/swra642.pdf
I want to understand the packet format, what's my syncword Data in HEXA that this legacy mode use? , what's the payload length in this mode? I didn't understand what's N and DSSS symbols that are found in multiplication sum for length of payload: N8DSS symbols...what should its values? could you guys please explain and illustrate all those parameters of mode 1 by an example of transmitted packet with explaining its transmitted data and how it looks once transmitted? thanks alot!
7853.1.jpg
 

Papabravo

Joined Feb 24, 2006
13,967
DSSS: Direct Sequence Spread Spectrum, is a method of encoding data into a signal with a much wider bandwidth than the bandwidth required by the information content alone. See the following articles for a description of the method.

https://en.wikipedia.org/wiki/Direct-sequence_spread_spectrum
https://www.electronics-notes.com/articles/radio/dsss/what-is-direct-sequence-spread-spectrum.php

The word "symbol" is equivalent to "bit" and represents the actual encoding of transitions and values on the signal wire.

The preamble consists of 40 symbols with no "chips" (DSSS symbol additions) of the given pattern
The sync word is given in the document fragment from your post#1 as 0xFE6B 2840 0194 D7BF followed by the note that it appears on the wire LSB first. No problem just write down the bits of the given 64-bit word in reverse order. I can do that for you, but I think you should give it a try first

In the payload I take N to be the number of bytes. The 8 converts the number of bytes into bits. This number of data bits is multiplied by 2 times the number of DSSS symbols which are introduced into the data stream.

The Termination is 6 databits multiplied by 2 times the number of DSSS symbols.

I'm no expert on spread spectrum technology, but those are my best guesses from 50 years in the business of communications.
 
Last edited:

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
I appreciate your help, thanks alot!
Regarding to syncword it's in hexa FE6B28400194D7BF this means in binary: (first started to decode from F then E then 6 etc .... in other words from left to write my syncword starts in binary): 1111111001101011001010000100000000000001100101001101011110111111
Now after your explanation about syncword, I didn't understand really anything :) sorry, I've read what you explained after your explanation about syncword but didn't understand, could you please to be more clear to take an exclusive example for a packet with arbitrary Data(you could determine the data packet by your example ..doesn't matter) just to explain the length of payload and termination and how do you determine the N value(is N is constant and equal to number of bytes as always?) ? thanks alot for any help
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
And this question is more for me, still mode 1 isn't understand able for me, and just curious about mode 2 in the link that I attached in my thread above, it says that in mode 2 it transmit syncword M times and in the M+1 it transmits the inverted syncword, what does this mean the "inverted" syncword? lets assume that syncword is : 0xFE6B 2840 0194 D7BF so what's the inverted syncword for this? thanks alot @Papabravo
 

Papabravo

Joined Feb 24, 2006
13,967
You missed the part about the sync word going on the wire Least Significant Bit (LSB) first. Start with the F on the right hand end of the sync word and write the bits in reverse order. Reversing the bits like this will yield a sync word that doesn't look anything like the one which is written MSB (Most Significant Bit) first. If you're going to do anything in communications you gotta get used to doing things like this by paying close attention to details. Just take the bit string you wrote in post #4 and write it again reading from right to left but writing the bits from left to right. Now what you have written is what the bits will look like "on the wire". Actually this is RF so there is no wire, so maybe I should say on the scope looking at the receiver.

For the Payload and the Termination I'm guessing that the N*8*2*2 is going to be the total number of symbols for the payload, and 6*2*2 is the total number of symbols for the termination. N is the number of bytes and DSSS = 2, so that each bit is replaced by 4 symbols. So the symbol rate is 4 times the bitrate. That is just a guess.
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
You missed the part about the sync word going on the wire Least Significant Bit (LSB) first. Start with the F on the right hand end of the sync word and write the bits in reverse order. Reversing the bits like this will yield a sync word that doesn't look anything like the one which is written MSB (Most Significant Bit) first. If you're going to do anything in communications you gotta get used to doing things like this by paying close attention to details. Just take the bit string you wrote in post #4 and write it again reading from right to left but writing the bits from left to right. Now what you have written is what the bits will look like "on the wire". Actually this is RF so there is no wire, so maybe I should say on the scope looking at the receiver.

For the Payload and the Termination I'm guessing that the N*8*2*2 is going to be the total number of symbols for the payload, and 6*2*2 is the total number of symbols for the termination. N is the number of bytes and DSSS = 2, so that each bit is replaced by 4 symbols. So the symbol rate is 4 times the bitrate. That is just a guess.
Appreciated!
the termination is the same as CRC no?
if given a syncword : 0xFE6B 2840 0194 D7BF , so what's the inversion of this syncword? does it mean that inverted syncword is:
0xD7BF 0194 2840 FE6B (reverse words's order )

secondly, you mean by "that each bit is replaced by 4 symbols" you mean the value of the bit repeats 4 times?, lets assume if I sent just one bit equals 1 in binary (its value is 1) so it would appear 4 times on the receiver(once transmitted) ? .. 1---->1111

thanks alot
 

Papabravo

Joined Feb 24, 2006
13,967
Appreciated!
the termination is the same as CRC no?
if given a syncword : 0xFE6B 2840 0194 D7BF , so what's the inversion of this syncword? does it mean that inverted syncword is:
0xD7BF 0194 2840 FE6B (reverse words's order )

secondly, you mean by "that each bit is replaced by 4 symbols" you mean the value of the bit repeats 4 times?, lets assume if I sent just one bit equals 1 in binary (its value is 1) so it would appear 4 times on the receiver(once transmitted) ? .. 1---->1111

thanks alot
I think the termination is too short to be a CRC. I would call it a postamble and it may have a fixed format.

For the 3rd time:
  1. Write the string in binary as you did in post#4
  2. Number the bits from left to right with the numbers from the set {63, 62, ... , 1, 0}
  3. Write the BITS in reverse order starting with 0 and ending with 63
Another possible algorithm uses a 1-bit wide Last-In First-Out (LIFO) push down stack
  1. Reading the bits from left to right push each bit onto the stack, 64 times
  2. When the stack contains the Sync Word, pop one bit off the stack and send it 64 times
The bits are replicated four times AND they are modified by using an XOR function. The second article in post#3 shows an example of how this is done. The length of a bit time has not changed, but the number of transitions has. This increase in the number of transitions is what spreads out the spectrum of the data.
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
I think the termination is too short to be a CRC. I would call it a postamble and it may have a fixed format.

For the 3rd time:
  1. Write the string in binary as you did in post#4
  2. Number the bits from left to right with the numbers from the set {63, 62, ... , 1, 0}
  3. Write the BITS in reverse order starting with 0 and ending with 63
Another possible algorithm uses a 1-bit wide Last-In First-Out (LIFO) push down stack
  1. Reading the bits from left to right push each bit onto the stack, 64 times
  2. When the stack contains the Sync Word, pop one bit off the stack and send it 64 times
The bits are replicated four times AND they are modified by using an XOR function. The second article in post#3 shows an example of how this is done. The length of a bit time has not changed, but the number of transitions has. This increase in the number of transitions is what spreads out the spectrum of the data.
got you, so the inverse syncword of FE6B28400194D7BF(LSB first as given before) is in binary: 1111111001101011001010000100000000000001100101001101011110111111 which implicitly this binary value is implicitly the inverse of the syncword that it's value FE6B28400194D7BF(LSB first). so the inverse syncword in hexa is: FB7D49100482B6EF I hope now Im right:)

regarding to your second notation about bits, so the replication is down in your example/case it's right to say if you sent one bit valued 1 in binary, it will be replicated after transmittion to 1---(transmission)----> 1111 on the receiver (assume I just sent one bit ..just for understandings .. )

thanks
 

Papabravo

Joined Feb 24, 2006
13,967
Nope. The bit reversed version of the sync word that begins with the .... D7BF on the end of the original string becomes FDEB ...
What you did was read the hex digits reversed which is NOT correct. Here is a table that will allow you to reverse one hex digit at a time.

0 --> 0
1 --> 8
2 --> 4
3 --> C
4 --> 2
5 --> A
6 --> 6
7 --> E
8 --> 1
9 --> 9
A --> 5
B --> D
C --> 3
D --> B
E --> 7
F --> F
 
Last edited:

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
Nope. The bit reversed version of the sync word that begins with the .... D7BF on the end of the original string becomes FDEB ...
What you did was read the hex digits reversed which is NOT correct. Here is a table that will allow you to reverse one hex digit at a time.

0 --> 0
1 --> 8
2 --> 4
3 --> C
4 --> 2
5 --> A
6 --> 6
7 --> E
8 --> 1
9 --> 9
A --> 5
B --> D
C --> 3
D --> B
E --> 7
F --> F
So the inverse word of my syncword -0xFE6B 2840 0194 D7BF- is this:
0xF76D 4120 0892 BEDF , right?! guess so :)
 

andrewmm

Joined Feb 25, 2011
403
Just to add extra confusion,
Looks like your reading the data after its been decoded into computer words.

You could be running into endien problems if your reading words or such like.

I would suggest that you might have to steep a hill to climb for support on the forums in a reasonable time,

Can you look at simpler solutions ?

The one good thing, having done these sort of things a good few times, when you do suddenly lock onto the sync word, and the data is present, then all is magic,

Out of interest, what do you think the sync word should be ?
can you put it out as 0 and 1's ?
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
FDEB 2980 0214 D67F
Maybe you should consider alternatives. I don't think this is working for you.
didn't get you , I know you're hinting to something .. but didn't get you sorry .. is what I right the right inversion of my syncword or not? thanks alot
 

Papabravo

Joined Feb 24, 2006
13,967
didn't get you , I know you're hinting to something .. but didn't get you sorry .. is what I right the right inversion of my syncword or not? thanks alot
I gave you what I think is the correct bit reversed version of the Sync Word. I explained how you need to do it several times and you still don't get what is going on.
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
Nope. The bit reversed version of the sync word that begins with the .... D7BF on the end of the original string becomes FDEB ...
What you did was read the hex digits reversed which is NOT correct. Here is a table that will allow you to reverse one hex digit at a time.

0 --> 0
1 --> 8
2 --> 4
3 --> C
4 --> 2
5 --> A
6 --> 6
7 --> E
8 --> 1
9 --> 9
A --> 5
B --> D
C --> 3
D --> B
E --> 7
F --> F
but here as what you explained I followed the inverse bit hexa analogy ... and I told you the inverted syncword .. so where' the problem? thanks for assistance.
syncword: 0xFE6B 2840 0194 D7BF => the inverted syncword in hexa 0xF76D 4120 0892 BEDF
 

Papabravo

Joined Feb 24, 2006
13,967
but here as what you explained I followed the inverse bit hexa analogy ... and I told you the inverted syncword .. so where' the problem? thanks for assistance.
syncword: 0xFE6B 2840 0194 D7BF => the inverted syncword in hexa 0xF76D 4120 0892 BEDF
You reversed the digits, but not the bits.
 

Thread Starter

JimmyCho

Joined Aug 1, 2020
19
Nope. As I said in a previous post:
FDEB 2980 0214 D67F
OMG! Im stunned :)
Im a junior engineer in my first steps, so I need much to learn and there's much to learn about networking and engineering.

PS. if you have any link for a good book for improving my thinking as an engineer would be really appreciated ! thanks alot.
I mean by improving my thinking is to think differently and grasp new perspective/approaches in order to solve problems more quickly !


thanks alot
 
Top