Dr_Doggy
Well-Known Member
first i should say that just trying to find the command string to my ble device is hard enough .. there may be a layer of encryption around it too!? This is just for a ble lightbulb & works with my phone through its software, id be happy if i can control it externally from arduino(since i cant get ble sdk for win7)
So first I have successfully scanned and found the device(device #1 ) with a generic scanner which shows a device mac address and a string as in img1, called the raw data but what is all this and is it encrypted?
Next I click the connect button, and it pulls up all these table such as a device info table which has things like firmware string uuid, manufacture string uuid, model string uuid, revision string uuid .... next is generic access string with device name uuid and appearance uuid.... all, naturally, read only. Next is the custom service table, a little more interesting where there are 3 tables all named custom characteristics and are all also read write, but also the third one is notify too.
1) So I am hopeing someone can shed light on how strings are assembled and what is involved for 2way communications, like are they single packet sends, is there generic length and is it like send xxxx, listen for ack.. done or send1 ack, send2 ack, send3 ack.?
2) Also thinking about it i wonder if i need to worry about things like the PAN id & frequency channels and other similar things i found in xbee?
3) It is also strange when i scan my google home mini's the kitchen speaker shows up with the proper name but the livingroom does not. And there are other devices in the home including those two that do not allow me to connect at all, although i still get mac address from them? It is strange since anyone can cast here, even unregistered users.
4) So about encryption , i have been reading about the types and just a few questions,
i) i understand a cypher, where my string is 1234567 and key is 123, so i add 1234567 +1231231 .. but what happens in the event where 0xFE + 0x02
ii) Symmetric encryption seems the same as cypher , is there a difference?
iii) public key encryption is over my head, i dont get how the key gets to the user safely, or how 2 keys can produce the same output value, any chance of a algorithm example code floating around? And also if algorithms are different how does every PC have it for web browsing?
thanks in advanced!
So first I have successfully scanned and found the device(device #1 ) with a generic scanner which shows a device mac address and a string as in img1, called the raw data but what is all this and is it encrypted?
Next I click the connect button, and it pulls up all these table such as a device info table which has things like firmware string uuid, manufacture string uuid, model string uuid, revision string uuid .... next is generic access string with device name uuid and appearance uuid.... all, naturally, read only. Next is the custom service table, a little more interesting where there are 3 tables all named custom characteristics and are all also read write, but also the third one is notify too.
1) So I am hopeing someone can shed light on how strings are assembled and what is involved for 2way communications, like are they single packet sends, is there generic length and is it like send xxxx, listen for ack.. done or send1 ack, send2 ack, send3 ack.?
2) Also thinking about it i wonder if i need to worry about things like the PAN id & frequency channels and other similar things i found in xbee?
3) It is also strange when i scan my google home mini's the kitchen speaker shows up with the proper name but the livingroom does not. And there are other devices in the home including those two that do not allow me to connect at all, although i still get mac address from them? It is strange since anyone can cast here, even unregistered users.
4) So about encryption , i have been reading about the types and just a few questions,
i) i understand a cypher, where my string is 1234567 and key is 123, so i add 1234567 +1231231 .. but what happens in the event where 0xFE + 0x02
ii) Symmetric encryption seems the same as cypher , is there a difference?
iii) public key encryption is over my head, i dont get how the key gets to the user safely, or how 2 keys can produce the same output value, any chance of a algorithm example code floating around? And also if algorithms are different how does every PC have it for web browsing?
thanks in advanced!