From 56438bb967be2759d91e7939f85c0a13ad3cc996 Mon Sep 17 00:00:00 2001 From: Mario Fink Date: Tue, 11 Feb 2020 16:04:04 +0000 Subject: [PATCH] trying to adapt to weird 16bbit encoding of raws --- eatit | Bin 71312 -> 57640 bytes {raw => sample}/VehicleSpeed_HS.asc | 0 {raw => sample}/VehicleSpeed_HS.raw | Bin {raw => sample}/pressure_Vacuum.asc | 0 {raw => sample}/pressure_Vacuum.raw | Bin src/main.cpp | 3 ++- src/raweat.hpp | 35 ++++++++++++++++++++++++---- 7 files changed, 32 insertions(+), 6 deletions(-) rename {raw => sample}/VehicleSpeed_HS.asc (100%) rename {raw => sample}/VehicleSpeed_HS.raw (100%) rename {raw => sample}/pressure_Vacuum.asc (100%) rename {raw => sample}/pressure_Vacuum.raw (100%) diff --git a/eatit b/eatit index 9abd411764373723f0f41eaad3db793ac6b533b7..636f1087861148e8843f9ab71659e1d731afc642 100755 GIT binary patch literal 57640 zcmeFa33yaR)<1lc&=3*m=)f5FR-+~em;lj4MH7<1ZS7zNg5rXmkOY!3+aw)`iW(S=(C{z|&kk)48M>^z;erLXDySWzB?4eM z@~W?uBtnlw>~Pm81y32RLc1K;_4GFWjQQnjPBZeui@7^M^hu7UEp1zIbxkV9CV}?S441wr0^u(@(6e zoLpN|-_km{HRq(sCrzKy+%RRTw43yaJA2N2sfqnJhSkB zHva2O;5ifjeG-fPxn^MzT(8u46`)cpY&ma2ncNcd(Jo&c6 z8aIsfeEeN;&+|JbTyfhgO;3zGr8($3bgnP(*KdE`cFcrTV+vx_2FKollClj$pX&iQ za3~PzNF4a?{f5V1hK?VOP920b9Q+9=$8hkM&H{O2%kjvl66e*}Cu z{EczokHw*XdmK638i!67IP%#Nr`~mO;06Z6aQyr(PJ2BtB*Wn+ z#Nl&69Qh{kICMBq3|H@|ap0M8=)Vm7;pABl_)*$VweCNvTGEl`^8(~Xc*gO-lox zgtx6#@Dd9iLcbrN9irtupx`Me&*y5$;b?7~wnj~JGG`Hfs71fgs@JCTF8Y!9WfuN) zBIDuw%6hBs_DH%-{$dWZ=8eQ0;%2Z^UN>wRX&7*`6|TaJR{>?*+UjqtYHDt%FR!f$T;gAv`NR2}-q2W8UsQ4y zd7tL@LXu|#PzN#CT>OAWvbwY81+pswmo!$P)u2@DUsh9DRS%ih1Z;WbT5WHDWQG@2 zRe4hpa;6F+U?xx=ARp+1tZ7Xx^?{nYDt}c|Q$th1)S|g(N&g@#)_s*#6-`xjRrP^5 zy$V{DwI%32e?@D#e-ZSs-d|B3sHjE;R3+2z4^%fbEc4e^)h`KDtEwOymMzao7tK4#Uvk#GY5rPJL$gn+ZKx=(t%~W~$z&bM zos|<+j+*)<@s(*_Ikixgmqu4X`|T#9f_Q@`R$~;SaH`#rQ6^#<3MS%csFMRWDOz}{ zvjxLxgerM*Qx%5&(yF4msDM=`Eh=YAngcQ#p??1{;fjX3#`2~rYQG{43Ng~Hm@l?}>97b*MZ?7EnU{@u8y+?=ZY?fD!4r352N?{JOVGhY3_2CE1M6sb6wFW=DErpriGjKmphp7e_JeaMD=E~R; z$0W+ae`Kp6QBj{IRRMohYeiLKpaw2fV}JvBUSN7fLrXx(BTD{1XyNxw_Zq>XhlxSXL}LbxO8YuwX&{Os_v{ z$}})8*b5e*QQAn9B8`?qYOvyPX$K(9Cjs1Zsm44$ zzj*n6l&-&~cyU_ecyvf>dKqw*x*c2G+Ja;3qraI~?#F2YiXWBr7_PUfhr90sE`kZj?{o0ScPA0t21|qcAtAwBFfZOYH!t)()d%u8idyiSN z@A61MIOT6Y_C5mPGi)G2d%aCK`^A3j^*Q0QY#>5={ZDv-18%RM33u*e+xroOpW(#6 z&m$=;<1x-+Pr3tcuj!ea>40O)D*EI&;H<-b@*HsLmi_1sIP12b5(nJYY340(z%g*6 zPniRbp&osz9q=(xsHQbK;4l!;r_});7lmqCn*;84z*jopw#{I6rvrX~1AmnR?%aP` z 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 ecaq6dOPiT|XMTeM datmes_; public: @@ -159,7 +161,24 @@ public: // obtain length of data segment datsize_ = markseq.size(); + + // find starting index (supposed to be after fourth comma = 0x2c) + int countcomma = 0; + for ( unsigned long int buidx = 0; buidx < datsize_; buidx++ ) + { + // count number of comma chars in head of data segment + if ( markseq[buidx] == 0x2c ) countcomma++; + + // save position following fourth comma + if ( countcomma == 4 ) + { + datstartidx_ = buidx + 1; + break; + } + } } + + // save segment corresponding to marker datasec_.insert(std::pair>(mrk.first,markseq)); } } @@ -268,16 +287,22 @@ public: // convert 16bit "decimal-encoding" floating point numbers void convert_data_16_bit_decimal() { - //assert ( (datsize_-29)%2 == 0 && "length of buffer is not a multiple of 2" ); + assert ( (datsize_-datstartidx_)%2 == 0 && "length of data is not a multiple of 2" ); - unsigned long int totnumby = (datsize_-30)/2; + double flstp = 0.04395; + + // parse bytes in data buffer + unsigned long int totnumby = (datsize_-datstartidx_)/2; for ( unsigned long int by = 0; by < totnumby; by++ ) { + // retrieve set of two subsequent bytes std::vector pnum; - for ( int i = 0; i < 2; i++ ) pnum.push_back(datasec_["datas marker"][(unsigned long int)(29+by*2+i)]); + for ( int i = 0; i < 2; i++ ) pnum.push_back(datasec_["datas marker"][(unsigned long int)(datstartidx_+by*2+i)]); - datmes_.push_back((double)( (((int)pnum[0]-128)*256 + (int)pnum[1])/100.0 )); - + // convert to double + //datmes_.push_back((double)( (((int)pnum[0]-128)*256 + (int)pnum[1])/100.0 )); + datmes_.push_back((double)( (((int)pnum[1]-128)*256. + (int)pnum[0])/100.0 )); + //datmes_.push_back( (double) ( ( (int)pnum[0] + (int)pnum[1]*256 )*flstp ) ); } }