====Sync and Header====
----The sync word that the Landis+Gyr Gridstream smart meters send is use a 52 bit sync shown below, this regardless of Gridstream version. This can be used in GNU Radio or other tools along with the header to receive only uniquely identify packets transmitted by the meters. Note that at the start of the header we begin using start and stop bits. These must be stripped off of the rest of the data packet during processing.
{| class="wikitable"
|+Sync and Header52 bits long! colspan="67" |Sync! colspan="3" |Header
|-
!0xAA
!0xAA
!0xAA
!0xAA
!0xA
!0x00
!0xFF
!0x2A
|-
|10101010
|10101010
|10101010
|10101010
|1010
|}
----Of particular note is the difference between versions 1-4 and version 5. In version 5 there are two bits [11] that do not respect the start/stop bit checks of the prior versions. The older protocol expects a 0 start bit, bit data bits and a 1 stop bit. By violating two consecutive start bits the older versions of Gridstream ignore version 5 even if they have the same CRC Adder! This appears to be a way to add backwards compatibility to newer versions of Gridstream.
{| class="wikitable"
|+Header for Gridstream
! colspan="3" |Header v1 - v4
! rowspan="3" |
! colspan="3" |Header v5
|-
!0x00
!0xFF (10 bit)
!0x2A
!0x00
!0xFF (11 bit)
!0x2A
|-
|0 '''00000000''' 1
|0 '''11111111''' 1
|0 '''00101010''' 1
|0 '''00000000''' 1
|[11] '''11111111''' 1
|0 '''00101010''' 1
|}
----Using GNU Radio it was found that shortening the Sync requirements a bit and incorporating part of the header leads to the cleanest data for further downstream processing. The modified sync shown in 8 bit chunks is shown below.
{| class="wikitable"
|+Sync Word used with GNURadio