Minidrones direct bluetooth commands


#1

hi

im looking for the bluetoothcommands to control the Mambo Minidrone.
Did anyone sniff them out already or someting?

regards
mtf


#2

I found this code:
> this.logger(‘RollingSpider#handshake’);

        ['fb0f', 'fb0e', 'fb1b', 'fb1c', 'fd22', 'fd23', 'fd24', 'fd52', 'fd53', 'fd54'].forEach(function(key) {
        var characteristic = this.getCharacteristic(key);
        characteristic.notify(true);
        }.bind(this));

This seems to be the handshake command:

‘fb0f’, ‘fb0e’, ‘fb1b’, ‘fb1c’, ‘fd22’, ‘fd23’, ‘fd24’, ‘fd52’, ‘fd53’, ‘fd54’

can someone translate it for me so i can paste it into the console?
Or tell me how to?

This would be taking off:

if (!this.status.flying) {
this.writeTo(
‘fa0b’,
new Buffer([0x02, ++this.steps.fa0b & 0xFF, 0x02, 0x00, 0x01, 0x00])
);
this.status.flying = true;

‘fa0b’,
new Buffer([0x02, ++this.steps.fa0b & 0xFF, 0x02, 0x00, 0x01, 0x00]


#3

Hi,

You can find here a complete documentation of the protocol used by the Mambo (and other BLE minidrones).

All commands are described in the arsdk-xml repository.

Regards,
Nicolas.


#4

Thanks Nicolas, Ill be fighting through the docs and will post back my experience with it.


#5

so i am able to connect to the drone,
but sending the commands i decrypted to ints/longs
still no reaction comes from the drone

i saw here that the handshake is not neeeded.

the command to take is sent looks like this:

64000, 64011, 4, 64011, 2, 0, 1, 0

DataType, SequenceNumber, else are datas

Am I missing something?

kind regards
moe


#6

also tried this:

//char handshakeChar[] = “fb0f, fb0e, fb1b, fb1c, fd22, fd23, fd24, fd52, fd53, fd54”;
//char handshakeChar[] = “‘fb0f’, ‘fb0e’, ‘fb1b’, ‘fb1c’, ‘fd22’, ‘fd23’, ‘fd24’, ‘fd52’, ‘fd53’, ‘fd54’”;
//char charMapChar[] = “fb0f, fb0e, fb1b, fb1c, fd22, fd23, fd24, fd52, fd53, fd54”;
//char charMapChar[] = “‘fb0f’, ‘fb0e’, ‘fb1b’, ‘fb1c’, ‘fd22’, ‘fd23’, ‘fd24’, ‘fd52’, ‘fd53’, ‘fd54’”;
//char takeoffChar[] = “‘fa00’, ‘fa0b’, 4, ‘fa0b’, 2, 0, 1, 0”;

no success


#7

learned more about frame construction
takeoff command looks like this now:

byte datatype = {0x02}; // datatype - nonAck                               FIRST BYTE IN ORDER
byte seqnumber = {0x01}; // sequencenumber or steps - 0-255 then loops    SECOND BYTE IN ORDER
                         // START OF ACTUAL DATA - device type   0x02??   THIRD BYTE IN ORDER                     
byte devicetype = {0x02};
byte takeoffByte[] = {datatype, seqnumber, devicetype, 0x00, 0x01, 0x00};

but still no success taking off!

is maybe the device type wrong?
its the one from rolling spider - same like Parrot Mambo???


#8

Hi ! Can you send to me an email to talk about this project please ? My email is : SBonnard06@gmail.com

Thanks you so much