PiInTheSky / pits

Pi In The Sky Telemetry Software
GNU General Public License v2.0
87 stars 49 forks source link

RTTY via Lora - ocasionally hangs? #48

Open KevWal opened 2 years ago

KevWal commented 2 years ago

Hi

I ocasionally see transmissions stop at the point when an RTTY via LORA transmission occours close to an Uplink period.

This is using a home made PITS board - https://github.com/KevWal/Pi-in-the-Sky-Project/tree/main/Hardware/V4 and also on code modified in a number of ways - https://github.com/KevWal/pits/tree/develop , so I appretiate that could be a cause of the problem [now demonstarted on a fresh PiInTheSky repo clone]. However I don't believe I have changed anything that could cause this and have been seeing it since I started using RTTY via Lora which was before many of the changes.

It usually happenes if I started the tracker code around the Uplink time, but I now have an instance of the issue 15mins into the running:

LORA0: SSDV image 93 packet 110 of 114 LORA0: $$KW01,259,14:09:44,52.32285,-0.70592,00086,9,28,6,29.5,4.248,0.66,0.00000,0.00000,0.0,0,0,0,0,N2E2B LORA0: SSDV image 93 packet 111 of 114 LORA0: $$KW01,260,14:09:46,52.32293,-0.70587,00085,13,25,6,29.5,4.248,0.66,0.00000,0.00000,0.0,0,0,0,0,NCA2F LORA0: ^^KW01,434.712,1,2,48,96,007DE Setting power-saving OFF LORA0: SSDV image 93 packet 112 of 114 RTTY0: $$KW01RT,261,14:09:53,52.32300,-0.70587,000835CFE Setting UBlox pedestrian mode Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 RTTY0: $$KW01RT,262,14:10:06,52.32278,-0.70605,00087*F642 Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF

Infact, if I set RTTY via Lora tx to happen regularly I can make the issue happen much more repeatably:

LORA0: $$KW01,3,15:10:26,52.32269,-0.70612,00081,1,0,5,27.4,4.351,0.66,0.00000,0.00000,0.0,0,0,0,0,N09F5 SSDV File ssdv_done_2 for channel 2 found Found file /home/pi/pits/tracker/images/LORA0/15_29_20.JPG to convert RTTY0: $$KW01RT,4,15:10:29,52.32267,-0.70613,00081326F RTTY0: $$KW01RT,5,15:10:37,52.32265,-0.70615,00083435E LORA0: ^^KW01,434.712,1,2,48,96,007DE LORA0: $$KW01,6,15:10:50,52.32272,-0.70611,00081,1,0,5,27.4,4.304,0.66,0.00000,0.00000,0.0,0,0,0,0,NA27E SSDV File ssdv_done_2 for channel 2 found File ssdv_2_95.bin has 136 records Switching to SSDV file ssdv_2_95.bin ImageNumber 95 successfully saved to SSDVImageNumber_2.txt. LORA0: SSDV image 95 packet 1 of 136 RTTY0: $$KW01RT,7,15:10:53,52.32273,-0.70610,000813D5D Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 RTTY0: $$KW01RT,8,15:11:06,52.32280,-0.70611,00079*16BB Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode

Let me see if I can reproduce this on the repo code.

Thanks very much Kevin

KevWal commented 2 years ago

And confirmation that it does seem to happen in the PiInTheSky repo code too, this was a fresh clone:

Found file /home/pi/pits/tracker/images/LORA0/17_19_59.JPG to convert LoRa channel 0 DIO0=23 DIO5=29, CS=0 Serial GPS using /dev/ttyAMA0 Opened serial GPS Port LORA0: ^^KW01,434.712,1,2,48,96,007DE System time set from GPS time LORA0: ID,Ctr,Time,Lat,Lon,Alt,Speed,Head,Sats,Int.Temp,CDA,Pred.Lat,Pred.Lon,Pred.Land,Pred.TTL,RSSI,SNR,Packets,Command RTTY0: $$KW01,1,16:22:57,52.32273,-0.70614,00100,0,0,7,33.6,0.66,0.00000,0.00000,0.0,0,0,0,0,ND362 Setting power-saving OFF Setting UBlox pedestrian mode RTTY0: $$KW01,2,16:23:16,52.32272,-0.70615,00101,0,0,9,33.8,0.66,0.00000,0.00000,0.0,0,0,0,0,N60EE LORA0: $$KW01,3,16:23:34,52.32270,-0.70614,00102,0,0,8,33.8,0.66,0.00000,0.00000,0.0,0,0,0,0,NFC3F SSDV File ssdv_done_2 for channel 2 found File ssdv_2_1.bin has 105 records Switching to SSDV file ssdv_2_1.bin LORA0: SSDV image 1 packet 1 of 105 LORA0: $$KW01,4,16:23:38,52.32270,-0.70612,00099,0,0,8,33.9,0.66,0.00000,0.00000,0.0,0,0,0,0,N7094 LORA0: SSDV image 1 packet 2 of 105 LORA0: $$KW01,5,16:23:41,52.32270,-0.70610,00096,0,0,7,33.9,0.66,0.00000,0.00000,0.0,0,0,0,0,N8780 LORA0: ^^KW01,434.712,1,2,48,96,007DE RTTY0: $$KW01,6,16:23:46,52.32271,-0.70609,00095,0,0,6,33.9,0.66,0.00000,0.00000,0.0,0,0,0,0,N47E0 Setting power-saving OFF Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 Setting UBlox pedestrian mode RTTY0: $$KW01,7,16:24:06,52.32270,-0.70608,00091,0,0,8,34.1,0.66,0.00000,0.00000,0.0,0,0,0,0,N*6656 Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF

pisky file at the time of this test:

https://github.com/KevWal/pits/blob/9b311566ed028844e216c5c01564b6923b776baa/boot/pisky.txt

Cheers Kev

KevWal commented 2 years ago

And back on my code base, turning off RTTY via Lora it runs fine for an hour, turning RTTY back on it breaks straight away:

V2.4 or later board with I2C ADC LoRa channel 0 DIO0=23 DIO5=29, CS=0 Serial GPS using /dev/ttyAMA0 Opened serial GPS Port Found file /home/pi/pits/tracker/images/LORA0/19_27_46.JPG to convert LORA0: ^^KW01,434.712,1,2,48,96,007DE System time set from GPS time RTTY0: ID,Ctr,Time,Lat,Lon,Alt RTTY0: $$KW01RT,1,18:29:54,52.32277,-0.70610,00077CBFA Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 SSDV File ssdv_done_2 for channel 2 found File ssdv_2_115.bin has 94 records Switching to SSDV file ssdv_2_115.bin ImageNumber 115 successfully saved to SSDVImageNumber_2.txt. LORA0: SSDV image 115 packet 1 of 94 Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode

Turning off Uplink mode, and leaving RTTY on and it runs fine.

With a more sensible ratio of Lora RTTY to Lora packets (1 to 10), aslong as you dont happpen to start it near the top of a minute, it will run fine for some time:

Serial GPS using /dev/ttyAMA0 V2.4 or later board with I2C ADC LoRa channel 0 DIO0=23 DIO5=29, CS=0 Opened serial GPS Port LORA0: ^^KW01,434.712,1,2,48,96,007DE System time set from GPS time RTTY0: ID,Ctr,Time,Lat,Lon,Alt RTTY0: $$KW01RT,1,00:00:00,0.00000,0.00000,000000F8E RTTY0: $$KW01RT,2,19:34:42,52.32269,-0.70612,00102FDFB Setting power-saving OFF Setting UBlox pedestrian mode LORA0: ID,Ctr,Time,Lat,Lon,Alt,Speed,Head,Sats,Int.Temp,Volts,CDA,Pred.Lat,Pred.Lon,Pred.Land,Pred.TTL,RSSI,SNR,Packets,Command LORA0: $$KW01,3,19:34:50,52.32270,-0.70613,00101,0,0,3,31.8,4.288,0.66,0.00000,0.00000,0.0,0,0,0,0,N7FE1 SSDV File ssdv_done_2 for channel 2 found Found file /home/pi/pits/tracker/images/LORA0/20_34_24.JPG to convert LORA0: $$KW01,4,19:34:55,52.32268,-0.70610,00101,0,0,5,31.8,4.337,0.66,0.00000,0.00000,0.0,0,0,0,0,ND9EA SSDV File ssdv_done_2 for channel 2 found File ssdv_2_123.bin has 140 records Switching to SSDV file ssdv_2_123.bin ImageNumber 123 successfully saved to SSDVImageNumber_2.txt. LORA0: SSDV image 123 packet 1 of 140 LORA0: $$KW01,5,19:34:58,52.32267,-0.70607,00101,0,0,6,31.8,4.337,0.66,0.00000,0.00000,0.0,0,0,0,0,NEE27 LORA0: ^^KW01,434.712,1,2,48,96,007DE Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 LORA0: SSDV image 123 packet 2 of 140 LORA0: $$KW01,6,19:35:06,52.32264,-0.70601,00102,1,0,3,31.8,4.293,0.66,0.00000,0.00000,0.0,0,0,0,0,N57B7 LORA0: SSDV image 123 packet 3 of 140 LORA0: $$KW01,7,19:35:06,52.32264,-0.70601,00102,1,0,0,31.8,4.293,0.66,0.00000,0.00000,0.0,0,0,0,0,NCF1D LORA0: SSDV image 123 packet 4 of 140 RTTY0: $$KW01RT,8,19:35:06,52.32264,-0.70601,0010261BD RTTY0: $$KW01RT,9,19:35:23,52.32273,-0.70601,00096436F LORA0: $$KW01,10,19:35:33,52.32273,-0.70601,00096,3,0,4,31.9,4.350,0.66,0.00000,0.00000,0.0,0,0,0,0,N55CA LORA0: ^^KW01,434.712,1,2,48,96,0*07DE

But as soon as a RTTY happens near the top of a minute it gives up:

LORA0: SSDV image 123 packet 89 of 140 RTTY0: $$KW01RT,127,19:47:12,52.32259,-0.70641,00114C665 RTTY0: $$KW01RT,128,19:47:23,52.32264,-0.70624,00117E33D Setting power-saving OFF Setting UBlox pedestrian mode LORA0: $$KW01,129,19:47:34,52.32260,-0.70614,00103,9,176,6,32.5,4.347,0.66,0.00000,0.00000,0.0,0,0,0,0,N5D46 LORA0: SSDV image 123 packet 90 of 140 LORA0: $$KW01,130,19:47:36,52.32259,-0.70610,00098,5,174,4,32.5,4.347,0.66,0.00000,0.00000,0.0,0,0,0,0,N7CD8 LORA0: ^^KW01,434.712,1,2,48,96,007DE LORA0: SSDV image 123 packet 91 of 140 LORA0: $$KW01,131,19:47:42,52.32264,-0.70609,00085,0,0,4,32.6,4.284,0.66,0.00000,0.00000,0.0,0,0,0,0,NCF0F LORA0: SSDV image 123 packet 92 of 140 LORA0: $$KW01,132,19:47:45,52.32265,-0.70612,00081,1,0,4,32.6,4.284,0.66,0.00000,0.00000,0.0,0,0,0,0,N2478 LORA0: SSDV image 123 packet 93 of 140 LORA0: $$KW01,133,19:47:48,52.32265,-0.70613,00079,1,0,4,32.6,4.284,0.66,0.00000,0.00000,0.0,0,0,0,0,N1B88 LORA0: SSDV image 123 packet 94 of 140 RTTY0: $$KW01RT,134,19:47:51,52.32269,-0.70611,00075BE2B Uplink period ... Setting frequency to 434.737MHz for uplink Set Uplink Mode to 6 Listening on LoRa channel 0 RTTY0: $$KW01RT,135,19:48:06,52.32278,-0.70592,000664C61 Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode Setting power-saving OFF Setting UBlox pedestrian mode

Cheers Kev