1 Reply Latest reply on Apr 28, 2017 2:19 AM by MaRi_1281436

    How to download minidriver in HCI UART H5 mode with BCM43438/CYW43438?


      Is is possible to download the minidriver (patchram) in H5 mode?


      After setting up an H5 Link, I'm sending HCI Reset, HCI Read Local Version Information, HCI Read Local Name.

      Then, I send the Download Mini Driver Command (FC2E) with H5 Seq nr. 3. Next, I get the HCI Command Complete with H5 Ack nr. 3.

      This means, it received and processed the Download Mini Driver Command, without confirming on H5 that it received it???


      Then, I get a weird packet with seq 0, ack 0 that has packet type HCI event, but isn't a valid HCI Event:

      0x75, 0xD8, 0x21, 0x00, 0x02, 0x00,

      Independent of the unexpected seq nr, this packet should have a length of 2 + 0xD8 bytes. Also, there is no official HCI Events with an opcode of 0x75.


      350 ms later, we get an H5 Ack packet for the Download Mini Driver Command.


      I've read that ".. this command triggers the device to reboot into a state where it is prepared to receive a download of a minidriver." Does this confuse the H5 state?


      Is it possible to first upload the mini driver and then switch to H5 since we really need H5 mode?


      Thanks for any hints!




      A bit lof log:


      [Apr 24 13:59:16.119]  [HCI COMMAND]  [FC2E] VSC - Download Mini Driver

      [Apr 24 13:59:16.119]  [NOTE]  hci_transport_h5.c.357: hci_transport_link_send_queued_packet: seq 3, ack 3, size 3. Append dic 1, dic = 0x5265

      [Apr 24 13:59:16.119]  [NOTE]  btstack_util.c.225: 0x2E, 0xFC, 0x00,

      [Apr 24 13:59:16.119]  [NOTE]  hci_transport_h5.c.240: slip: send 12 bytes

      [Apr 24 13:59:16.135]  [NOTE]  hci_transport_h5.c.531: process_frame, reliable 1, packet type 4, seq_nr 3, ack_nr 3 , dic 1

      [Apr 24 13:59:16.135]  [NOTE]  btstack_util.c.225: 0xDB, 0x64, 0x00, 0xC0,

      [Apr 24 13:59:16.135]  [NOTE]  btstack_util.c.225: 0x0E, 0x04, 0x01, 0x2E, 0xFC, 0x00,

      [Apr 24 13:59:16.135]  [NOTE]  btstack_util.c.225: 0xBC, 0x80,

      [Apr 24 13:59:16.135]  [HCI EVENT]  Command Complete [FC2E] - Download Mini Driver

      [Apr 24 13:59:16.135]  [NOTE]  hci.c.1298: Command complete for expected opcode fc2e at substate 9

      [Apr 24 13:59:16.135]  [NOTE]  hci_transport_h5.c.368: send ack 4

      [Apr 24 13:59:16.135]  [NOTE]  btstack_util.c.225: 0x20, 0x00, 0x00, 0xDF,

      [Apr 24 13:59:16.135]  [NOTE]  hci_transport_h5.c.240: slip: send 6 bytes

      [Apr 24 13:59:16.151]  [NOTE]  hci_transport_h5.c.531: process_frame, reliable 1, packet type 4, seq_nr 0, ack_nr 0 , dic 1

      [Apr 24 13:59:16.151]  [NOTE]  btstack_util.c.225: 0xC0, 0x64, 0x00, 0xDB,

      [Apr 24 13:59:16.151]  [NOTE]  btstack_util.c.225: 0x75, 0xD8, 0x21, 0x00, 0x02, 0x00,

      [Apr 24 13:59:16.151]  [NOTE]  btstack_util.c.225: 0x34, 0xE8,