From de1b8027b1cf0cb20d4158d197b7f705aabb8ef6 Mon Sep 17 00:00:00 2001 From: 488_MP-4 <488_MP-4@iastate.edu> Date: Sun, 29 Oct 2023 22:56:37 +0100 Subject: [PATCH] debugging sending return packet --- .../SetpointHandler.cpython-38.pyc | Bin 7175 -> 7175 bytes .../crazyflie_connection.cpython-38.pyc | Bin 6983 -> 7235 bytes .../groundstation_socket.cpython-38.pyc | Bin 4712 -> 4800 bytes .../__pycache__/uCartCommander.cpython-38.pyc | Bin 7993 -> 7993 bytes cflib_groundstation/crazyflie_connection.py | 25 +++++++++++++++--- cflib_groundstation/groundstation_socket.py | 23 ++++++++++------ 6 files changed, 36 insertions(+), 12 deletions(-) diff --git a/cflib_groundstation/__pycache__/SetpointHandler.cpython-38.pyc b/cflib_groundstation/__pycache__/SetpointHandler.cpython-38.pyc index 5c0cdede7a433629c0523d73857000b22532edb2..4027a377ae82889947f5b062d6e37b0967afcddf 100644 GIT binary patch delta 20 acmZp-Xt&@F<>lpK00O`Lb{o0>NCN;cN(CVR delta 20 acmZp-Xt&@F<>lpK0D_9$RvWqhNCN;dL<K_t diff --git a/cflib_groundstation/__pycache__/crazyflie_connection.cpython-38.pyc b/cflib_groundstation/__pycache__/crazyflie_connection.cpython-38.pyc index 85ab6295b2709099c95186ac0dfb1fb717b02213..5c520b674f7d044fda08380bc14c0ac76f1f1a2f 100644 GIT binary patch delta 766 zcmYjNy=xRf6rb6T*}eU`<g&Ss6yZQEj-<Fk)F?)x2E{KBQInGxH@BOR%X&%X=8S<^ zA_l=y7_drl*N9*x{sp2aR#sYUAwh$P2v&9$zPTu7AMdyC{eJIbX5Jopb;P^sx)y@( z-TU#VKK$H!nag^Rn&79vTlcZ}lsmt1kE4d#(YlDfVMxXey+InrCdP=F|MQN~MVmO$ zp+=Y50!j$iPotUri2-%SU)|&;a9)z(q?6&9E>x~=tv-Y<BD*-@S_vf<<d)2@qm5=! zL(E#T=r%^uLL)JzQB#>h%-%$a&25fDrG!E?)E>b9@Lo;}$v-YMxwS+dVOnL591cs| zju&RQ)m0Lw=`*~CwRTyUecX`);XHQl#)xHQ)QkHX{jl1G)eg5qcS}oLu5@zTmA4AL zE2xqcuLl-fItI^4M*&j2C`SCD{8<^BVZegfIBL=ZkY1_`h#P+S49&~paalm_1aUiR zrCPk$Vkrq$R-$G|C!~~_TW3)~X|SH^^YL=PXjRhMN>E=)RhTKB`K5~<?U%z2N|=;z zRKhWUni{uQO=ZjVRD~@y(rV8ElWL1Bx?Lkdowb9wcdnW-AD@I}E%D1AoxA|ONHcK} z%*3XuU<>zQA7TyM0rzy^v7>sx5S4)DLk;lCt_~>94c^7uqFN}6FN0I~GerBuZ2lVF z5fj<6_?Vx@Ux8c0-^9~G8-EwW#WnmxJT7kFpCVs+B0iM-!5Mj#n-XRv+>#K8%XUHh XE{zn&Ol6O$)CRdypwWvHLni(M**3NF delta 568 zcmYk0PiqrV6vf}0nM~eH{z1v4Gl`3U2oAUiE~Hcts-O!+@J~%rg*bMG(lJfLn^!gR zf<i%XC)}O5NIru40YqGMS+o>!go5t;5Q6u1q0Z&~IOn`~F7s(=?_71YQgIo62m8y( z@7CMu$Aubsf#(vQ>?ebxg{#k&HA~HzHD~g<Dv(a?w3v#Sn6q6zEhwf7yPPAn6|kv| z-X`B=Bi~}mdFaa5oYBO^X|c~nMvp01o7fdv%u3ptQ=3$g6!r!6RXMF_9*YwJiybXu z_l-4mv@xq{hn~fyTP!R?T;J&A_Exqr*o=SCpNCd1$g0UWkykLtMI5PUFib}B6x!=y z4TRV3<koOAQ?h}Pyg<+FN6~O6$>a(d=fOlJk(ALSx1;em8O5;e1>A*~UdvP4>uYwj zu6CkfZer_rFC2Pj!VY$sCAg0xxG)Xw^16wNm(41-xQ*Jy5pcQjgzv)#<Y#0XdW(I2 z04udNd_i@1oL%#~rLVX!GiWV`8;t<={G0q6G=s;b?|*L$Xgdvf7Yr&#|FWki;gws5 uv&|RbZA|4V;SQlo=n?vaHNsuOJ^0bQ=${tGe`CrLUWJSD{`>PS!T$i0L4?Qv diff --git a/cflib_groundstation/__pycache__/groundstation_socket.cpython-38.pyc b/cflib_groundstation/__pycache__/groundstation_socket.cpython-38.pyc index 6b0bc4dda7a65b59de08199f08b7d0999c907c75..54fe1726f0e08f21c905fee78ae7278a6a077dac 100644 GIT binary patch delta 893 zcmZ`%&ubGw6rMM`nM`)GlTB?+f|gcjiy{634;K7U1<|N&v{q@%p%5~Q7&XSp<|2`R z5f2`;b#8*t3f=?>#Y+Y0U*JVg0dL}uo8U!nzRAS~>JHzx?|biivyaDqpV*xAu6mwB z@acX!5xiRQM&ad3Zn{k*y~Rsh+NIc8A|sMLB$9P#$w3vB92E~($11s~W70wG^mQDy zE90o+K@{sAYEKH(qF)!N6VgZR_v;Bs7f3ew!%UEcUSz%*G=oC6+l$%Yt$(qH0gkT! ziM*q5O26gbpr~KO3hl4x4vB;g012T(?$Z{P^hp1`N?RbU45?buK1tS$gS4n|w&<2x zWQP2w&NAC|MKk~W?ZFF8Y1`{?5S}4stbq~8s@<Ytq{^xmI<PxM!f2IOtrS_Kg9GDk zVugE&pjNpfZ`7`j*UOcgLCAgqF5ta><BX+aDuuBcN9wV1y&lx0I*3C5bY}N0VbGXB zBEW$Gr^EP8BLrdyu@ezTOaa$Lw+wl`;U0&E{_Q?xd2CbXv=HfC5e!{KLm-(>aey<P zLX7Cm_yhO6v0gAVtLMDa(9+L5IgkaBg-1FkiUZjvA_tH4hPbxlA~qMYOl`esDlt8> zi1}qigCTLS@u)@p+8fo&2{mTA)FngnhAtagFm%Px8NJ8P4}355m!PCS`X59Q4bKsc zy+~Yllau(vDU;3m`g1aMY!1Vo9n_k)m4%_Qjb@EdH7lX=O~x!m?KgDT&>=%+Tvf!K brS!~DVs{#)S+6-haLcCRuJ8D^&wS@E%~rD+ delta 759 zcmZXRy>AmS7{>ixe2#M;z9W=Ii6||fB2<)*g@T0WKuLir9S{vfq9}?_&_krbxeTE2 zAq6o~Ro-A}2bfq;M}!2-6@Ng)zy<?5E3eZINjb}p{Ci$M{<<$me;@I0`o2T(+j@OI zy1V9&!JD<o=^Cx_5|OrKFNtJbtC~SdOOC`N)=gC%<cxHXoj$wBuJn+-D2;Uw*_Q%Y z^y@xyAVcJ^Ul$*@#wmE4f9MFng-u|eESS-s`7fyGcbW3@4|t-4NazBP1QIJw#k31g zt&X*BcR*TsB2zPD1FHiLy|ml4^MiBPe<|Y(rEu+Zo}8N{J6n-;wrwTpn8y^y7|D?& z6FV`@kqvA62scQPm!AYtqrM`S8}}xfwfci7(SM!sL$1o<UDSk;(?-r1Ifc?=wPrJF zNIm7w@4tgaYXpS=2M@9^3ZkzboY3#x8k98mF2b_D;;ph0PE&LGSvGe-**G>ouq9A9 zM#L0nJcr#=w*DH7>63oly=oHIj9k}m{mY>APhSqX3!(@e{aD-@a({?Pc%gZ4dv6)T z<swsqD<#47zD4w3VQ(=M4iuYO#C=z(N$7>J0JC}}oEuv9Tet*0eQ?irQ8AND{J4p0 z$R5^VmY!9{F9tpPQ9Ei!%0g1+b(FcKnn&r;sL_6?QidstUdk4jIgF~{!yGG&;?Tpl RG%ZX~OWY5gkcKSu{{bsKnEe0% diff --git a/cflib_groundstation/__pycache__/uCartCommander.cpython-38.pyc b/cflib_groundstation/__pycache__/uCartCommander.cpython-38.pyc index 1242daed281da98433672de57f3f356e49326a1c..f84b6b1068c5e0a275f109b420b3c0c439f16dc5 100644 GIT binary patch delta 20 acmdmKx6_V0l$V!_0SNr|+im35lLr7c_5{ZO delta 20 acmdmKx6_V0l$V!_0SNwASZ?IjlLr7g3I!|x diff --git a/cflib_groundstation/crazyflie_connection.py b/cflib_groundstation/crazyflie_connection.py index 85b9ce285..64f28687f 100644 --- a/cflib_groundstation/crazyflie_connection.py +++ b/cflib_groundstation/crazyflie_connection.py @@ -177,7 +177,16 @@ class CrazyflieConnection: try: if self.scf.is_link_open(): - toc = list(self.scf.cf.param.values.values()) + print(self.scf.cf.param.values) + lst = list(self.scf.cf.param.values.values()) + print(lst) + toc = [] + for val in lst: + sublst = list(val.values()) + for item in sublst: + toc.append(item) + #lst2 = list(self.scf.cf.param.values) + #print(lst2) #val = toc.flatten() #print(val) print(toc) @@ -190,10 +199,18 @@ class CrazyflieConnection: pass - data = bytearray(group) - data.append(name) - data.append(val) + data = bytearray() + data += command['data'][0:2] + data += command['data'][2:4] + if "." in actual: + actual = float(actual) + flBytes = struct.pack('f', actual) + else: + actual = int(actual) + flBytes = struct.pack('i', actual) + data += flBytes print(data) + print(len(data)) responsedata = { "msg_type": (MessageTypeID.RESPPARAM_ID), "msg_id": command['msg_id'], diff --git a/cflib_groundstation/groundstation_socket.py b/cflib_groundstation/groundstation_socket.py index 90983b4ca..57f1ffb0f 100644 --- a/cflib_groundstation/groundstation_socket.py +++ b/cflib_groundstation/groundstation_socket.py @@ -3,6 +3,7 @@ import socket import os import collections from enum import IntEnum, Enum +import struct # Set the path for the Unix socket socket_path = './cflib_groundstation.socket' @@ -92,14 +93,23 @@ class GroundstationSocket(): def EncodePacket(self, messagedata): print("encoding packet") - bytedata = bytearray(Message.BEGIN_CHAR.value) - bytedata.append(messagedata["msg_type"] & 0xFF) - bytedata.append((messagedata["msg_type"] >> 8) & 0xFF) + bytedata = bytearray() + bytedata += b'\xbe' + + bytedata.append((messagedata["msg_type"].value & 0xFF)) + print(bytedata) + bytedata.append((messagedata["msg_type"].value >> 8) & 0xFF) + print(bytedata) bytedata.append(messagedata["msg_id"]) + print(bytedata) bytedata.append(messagedata["data_len"] & 0xFF) + print(bytedata) bytedata.append((messagedata["data_len"] >> 8) & 0xFF) + print(bytedata) bytedata += messagedata["data"] - bytedata.append(self.packetChecksum(messagedata["data"], PacketHeader.HDR_SIZE.value + messagedata["data_len"] + ChecksumFormat.CSUM_SIZE.value)) + print(bytedata) + bytedata.append(self.packetChecksum(bytedata, PacketHeader.HDR_SIZE.value + messagedata["data_len"] + ChecksumFormat.CSUM_SIZE.value)) + print(bytedata) return bytedata def WriteToBackend(self, message): @@ -136,10 +146,7 @@ class DataType(IntEnum): intType = 0 stringType = 2 """ - Message type IDs used to know what kind of message we are dealing with - Enumeration used to index the MessageTypes array in commands.c - - DO NOT change items in the middle of this enum or you will break backwards compatibility. + Message type IDs used to know what kind omessagedata enum or you will break backwards compatibility. Add new message types in the slot between MAX_TYPE_ID and the one before it DO NOT change this enum without also updating the "MessageTypes" array in commands.c to match. -- GitLab