kopia lustrzana https://github.com/rs1729/RS
RS41: neue FW, BK irrelevant/invers?
rodzic
a9db9e10a2
commit
6a40a28b65
|
@ -73,6 +73,60 @@ GPS Chip: u-blox UBX-G6010-ST
|
|||
0x01: 34 30 30 31 30 f2 4e 00 00 58 02 12 05 b4 3c a4
|
||||
-> 4c 31 30 34 30 30 31 30 : L1040010
|
||||
|
||||
0x01: nach ID, 2 byte: fw-version? 0x4ef2
|
||||
M3830211, 0x4ef5: BK irrelevant oder invers?
|
||||
|
||||
K1930293
|
||||
[ 5866] 0x00: 3e 09 00 32 03 00 00 0e 00 00 00 00 00 4b 31 39 [OK] : fq 402000
|
||||
[ 5867] 0x01: 33 30 32 39 33 25 4e 00 00 2c 01 12 05 b4 3c a4 [OK] : fw 0x4e25
|
||||
[ 5868] 0x02: 06 0a 87 32 00 00 00 ff ff 00 00 00 00 03 d7 22 [OK] : BK 00
|
||||
|
||||
K1830006
|
||||
[ 4387] 0x00: 28 8b 00 32 03 00 00 0e 00 00 00 00 00 4b 31 38 [OK] : fq 402000
|
||||
[ 4388] 0x01: 33 30 30 30 36 25 4e 00 00 2c 01 12 05 b4 3c a4 [OK] : fw 0x4e25
|
||||
[ 4389] 0x02: 06 0a 87 32 00 00 00 ff ff 00 00 01 00 03 ac 22 [OK] : BK 01
|
||||
|
||||
L2830508 (mit preamble)
|
||||
[ 6835] 0x00: aa 9b 00 32 03 00 00 0e 00 00 00 00 00 4c 32 38 [OK] : fq 402000
|
||||
[ 6836] 0x01: 33 30 35 30 38 f2 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef2
|
||||
[ 6837] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 01 00 03 1d 23 [OK] : BK 01
|
||||
|
||||
L1250184 (ohne preamble)
|
||||
[ 5764] 0x00: 0f 62 00 32 03 00 00 0e 00 00 00 00 00 4c 31 32 [OK] : fq 402000
|
||||
[ 5765] 0x01: 35 30 31 38 34 25 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4e25
|
||||
[ 5766] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 01 00 03 3c 22 [OK] : BK 01
|
||||
|
||||
L1810272, fw: 0x4e25
|
||||
[ 6376] 0x00: 78 d6 00 32 03 00 00 0e 00 00 00 00 00 4c 31 38 [OK] : fq 402000
|
||||
[ 6377] 0x01: 31 30 32 37 32 25 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4e25
|
||||
[ 6378] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 00 00 03 c8 22 [OK] : BK 00
|
||||
|
||||
L2840452
|
||||
[ 6274] 0x00: 2e b1 00 32 03 00 00 0e 00 00 00 00 00 4c 32 38 [OK] : fq 402000
|
||||
[ 6275] 0x01: 34 30 34 35 32 f3 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef3
|
||||
[ 6276] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 00 00 03 1c 23 [OK] : BK 00
|
||||
|
||||
L2840165
|
||||
[ 6937] 0x00: f8 da 00 32 03 00 00 0e 00 00 00 00 00 4c 32 38 [OK] : fq 402000
|
||||
[ 6938] 0x01: 34 30 31 36 35 f2 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef2
|
||||
[ 6939] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 00 00 03 1a 23 [OK] : BK 00
|
||||
|
||||
M3550630
|
||||
[ 3061] 0x00: 14 ff 00 32 03 00 00 0e 00 00 00 00 00 4d 33 35 [OK] : fq 402000
|
||||
[ 3062] 0x01: 35 30 36 33 30 f3 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef3
|
||||
[ 3063] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 00 00 03 bd 22 [OK] : BK 00
|
||||
|
||||
M2830093
|
||||
[ 7447] 0x00: d0 9f 00 73 03 00 00 0f 00 00 00 00 00 4d 32 38 [OK] : fq 404600
|
||||
[ 7448] 0x01: 33 30 30 39 33 f3 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef3
|
||||
[ 7449] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 01 00 03 14 23 [OK] : BK 01
|
||||
|
||||
M3830211 (sendet auch beim Abstieg)
|
||||
[ 7753] 0x00: dc 0f 00 64 03 00 00 0f 00 00 00 00 00 4d 33 38 [OK] : fq 404000
|
||||
[ 7754] 0x01: 33 30 32 31 31 f5 4e 00 00 58 02 12 05 b4 3c a4 [OK] : fw 0x4ef5
|
||||
[ 7755] 0x02: 06 14 87 32 00 00 00 ff ff 00 00 01 00 03 0b 23 [OK] : BK 01
|
||||
|
||||
|
||||
frame 0x21: ff ff ff c6 ff ff ff c6 52 53 34 31 2d 53 47 00 : RS41-SG
|
||||
ee 19 79 44 9a 39 79 44 52 53 34 31 2d 53 47 50 : RS41-SGP
|
||||
|
||||
|
|
|
@ -25,8 +25,9 @@
|
|||
#endif
|
||||
|
||||
|
||||
typedef unsigned char ui8_t;
|
||||
typedef unsigned int ui32_t;
|
||||
typedef unsigned char ui8_t;
|
||||
typedef unsigned short ui16_t;
|
||||
typedef unsigned int ui32_t;
|
||||
typedef short i16_t;
|
||||
typedef int i32_t;
|
||||
|
||||
|
@ -710,7 +711,7 @@ int get_GPSkoord() {
|
|||
double X[3], lat, lon, alt;
|
||||
ui8_t gpsVel_bytes[2];
|
||||
short vel16; // 16bit
|
||||
double V[3], phi, lam, alpha, dir;
|
||||
double V[3], phi, lam, dir;
|
||||
|
||||
int crclen;
|
||||
int crcdat;
|
||||
|
@ -762,12 +763,13 @@ int get_GPSkoord() {
|
|||
|
||||
// NEU -> HorDirVer
|
||||
gpx.vH = sqrt(gpx.vN*gpx.vN+gpx.vE*gpx.vE);
|
||||
///*
|
||||
/*
|
||||
double alpha;
|
||||
alpha = atan2(gpx.vN, gpx.vE)*180/M_PI; // ComplexPlane (von x-Achse nach links) - GeoMeteo (von y-Achse nach rechts)
|
||||
dir = 90-alpha; // z=x+iy= -> i*conj(z)=y+ix=re(i(pi/2-t)), Achsen und Drehsinn vertauscht
|
||||
if (dir < 0) dir += 360; // atan2(y,x)=atan(y/x)=pi/2-atan(x/y) , atan(1/t) = pi/2 - atan(t)
|
||||
gpx.vD2 = dir;
|
||||
//*/
|
||||
*/
|
||||
dir = atan2(gpx.vE, gpx.vN) * 180 / M_PI;
|
||||
if (dir < 0) dir += 360;
|
||||
gpx.vD = dir;
|
||||
|
@ -812,6 +814,7 @@ int get_Cal() {
|
|||
unsigned byte;
|
||||
ui8_t calfr = 0;
|
||||
ui8_t burst = 0;
|
||||
ui16_t fw = 0;
|
||||
int freq = 0, f0 = 0, f1 = 0;
|
||||
char sondetyp[9];
|
||||
|
||||
|
@ -826,11 +829,19 @@ int get_Cal() {
|
|||
byte = framebyte(pos_CalData+1+i);
|
||||
fprintf(stdout, "%02x ", byte);
|
||||
}
|
||||
if (check_CRC(pos_FRAME, pck_FRAME)>0) fprintf(stdout, "[OK]");
|
||||
else fprintf(stdout, "[NO]");
|
||||
fprintf(stdout, " ");
|
||||
}
|
||||
|
||||
if (calfr == 0x01 && option_verbose /*== 2*/) {
|
||||
fw = framebyte(pos_CalData+6) | (framebyte(pos_CalData+7)<<8);
|
||||
fprintf(stdout, ": fw 0x%04x ", fw);
|
||||
}
|
||||
|
||||
if (calfr == 0x02 && option_verbose /*== 2*/) {
|
||||
byte = framebyte(pos_Calburst);
|
||||
burst = byte;
|
||||
burst = byte; // fw >= 0x4ef5, BK irrelevant oder invers?
|
||||
fprintf(stdout, ": BK %02X ", burst);
|
||||
}
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue