Hallo dear gentlemen, good morning.
This is Roberto, 44 years old, from southern Italy.
I'm using your arduino library TonyGPSPlus with probably the cheapest GPS module on the market: ATGM336H-5N-31, we can buy at $3.20 more or less.
This module receives two satellites constellations: GPS and BEIDOU.
So, a typical group of sentences is the follow:
22:26:09.123 -> $GNGGA,202609.000,4029.8119,N,01722.5227,E,1,09,2.5,3.8,M,0.0,M,,*72 ← (used in TinyGPS++ library)
22:26:09.191 -> $GNGLL,4029.8119,N,01722.5227,E,202609.000,A,A*42
22:26:09.224 -> $GPGSA,A,3,04,16,26,03,09,,,,,,,,3.3,2.5,2.1*3B (max 12 satellites in a GSA sentence)
22:26:09.291 -> $BDGSA,A,3,07,20,02,09,,,,,,,,,3.3,2.5,2.1*29 (max 12 satellites in a GSA sentence)
22:26:09.325 -> $GPGSV,2,1,08,02,29,305,,03,21,121,40,04,44,056,35,06,51,260,*7C
22:26:09.428 -> $GPGSV,2,2,08,07,53,188,,09,73,355,30,16,16,071,34,26,06,037,31*79
22:26:09.494 -> $BDGSV,2,1,06,02,08,107,39,05,,,35,07,18,062,40,09,12,065,37*5B
22:26:09.561 -> $BDGSV,2,2,06,10,,,41,20,41,095,45*50
22:26:09.594 -> $GNRMC,202609.000,A,4029.8119,N,01722.5227,E,0.00,0.00,060720,,,A*76 ← (used in TinyGPS++ library)
22:26:09.661 -> $GNVTG,0.00,T,,M,0.00,N,0.00,K,A*23
22:26:09.695 -> $GNZDA,202609.000,06,07,2020,00,00*46
22:26:09.728 -> $GPTXT,01,01,01,ANTENNA OPEN*25
As you know, TinyGPS++ library uses only GGA and RMC sentences to keep its data, that give us possibility to extract the "satellites" value.
Yes, "satellites" value: this means the number of satellites used for position fix. As you know, this number (in the above list it is 9) may be lower than "all satellites in view".
In particular, as you can see above, the module sees 8 GPS satellites plus 6 BEIDOU satellites.
My need is exactly this: to extract these numbers, separately.
I tried to go inside your library to try a modification, even if I'm not so skilled to make this.
The problem is that the GPGSV sentences may be more than one (in the upper case 2 rows, 2 sentences). So, I'm afraid the code can get crazy looking two or more sentences beginning with GPGSV.
Same problem for BDGSV.
I hope you can help me, if this answer doesn't cost a time fortune for you, gentlemen.
Thank you very much indeed.
Best wishes from southern Italy.
Roberto