mirage icon indicating copy to clipboard operation
mirage copied to clipboard

Integration for SniffLE v1.6 not working properly

Open maichai opened this issue 3 years ago • 10 comments

I have a SniffLE 1.6 device and it works wll with the SniffLE python clients. The integration in Mirage seems to be using older firmware, as ble_scan and ble_sniff do not show anything, but the original clients show something.

Important note: I edited the issue from version number 1.5 to 1.6. The firmware version 1-5 actually works fine with Mirage, it is firmware version 1.6 that does not work. Sorry, my bad.

maichai avatar Aug 06 '21 14:08 maichai

Hi, Can you provide me the output of lsusb please ? Thanks.

RCayre avatar Aug 09 '21 08:08 RCayre

Will do when I come back where I have th ehardware. You are aware that the client needs to fit the firmware version?

maichai avatar Aug 11 '21 17:08 maichai

lsusb identifies the board as: Texas Instruments, Inc. CC1352R1 Launchpad in /dev/serial/by-id/ both ports of the launchpad can be seen. It also works using the sniffle python clients, so it is a problem with the client code in mirage. You are aware that the client needs to fit the firmware version?

maichai avatar Aug 13 '21 10:08 maichai

I tried again with SniffLE 1.6, Injectable/ButteRFly NRF Dongle, modified BTLEjack firmware for MicroBit: Result: -butterfly0 and microbit0 show advertisements, also new connections, but must of the info is missed, cracking does not happen. -sniffle0 show nothing: mirage says it is using firmware 1.5 (actually the device has firmware 1.6!), my guess is that your mirage code was written for an older version of SniffLE, e.eg. 1.5 and does not work with 1.6 SniffLE firmware. I had the same problem when I upgraded the firmware to 1.6 and did not upgrade the command line tools for SniffLE.

In order to verify my hypothesis I flashed the old SniffLE firmware 1.5 on my board and that works fine with Mirage.

I suggest you take a look at the changes from 1.5 to 1.6 in the SniffLE command line tools and update your code in mirage accordingly.

maichai avatar Oct 18 '21 13:10 maichai

Sniffle firmware v1.6 did break compatibility with v1.5 clients due to changes in the firmware->host message format. Some time soon (still working on things), I'll be releasing a Sniffle v1.7 firmware that again breaks compatibility with client software for v1.6, due to a baud rate change (working around a latency issue with the XDS110 USB to UART). Hopefully that'll be the last client-breaking change for a while. Once v1.7 is out, I'll look into getting Mirage working with it again.

sultanqasim avatar Mar 22 '22 22:03 sultanqasim

Hi @sultanqasim , any updates on this topic ? Is the current sniffle API stable enough to implement it in Mirage?

RCayre avatar Aug 12 '22 17:08 RCayre

I ended up not changing the baud rate as I made a workaround (custom XDS110 firmware) to fix the latency issue in the stock TI firmware. The API should remain stable now I'd say.

sultanqasim avatar Aug 12 '22 17:08 sultanqasim

Great news, thanks ! I'll try to implement the support for sniffle as soon as possible :)

RCayre avatar Aug 12 '22 17:08 RCayre