StephenBlackWasAlreadyTaken / wixel-xDrip

Allow a wixel to function as Dexcom Reciever
Other
47 stars 117 forks source link

What are acceptable values of the elements of Dexcom_packet? #38

Open ijustlovemath opened 8 years ago

ijustlovemath commented 8 years ago

Trying to test my Wixel without a transmitter, so I'm using another Wixel to send it a packet that looks like a Dexcom_packet. Except I'm not really sure what values to use to make a realistic simulation. Any references you have on the subject would be very helpful.

Cagier commented 8 years ago

I think you will probably make some people very nervous if you talk about spoofing G4 sensor/transmitter data unless you are inside a Faraday cage or something. On the other hand, I reckon that some people have already set up some sort of test rig like this and are just not publicising it. I am actually in the same boat myself as I am working on a caution of the xDrip and testing is very slow when you have to wait 5 minutes for every packet. Anyway, I suggest you start by looking at the structure of the _Dexcom_packet in dexdrip.X and looking at some sample outputs of raw data etc. in the mongodb. I will see if I can decompose some real packets for you but I do remember seeing a note in one of the early versions of this dev somewhere that gives more of a breakdown of the values. If you have sample code (for educational purposes) if your transmitter test harness I would be interested in having a look!

Cagier commented 8 years ago

I think you will probably make some people very nervous if you talk about spoofing G4 sensor/transmitter data unless you are inside a Faraday cage or something. On the other hand, I reckon that some people have already set up some sort of test rig like this and are just not publicising it. I am actually in the same boat myself as I am working on a modified version of the xDrip and testing is very slow when you have to wait 5 minutes for every packet. Anyway, I suggest you start by looking at the structure of the _Dexcom_packet in dexdrip.X and looking at some sample outputs of raw data etc. in the mongodb. I will see if I can decompose some real packets for you but I do remember seeing a note in one of the early versions of this dev somewhere that gives more of a breakdown of the values. I'll see if I can find that.... If you have sample code (for educational purposes) if your transmitter test harness I would be interested in having a look!

ijustlovemath commented 8 years ago

The code itself is very simple, and since most people have their wixel set to only listen for their transmitter, there's no real worry of spoofing someone else's signal.

Here's my modification to main:

while(1)
    Dexcom_packet * pkt = radioQueueTxCurrentPacket();
    boardService();
    if(pkt)
    {
        pkt->len = sizeof(Dexcom_packet);
        //assign all others a 0;
        blink_red_led();
        radioQueueTxSendPacket();
    }

The rest is much the same.

StephenBlackWasAlreadyTaken commented 8 years ago

I wouldnt put up the crc but depending on what you are trying to do there are certainly ways to do it. The wixel code on the receiver dosnt need to remain the same, I actually think I may have had a branch somewhere that just sends fake values every 20 seconds (just going up then down again over and over) that takes the place of the xdrip-wixel firmware (so you can test everything starting at the bt module and moving down the line)

ijustlovemath commented 8 years ago

Sorry, not sure what you meant by that. Do you have an example?

Cagier commented 8 years ago

I think this is the branch he means

https://github.com/StephenBlackWasAlreadyTaken/wixel-xDrip/tree/TestBranch-4-timed