Forum Rule: Always post complete source code & details to reproduce any issue!
Page 5 of 28 FirstFirst ... 3 4 5 6 7 15 ... LastLast
Results 101 to 125 of 680

Thread: T3.6 USB Host - Bluetooth

  1. #101
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    Hi @mjs513 and @defragster,

    As you have noticed I have not played yet with the BT mouse here. I probably should. My Logitech mouse can bind to three different Bluetooths, currently on my main computer and as I mentioned I don't really like it.. So maybe better to use it to test this stuff out.

    I pushed the current stuff up to github

    Question is what priority to try next.

    a) Put the string caching in. Not a big deal.
    b) Maybe extend PS4 functionality. Would be great, but wait until I get some more stuff working... So if someone else beats me to it
    c) Get a few more BTish joysticks to work, like PS3, XBox One. Not sure if I still have a Wii remote around here or not...
    d) BT Mice
    e) Get more dongles to work... Might try a quick hack to see if this might work. I have had to do this in some other cases, like some joysticks did not setup as HID device so we had to process the device directly...

    ...

    Then figure out how to have multiple devices connect... Again like Mouse and Keyboard...

  2. #102
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Quote Originally Posted by KurtE View Post
    Hi @mjs513 and @defragster,

    As you have noticed I have not played yet with the BT mouse here. I probably should. My Logitech mouse can bind to three different Bluetooths, currently on my main computer and as I mentioned I don't really like it.. So maybe better to use it to test this stuff out.

    I pushed the current stuff up to github

    Question is what priority to try next.

    a) Put the string caching in. Not a big deal.
    b) Maybe extend PS4 functionality. Would be great, but wait until I get some more stuff working... So if someone else beats me to it
    c) Get a few more BTish joysticks to work, like PS3, XBox One. Not sure if I still have a Wii remote around here or not...
    d) BT Mice
    e) Get more dongles to work... Might try a quick hack to see if this might work. I have had to do this in some other cases, like some joysticks did not setup as HID device so we had to process the device directly...


    Then figure out how to have multiple devices connect... Again like Mouse and Keyboard...
    Kurt
    Think you pretty much got the order right. I would recommend a couple minor changes:

    a) Put the string caching in. Not a big deal.
    b) Maybe extend PS4 functionality. Would be great, but wait until I get some more stuff working... So if someone else beats me to it
    Not quite sure what you mean by more stuff. But I think rumble/leds and the full report from the ps4 bt is kind of necessary to at least match what the usb version is capabilities. I still playing with getting rumble, leds and full report working. Funny once in a while it does work. Wondering if you need a small delay or something.
    d) BT Mice - in between (b) - to do when you get fustrated.
    e) Get more dongles to work... Might try a quick hack to see if this might work. I have had to do this in some other cases, like some joysticks did not setup as HID device so we had to process the device directly...
    c) Get a few more BTish joysticks to work, like PS3, XBox One. Not sure if I still have a Wii remote around here or not...

    Thats just my 2 cents.

  3. #103
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    Quote Originally Posted by mjs513 View Post
    Kurt
    Think you pretty much got the order right. I would recommend a couple minor changes:

    b) Maybe extend PS4 functionality. Would be great, but wait until I get some more stuff working... So if someone else beats me to it
    Not quite sure what you mean by more stuff. But I think rumble/leds and the full report from the ps4 bt is kind of necessary to at least match what the usb version is capabilities. I still playing with getting rumble, leds and full report working. Funny once in a while it does work. Wondering if you need a small delay or something.
    I was sort of implying that maybe someone (i.e. you) will figure it out before I do

    Forgot to mention, that I have now tried e) to have table of VID:PID to try to go ahead and claim. It claims, but I am not working... I don't see anything like a led light... Probably need to do additional things like some BLE things...

  4. #104
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Quote Originally Posted by KurtE View Post
    I was sort of implying that maybe someone (i.e. you) will figure it out before I do
    Figured as much that's why I said do that in between …. May have a couple of questions for your tomorrow as I sort through this.

  5. #105
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    DOH - though MouseBt might be the ticket

    Had to pull the ZIP from KurtE to get changes - somehow my web FORK won't pull them over? And desk top is cloned from that?

    So running JoystickBt.ino with Bt adapter it doesn't ask to connect?

    Plugged in USB and I see:
    Code:
    *** Device HID1 54c:268 - connected ***
      manufacturer: SHANWAN
      product: PS3 GamePad
    *** HID Device Joystick1 54c:268 - connected ***
      manufacturer: SHANWAN
      product: PS3 GamePad
    Joystick: buttons = 0 0:128 1:128 2:128 5:128 42:252 43:1 44:220 46:124
    Joystick: buttons = 0 44:208
    Joystick: buttons = 0 44:220
    Joystick: buttons = 0 44:208
    // …
    Joystick: buttons = 0 44:208
    Joystick: buttons = 0 44:244
    *** Device HID1 - disconnected ***
    *** HID Device Joystick1 - disconnected ***
    Cool it has a motion controller built in.

    Buttons all seem to register - but no response to the two thumb joysticks.

    Not sure of the step to get PS/3 joy to be offered and connected on Bt?

    KurtE - the Bt Rii doesn't seems to connect with USB - let me know if there is support for that device.

    … suppose I need to get back to my real task ASAP

  6. #106
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    Mouse - stuff, I need to go through and/or make logic traces of how the drivers talk to the mice to set them up. I would assume pretty close to what the keyboard code does.

    Will look more in the morning.

    With the Rii - Yours might be more modern than mine is... But on mine, what I need to do to bind.

    Is to use the version of the constructor like: BluetoothController bluet(myusb, true, "0000");

    Then at least on mine, I turn on the rii, then press the BT button toward the upper right. Then maybe delay a little and then type in the PIN number in this case: 000 and hit the enter key. Then it should hopefully be bound... Not sure if I have tried recently to see if it will then work without having to enter the PIN and the smaller constructor...

    Kurt

    If I remember correctly the USB adapter only is used to charge the unit.

  7. #107
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    Using MouseBt with that edit I got a connect

    Will trust this to work and get on with my task . . .

    Code:
    USB Host Testing
    960
    *** Device Bluet a12:1 - connected ***
      product: CSR8510 A10
    key '0'  48 MOD: 0 OEM: 0 LEDS: 0
    key '0'  48 MOD: 0 OEM: 0 LEDS: 0
    key '0'  48 MOD: 0 OEM: 0 LEDS: 0
    key '
    '  10 MOD: 0 OEM: 0 LEDS: 0
    key 'q'  113 MOD: 0 OEM: 0 LEDS: 0
    key 'q'  113 MOD: 0 OEM: 0 LEDS: 0
    key 'w'  119 MOD: 0 OEM: 0 LEDS: 0
    key 'e'  101 MOD: 0 OEM: 0 LEDS: 0
    key 'r'  114 MOD: 0 OEM: 0 LEDS: 0
    key 't'  116 MOD: 0 OEM: 0 LEDS: 0
    key 'y'  121 MOD: 0 OEM: 0 LEDS: 0
    key 'H'  72 MOD: 0 OEM: 0 LEDS: 0
    key 'e'  101 MOD: 0 OEM: 0 LEDS: 0
    key 'l'  108 MOD: 0 OEM: 0 LEDS: 0
    key 'l'  108 MOD: 0 OEM: 0 LEDS: 0
    key 'o'  111 MOD: 0 OEM: 0 LEDS: 0
    key ' '  32 MOD: 0 OEM: 0 LEDS: 0
    key 'W'  87 MOD: 0 OEM: 0 LEDS: 0
    key 'o'  111 MOD: 0 OEM: 0 LEDS: 0
    key 'r'  114 MOD: 0 OEM: 0 LEDS: 0
    key 'l'  108 MOD: 0 OEM: 0 LEDS: 0
    key 'd'  100 MOD: 0 OEM: 0 LEDS: 0
    key '
    '  10 MOD: 0 OEM: 0 LEDS: 0
    key 'R'  82 MOD: 0 OEM: 0 LEDS: 0
    key 'i'  105 MOD: 0 OEM: 0 LEDS: 0
    key 'i'  105 MOD: 0 OEM: 0 LEDS: 0
    *** Device Bluet - disconnected ***
    *** Device Bluet a12:1 - connected ***
      product: CSR8510 A10
    Agreed - given the PC ignored the Rii - that is charge only. It saw the PS3 gamepad.

  8. #108
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    Finally debug_tt is usable on T_3.6 - seems bad on T4:: https://github.com/Defragster/T4_dem...aster/debug_tt

    The FAULT code is where it is failing - so don't cause any faults and the behavior and output is good. I should be able to run that back on … but must go offline ...

    Two tested up to date examples are :: DebugMin_tt and Trace_tt.

    If you hit 'y' three times on T_3.6 with Trace_tt it will FAULT. There is a 2 second delay between the ASSERTS that lead to that.

    On a T_3.6 it looks like doing back to back " debTrace_tt( ARM_DWT_CYCCNT, __LINE__, __func__ ); " calls takes ~94 CPU cycles. { FASTRUN adds a couple of cycles ??? }

    Keys calls are exposed in \libraries\debug_tt\debug_ttc.h - that should work for use in library/cores code to get prototypes:
    Code:
    extern "C" void printf_tt(const char *format, ...);
    #define assert_tt( a ) if (!(a)) { assert_ttf(__FILE__, __LINE__,  #a, __func__); lastF_tt=(char*)__func__; lastL_tt=__LINE__; }
    #define haltif_tt( a ) if ((a)) { haltif_ttf(__FILE__, __LINE__,  #a, __func__); lastF_tt=(char*)__func__; lastL_tt=__LINE__; }
    #define debTrace_tt( a, b, c ) { debTrace_ttf( (uint32_t) a, (uint32_t) b, (const char *) c, __LINE__, __func__); lastF_tt=(char*)__func__; lastL_tt=__LINE__; }
    #define deb_tt( a, b ) {debSet( a, (uint32_t)b, __LINE__, __func__ ); lastF_tt=(char*)__func__; lastL_tt=__LINE__; }
    void debTraceShow_tt( int Max, const char *aa, const char *bb, const char *cc);
    The examples show use of the above for sample use … look for
    Code:
    #include "debug_tt.h"
    
    void Debug_Dump(void){}   // your SKETCH code to do anything on a HALT or ASSERT or _isr break
    
    // PICK ONE: SERIAL# to use, GPIO pin to toggle, _isr pin for interrupt break
      debBegin_tt( &SERIAL_tt, LED_BUILTIN, 12);
      debBegin_tt( (HardwareSerial*)&Serial, LED_BUILTIN, 12);
    
    // TRACING :: Sketch passes param 1,2,3 - MACRO adds #4 and #5
    void debTrace_ttf( uint32_t aa, uint32_t bb, const char *cc, int __lineno, const char *__func) {
    
    // Max is max # to print. -1 stops Trace recording, -2 enables, -3 says print all, 0 says to clear the Trace data
    //  The Params aa,bb,cc are the printf() specifiers to print with the three trace values aa,bb,cc
    void debTraceShow_tt( int Max, const char *aa, const char *bb, const char *cc) {…}

  9. #109
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    @KurtE

    I wanted to do some debug printing from usbhost_t36 this morning so I uncommented "//#define USBHOST_PRINT_DEBUG" and the it just died on me - not sure its a Serial1 problem or not. This is what I get at the point it dies:
    Code:
    sizeof Device = 36
    sizeof Pipe = 96
    sizeof Transfer = 64
    power up USBHS PHY
    Now if I uncomment the next 2 prints in ehci.cpp I works, i.e., it connects and data is printed. But no debug data from usbhost_t36 is printed.
    Last edited by mjs513; 02-20-2019 at 01:17 PM.

  10. #110
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    @mjs513 - Wonder if the sketch you had running? I assume it did a start on Serial1.begin with some baud rate...

    Here is the startup on mine this morning, with some additional stuff in trying to allow that dongle with class 255 to act as BT Dongle...
    The startup on mine shows:
    Code:
    USB2 PLL running
     reset waited 5
    USBHS_ASYNCLISTADDR = 0
    USBHS_PERIODICLISTBASE = 20007000
    periodictable = 20007000
    port change: 10001803
        connect
      begin reset
    port change: 10001805
      port enabled
      end recovery
    new_Device: 12 Mbit/sec
    new_Pipe
    enumeration:
    enumeration:
    enumeration:
    Device Descriptor:
      12 01 00 02 FF 01 01 40 5C 0A E8 21 12 01 01 02 03 01
        VendorID = 0A5C, ProductID = 21E8, Version = 0112
        Class/Subclass/Protocol = 255 / 1 / 1
        Number of Configurations = 1
    enumeration:
    enumeration:
    Manufacturer: Broadcom Corp
    enumeration:
    Product: BCM20702A0
    enumeration:
    Serial Number: 0019860023AA
    enumeration:
    Config data length = 218
    enumeration:
    Configuration Descriptor:
      09 02 DA 00 04 01 00 E0 00
        NumInterfaces = 4
        ConfigurationValue = 1
      09 04 00 00 03 FF 01 01 00
        Interface = 0
        Number of endpoints = 3
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 81 03 10 00 01
        Endpoint = 1 IN
        Type = Interrupt
        Max Size = 16
        Polling Interval = 1
      07 05 82 02 40 00 01
        Endpoint = 2 IN
        Type = Bulk
        Max Size = 64
        Polling Interval = 1
      07 05 02 02 40 00 01
        Endpoint = 2 OUT
        Type = Bulk
        Max Size = 64
        Polling Interval = 1
      09 04 01 00 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 00 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 0
        Polling Interval = 1
      07 05 03 01 00 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 0
        Polling Interval = 1
      09 04 01 01 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 09 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 9
        Polling Interval = 1
      07 05 03 01 09 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 9
        Polling Interval = 1
      09 04 01 02 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 11 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 17
        Polling Interval = 1
      07 05 03 01 11 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 17
        Polling Interval = 1
      09 04 01 03 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 19 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 25
        Polling Interval = 1
      07 05 03 01 19 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 25
        Polling Interval = 1
      09 04 01 04 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 21 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 33
        Polling Interval = 1
      07 05 03 01 21 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 33
        Polling Interval = 1
      09 04 01 05 02 FF 01 01 00
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 31 00 01
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 49
        Polling Interval = 1
      07 05 03 01 31 00 01
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 49
        Polling Interval = 1
      09 04 02 00 02 FF FF FF 00
        Interface = 2
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 255 / 255
      07 05 84 02 20 00 01
        Endpoint = 4 IN
        Type = Bulk
        Max Size = 32
        Polling Interval = 1
      07 05 04 02 20 00 01
        Endpoint = 4 OUT
        Type = Bulk
        Max Size = 32
        Polling Interval = 1
      09 04 03 00 00 FE 01 01 00
        Interface = 3
        Number of endpoints = 0
        Class/Subclass/Protocol = 254 / 1 / 1
      09 21 05 88 13 40 00 10 01
        HID, 64 report descriptors
    enumeration:
    USBHub memory usage = 960
    USBHub claim_device this=20003840
    USBHub memory usage = 960
    USBHub claim_device this=20003C00
    HIDParser claim this=20003FE0
    HIDParser claim this=200044E0
    HIDParser claim this=200049E0
    HIDParser claim this=20004EE0
    HIDParser claim this=200053E0
    JoystickController claim this=20006100
    BluetoothController claim this=200058E0
    BluetoothController claim this=200058e0 vid:pid=a5c:21e8
        9 4 0 0 3 ff 1 1 0 7 5 81 3 10 0 1 7 5 82 2 40 0 1 7 5 2 2 40 0 1 9 4 1 0 2 ff 1 1 0 7 5 83 1 0 0 1 7 5 3 1 0 0 1 9 4 1 1 2 ff 1 1 0 7 5
        83 1 9 0 1 7 5 3 1 9 0 1 9 4 1 2 2 ff 1 1 0 7 5 83 1 11 0 1 7 5 3 1 11 0 1 9 4 1 3 2 ff 1 1 0 7 5 83 1 19 0 1 7 5 3 1 19 0 1 9 4 1 4 2 ff
        1 1 0 7 5 83 1 21 0 1 7 5 3 1 21 0 1 9 4 1 5 2 ff 1 1 0 7 5 83 1 31 0 1 7 5 3 1 31 0 1 9 4 2 0 2 ff ff ff 0 7 5 84 2 20 0 1 7 5 4 2 20 0 1 9
        4 3 0 0 fe 1 1 0 9 21 5 88 13 40 0 10 1
          rxep=1(16) txep=2(64) rx2ep=2(64)
    BluetoothController, rxep=1(16), txep=2(64)
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 3, at offset = 0, shift= 0
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 6, at offset = 0, shift= 1
    new_Pipe
    HCI_RESET called (03 0c 00 )
        control callback (bluetooth) 1
    0E 04 01 03 0C 00
    BT rx_data(6): e 4 1 3 c 0
    HCI_WRITE_CLASS_OF_DEV called (24 0c 03 04 08 00 )
        control callback (bluetooth) 3
    0E 04 01 24 0C 00
    BT rx_data(6): e 4 1 24 c 0
    HCI_Read_BD_ADDR called (09 10 00 )
        control callback (bluetooth) 4
    0E 0A 01 09 10 00 AA 23 00 86 19 00
    BT rx_data(12): e a 1 9 10 0 aa 23 0 86 19 0
       BD Addr:aa:23:0:86:19:0
    HCI_Read_Local_Version_Information called (01 10 00 )
        control callback (bluetooth) 4
    0E 0C 01 01 10 00 06 00 10 06 0F 00 0E 22
    BT rx_data(14): e c 1 1 10 0 6 0 10 6 f 0 e 22
        Local Version: 6
    HCI_WRITE_SCAN_ENABLE called(1a 0c 01 02 )
        control callback (bluetooth) 0
    0E 04 01 1A 0C 00
    BT rx_data(6): e 4 1 1a c 0
    Write_Scan_enable Completed
    Which I did not think worked yesterday.. As no blinking lights or the like on dongle... But reran just now with the Bind option on USB object and it does work
    I think at one point I thought the data was different. Anyway I will probably put that change up to git? Not sure what is happening on your side?

    Is the chip pushed down on the pins... Mine at times pops up

  11. #111
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Morning Kurt
    Think I have it sorted out why I didn't see some of my prints - but interesting that it crashes when I did something like uncommenting the debug define in usbhost_t36.

    Reason I was curious was because it doesn't seem the rumble code is being called - have to sort out why that is occurring.

  12. #112
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    UPdate:
    Quote Originally Posted by KurtE View Post
    ...

    Question is what priority to try next.

    a) Put the string caching in. Not a big deal.
    e) Get more dongles to work... Might try a quick hack to see if this might work. I have had to do this in some other cases, like some joysticks did not setup as HID device so we had to process the device directly...

    ...

    Then figure out how to have multiple devices connect... Again like Mouse and Keyboard...
    I just pushed an update to github for e)

    At claim time, I now have a list of VID:PID (currently only one) that if it is this device, it goes ahead and claims it, even though the device type is not correct.
    Looked like USB Host Shield 2 code also special cases this device, and it may have a second pair it special cases as well. I did not add that one yet. Wonder if your devices that were not working before work now...

    Mine now shows up in the output from test app like:
    Code:
    USB Host Testing
    960
    *** Device Bluet a5c:21e8 - connected ***
      manufacturer: Broadcom Corp
      product: BCM20702A0
      Serial: 0019860023AA
    And it is now paired with PS4 controller and works when I hit the PS4 button...

    @mjs513 -

    With the debug printing issue it may be that the top level printing controlled by: #define USBHOST_PRINT_DEBUG
    Is not controlling the print for rumble that you are looking for...

    It currently is sort of hard coded as: USBHDBGSerial.printf("Joystick update Rumble/LEDs\n");
    Which USBHDBGSerial is defined as Serial1...
    Note: in last push up to github, I put in if USBHDBGSerial is not defined it defaults to Serial

  13. #113
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    Quote Originally Posted by mjs513 View Post
    Morning Kurt
    Think I have it sorted out why I didn't see some of my prints - but interesting that it crashes when I did something like uncommenting the debug define in usbhost_t36.

    Reason I was curious was because it doesn't seem the rumble code is being called - have to sort out why that is occurring.
    Maybe need to investigate: I am not crashing, but not seeing the rumble message either now...

    - I commented out the call that let the Joystick set the type of PS4... Oops, pushed up change to only comment out the not complete code to save name

  14. #114
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    @KurtE

    Ok here is a problem. While setRumble is called it doesn't identify the PS4 correctly so it never gets updated - think I will pull down the latest changes from GitHub.

  15. #115
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    @mjs513 - Yep I screwed up see previous post...

  16. #116
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Quote Originally Posted by KurtE View Post
    UPdate:

    Code:
    USB Host Testing
    960
    *** Device Bluet a5c:21e8 - connected ***
      manufacturer: Broadcom Corp
      product: BCM20702A0
      Serial: 0019860023AA
    And it is now paired with PS4 controller and works when I hit the PS4 button...
    @KurtE

    I just tried the dongle that didn't work. With that change you made I can confirm that it works. Matter of fact, think it works better than the CSR dongle.

    This is the dongle that now works: https://www.amazon.com/gp/product/B0...?ie=UTF8&psc=1

    EDIT: Pulled your latest with the oops remotename not called, ps4 still not being identified correctly. Was that the fix.
    Last edited by mjs513; 02-20-2019 at 04:01 PM.

  17. #117
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    4,694
    @mjs513, Yep - I had the whole section commented out instead of just the part that was not complete to allocate memory...

    Trying to decide on how to do the string memory here as the string buffer stuff was put into the USBDevice code, so not accessible at this point. I could punt, which I have done so far, could simply add it's own buffer into the BTHid object, could have the class being called decide what to do. In case of joystick, it might be able to use the USBDevice code to handle string buffer as it is derived from it... In case of Mouse ... No...

    @mjs513 and @defragster - I just uploaded the possible start of the Bluetooth Mouse support. Like part of the claim code, which may not be fully correct yet:
    It is looking at the HID Peripheral class BT objects: https://www.ampedrftech.com/guides/cod_definition.pdf
    And in this case currently checking for pointing device bit, but may instead look at some of the other bits...

    And so far I am not doing anything with the data returned, but dump hex bytes to debug...

    Need to either find another BT mouse and/or figure out hwy my Logi MX Anywhere 2S is not appearing to send any BT discovery stuff... (I thought I just needed to select one of the unused channels) and then press the channel selector button for 3 seconds, but I am not seeing any debug messages show up at all...

    EDIT: Ordered another one: https://smile.amazon.com/TeckNet-260...dp/B01EFAGMRA/
    Last edited by KurtE; 02-20-2019 at 05:20 PM.

  18. #118
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    @KurtE
    I did some checking and trying to figure it out. The only I see is that joysticktype is 0 when it hits rumble. Just to test rumble I copied transmitPS4 to default yes I know its a hack.

    Now for the interesting. Since I am using the other dongle that I used uhs2 shield I am sending exactly the same command to the ps4 as the uhs2.0 code, but still not rumbling. Now I am beginning to wonder if there is a ack or something we have to address. More digging required. Something screwy going on.

    Just ordered the same mouse for future use.

  19. #119
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    This 'plugable' logo is on the 0xff dongles I have: https://www.amazon.com/Plugable-Blue.../dp/B009ZIILLI
    Not sure about the first but, Amazon says I bought the last one not so long ago : September 18, 2017 - I paid $14 - it is now $13.
    ->> I see exception added for 0xFF devices - Hot swap of 'PANBT400' "plugable" below shows this:
    Code:
    USB Host Testing
    960
    *** Device Bluet a12:1 - connected ***
      product: CSR8510 A10
    *** Device Bluet - disconnected ***
    *** Device Bluet a5c:21e8 - connected ***
      manufacturer: Broadcom Corp
      product: BCM20702A0
      Serial: 5CF37060D3E1
    Finally managed to click enough to get web_github to Pull_Request merge to and update my fork. Had to do it again to get update MOUSE - IHG [I hate github]
    -> Merge?Pull?Branches … Leaving Random Comments trying to make it go …
    KurtE: Trying to see if my simple Logitech Mouse 'M557' will pair?
    -> I set this in mouseBT.ino : BluetoothController bluet(myusb, true, "0000");
    Here is Amazon Purchase link for this mouse :: Logitech M557 Bluetooth Mouse
    Is there another step? Okay - Full Debug on:
    Code:
    04 0A 1E E3 A9 5D 88 34 80 05 00 01 
    BT rx_data(12): 4 a 1e e3 a9 5d 88 34 80 5 0 1 
        Event: Incoming Connect -  1e:e3:a9:5d:88:34 CL:580 LT:1
          Peripheral device
            Mouse
    BluetoothController::find_driver  driver 1fff48f8
    HCI_OP_REMOTE_NAME_REQ called (19 04 0a 1e e3 a9 5d 88 34 01 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 19 4 a 1e e3 a9 5d 88 34 1 0 0 0 
    0F 04 00 01 19 04 
    BT rx_data(6): f 4 0 1 19 4 
        Command 419 Status 0
    07 FF 00 1E E3 A9 5D 88 34 42 6C 75 65 74 6F 6F 
    BT rx_data(16): 7 ff 0 1e e3 a9 5d 88 34 42 6c 75 65 74 6f 6f 
    74 68 20 4D 6F 75 73 65 20 4D 35 35 37 00 00 00 
    BT rx_data(16): 74 68 20 4d 6f 75 73 65 20 4d 35 35 37 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 
    BT rx_data(1): 0 
        Event: handle_hci_remote_name_complete(0)
        Remote Name: Bluetooth Mouse M557
    HCI_OP_ACCEPT_CONN_REQ called (09 04 07 1e e3 a9 5d 88 34 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 9 4 7 1e e3 a9 5d 88 34 0 
    0F 04 00 01 09 04 
    BT rx_data(6): f 4 0 1 9 4 
        Command 409 Status 0
    12 08 00 1E E3 A9 5D 88 34 00 
    BT rx_data(10): 12 8 0 1e e3 a9 5d 88 34 0 
    03 0B 00 0C 00 1E E3 A9 5D 88 34 01 00 
    BT rx_data(13): 3 b 0 c 0 1e e3 a9 5d 88 34 1 0 
        Connection Complete - ST:0 LH:c
    HCI_AUTH_REQUESTED called (11 04 02 0c 00 )
        control callback (bluetooth) 6E
        Control callback (bluetooth): 110 : 11 4 2 c 0 
    0F 04 00 01 11 04 
    BT rx_data(6): f 4 0 1 11 4 
        Command 411 Status 0
    17 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 17 6 1e e3 a9 5d 88 34 
        Event: Link Key Request 1e:e3:a9:5d:88:34
    HCI_LINK_KEY_NEG_REPLY called (0c 04 06 1e e3 a9 5d 88 34 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : c 4 6 1e e3 a9 5d 88 34 
    0E 0A 01 0C 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 c 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    16 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 16 6 1e e3 a9 5d 88 34 
        Event: Pin Code Request 1e:e3:a9:5d:88:34
    HCI_PIN_CODE_REPLY called (0d 04 17 1e e3 a9 5d 88 34 04 30 30 30 30 00 00 00 00 00 00 00 00 00 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : d 4 17 1e e3 a9 5d 88 34 4 30 30 30 30 0 0 0 0 0 0 0 0 0 0 0 0 
    0E 0A 01 0D 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 d 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    06 03 13 0C 00 
    BT rx_data(5): 6 3 13 c 0 
        Event: HCI Authentication complete(19): handle: c
    `ConnectionRequest called(0c 20 0c 00 08 00 01 00 02 00 04 00 11 00 70 00 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : c 20 c 0 8 0 1 0 2 0 4 0 11 0 70 0 
    05 04 00 0C 00 13 
    BT rx_data(6): 5 4 0 c 0 13 
        Event: HCI Disconnect complete(0): handle: c, reason:13
    13 05 01 0C 00 01 00 
    BT rx_data(7): 13 5 1 c 0 1 0 
    04 0A 1E E3 A9 5D 88 34 80 05 00 01 
    BT rx_data(12): 4 a 1e e3 a9 5d 88 34 80 5 0 1 
        Event: Incoming Connect -  1e:e3:a9:5d:88:34 CL:580 LT:1
          Peripheral device
            Mouse
    BluetoothController::find_driver  driver 1fff48f8
    HCI_OP_REMOTE_NAME_REQ called (19 04 0a 1e e3 a9 5d 88 34 01 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 19 4 a 1e e3 a9 5d 88 34 1 0 0 0 
    0F 04 00 01 19 04 
    BT rx_data(6): f 4 0 1 19 4 
        Command 419 Status 0
    07 FF 00 1E E3 A9 5D 88 34 42 6C 75 65 74 6F 6F 
    BT rx_data(16): 7 ff 0 1e e3 a9 5d 88 34 42 6c 75 65 74 6f 6f 
    74 68 20 4D 6F 75 73 65 20 4D 35 35 37 00 00 00 
    BT rx_data(16): 74 68 20 4d 6f 75 73 65 20 4d 35 35 37 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 
    BT rx_data(1): 0 
        Event: handle_hci_remote_name_complete(0)
        Remote Name: Bluetooth Mouse M557
    HCI_OP_ACCEPT_CONN_REQ called (09 04 07 1e e3 a9 5d 88 34 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 9 4 7 1e e3 a9 5d 88 34 0 
    0F 04 00 01 09 04 
    BT rx_data(6): f 4 0 1 9 4 
        Command 409 Status 0
    12 08 00 1E E3 A9 5D 88 34 00 
    BT rx_data(10): 12 8 0 1e e3 a9 5d 88 34 0 
    03 0B 00 0B 00 1E E3 A9 5D 88 34 01 00 
    BT rx_data(13): 3 b 0 b 0 1e e3 a9 5d 88 34 1 0 
        Connection Complete - ST:0 LH:b
    HCI_AUTH_REQUESTED called (11 04 02 0b 00 )
        control callback (bluetooth) 6E
        Control callback (bluetooth): 110 : 11 4 2 b 0 
    0F 04 00 01 11 04 
    BT rx_data(6): f 4 0 1 11 4 
        Command 411 Status 0
    17 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 17 6 1e e3 a9 5d 88 34 
        Event: Link Key Request 1e:e3:a9:5d:88:34
    HCI_LINK_KEY_NEG_REPLY called (0c 04 06 1e e3 a9 5d 88 34 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : c 4 6 1e e3 a9 5d 88 34 
    0E 0A 01 0C 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 c 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    16 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 16 6 1e e3 a9 5d 88 34 
        Event: Pin Code Request 1e:e3:a9:5d:88:34
    HCI_PIN_CODE_REPLY called (0d 04 17 1e e3 a9 5d 88 34 04 30 30 30 30 00 00 00 00 00 00 00 00 00 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : d 4 17 1e e3 a9 5d 88 34 4 30 30 30 30 0 0 0 0 0 0 0 0 0 0 0 0 
    0E 0A 01 0D 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 d 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    06 03 13 0B 00 
    BT rx_data(5): 6 3 13 b 0 
        Event: HCI Authentication complete(19): handle: b
    `ConnectionRequest called(0b 20 0c 00 08 00 01 00 02 00 04 00 11 00 70 00 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 c 0 8 0 1 0 2 0 4 0 11 0 70 0 
    05 04 00 0B 00 13 
    BT rx_data(6): 5 4 0 b 0 13 
        Event: HCI Disconnect complete(0): handle: b, reason:13
    13 05 01 0B 00 01 00 
    BT rx_data(7): 13 5 1 b 0 1 0 
    04 0A 1E E3 A9 5D 88 34 80 05 00 01 
    BT rx_data(12): 4 a 1e e3 a9 5d 88 34 80 5 0 1 
        Event: Incoming Connect -  1e:e3:a9:5d:88:34 CL:580 LT:1
          Peripheral device
            Mouse
    BluetoothController::find_driver  driver 1fff48f8
    HCI_OP_REMOTE_NAME_REQ called (19 04 0a 1e e3 a9 5d 88 34 01 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 19 4 a 1e e3 a9 5d 88 34 1 0 0 0 
    0F 04 00 01 19 04 
    BT rx_data(6): f 4 0 1 19 4 
        Command 419 Status 0
    07 FF 00 1E E3 A9 5D 88 34 42 6C 75 65 74 6F 6F 
    BT rx_data(16): 7 ff 0 1e e3 a9 5d 88 34 42 6c 75 65 74 6f 6f 
    74 68 20 4D 6F 75 73 65 20 4D 35 35 37 00 00 00 
    BT rx_data(16): 74 68 20 4d 6f 75 73 65 20 4d 35 35 37 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 
    BT rx_data(1): 0 
        Event: handle_hci_remote_name_complete(0)
        Remote Name: Bluetooth Mouse M557
    HCI_OP_ACCEPT_CONN_REQ called (09 04 07 1e e3 a9 5d 88 34 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 9 4 7 1e e3 a9 5d 88 34 0 
    0F 04 00 01 09 04 
    BT rx_data(6): f 4 0 1 9 4 
        Command 409 Status 0
    12 08 00 1E E3 A9 5D 88 34 00 
    BT rx_data(10): 12 8 0 1e e3 a9 5d 88 34 0 
    03 0B 00 0C 00 1E E3 A9 5D 88 34 01 00 
    BT rx_data(13): 3 b 0 c 0 1e e3 a9 5d 88 34 1 0 
        Connection Complete - ST:0 LH:c
    HCI_AUTH_REQUESTED called (11 04 02 0c 00 )
        control callback (bluetooth) 6E
        Control callback (bluetooth): 110 : 11 4 2 c 0 
    0F 04 00 01 11 04 
    BT rx_data(6): f 4 0 1 11 4 
        Command 411 Status 0
    17 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 17 6 1e e3 a9 5d 88 34 
        Event: Link Key Request 1e:e3:a9:5d:88:34
    HCI_LINK_KEY_NEG_REPLY called (0c 04 06 1e e3 a9 5d 88 34 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : c 4 6 1e e3 a9 5d 88 34 
    0E 0A 01 0C 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 c 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    16 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 16 6 1e e3 a9 5d 88 34 
        Event: Pin Code Request 1e:e3:a9:5d:88:34
    HCI_PIN_CODE_REPLY called (0d 04 17 1e e3 a9 5d 88 34 04 30 30 30 30 00 00 00 00 00 00 00 00 00 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : d 4 17 1e e3 a9 5d 88 34 4 30 30 30 30 0 0 0 0 0 0 0 0 0 0 0 0 
    0E 0A 01 0D 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 d 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    06 03 13 0C 00 
    BT rx_data(5): 6 3 13 c 0 
        Event: HCI Authentication complete(19): handle: c
    `ConnectionRequest called(0c 20 0c 00 08 00 01 00 02 00 04 00 11 00 70 00 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : c 20 c 0 8 0 1 0 2 0 4 0 11 0 70 0 
    05 04 00 0C 00 13 
    BT rx_data(6): 5 4 0 c 0 13 
        Event: HCI Disconnect complete(0): handle: c, reason:13
    13 05 01 0C 00 01 00 
    BT rx_data(7): 13 5 1 c 0 1 0
    Mike - some of your notes suggest that added debug code makes things work - and with no_debug some things don't work? Am I reading that right?
    Mike - if you email Robin you can get Sr+ on your login. We could make a 'static' hardware post and add&update the tested good/bad items.

    Question: Should I expect my PS4 Bt Joystick to be recognized and almost act like a PS4 joystick?

  20. #120
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Tim
    Sorted that out its pretty much a non-issue if you stick with just using USBHDBGSerial for debugging. As for your PS4 BT Joystick - it should except for the things I am trying to figure out - expanded report to accel/gyro/pad, rumble, and LEDS. Think if I sort one out they will all get sorted.

    Ok. I give up, I will email Robin to get SR+ added.

    Kurt:

    In my post #118 I said I was going to try and trace through the differences. The only thing that could possibly be different at this point is how the data is actually transferred to the PS4. While we use que_data_transfer etc. The uhs2.0 code is a little different I think? After tracing through all the calls I get to the file Usb.cpp and the function USB::OutTransfer I think this may be the base issue.

    Going to poke around some more in some other implementations. That outTransfer bothers me for some reason

  21. #121
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    Okay FULL_DEBUG running :: T:\arduino-1.8.8T4_146\hardware\teensy\avr\libraries\USBHost_ t36\examples\JoystickBT\JoystickBT.ino
    with >> BluetoothController bluet(myusb, true, "0000"); // Version does pairing to device

    Power up JOYSTICK PS/3 - nothing - it has blinking lights …

    Power up Mouse [same joystickBT sketch] - blinking BT light and it connects and all buttons active and movement reported.
    >> Works with with either 0xff 'Plugable' Dongle or the KurtE "CSR 4.0"
    Here is plugging the 'Plugable' and then mouse M557 to connect state::
    Code:
    port change: 10001803
        connect
      begin reset
    port change: 10001005
      port enabled
      end recovery
    new_Device: 12 Mbit/sec
    new_Pipe
    enumeration:
    enumeration:
    enumeration:
    Device Descriptor:
      12 01 00 02 FF 01 01 40 5C 0A E8 21 12 01 01 02 03 01 
        VendorID = 0A5C, ProductID = 21E8, Version = 0112
        Class/Subclass/Protocol = 255 / 1 / 1
        Number of Configurations = 1
    enumeration:
    enumeration:
    Manufacturer: Broadcom Corp
    enumeration:
    Product: BCM20702A0
    enumeration:
    Serial Number: 5CF37060D3E1
    enumeration:
    Config data length = 218
    enumeration:
    Configuration Descriptor:
      09 02 DA 00 04 01 00 E0 00 
        NumInterfaces = 4
        ConfigurationValue = 1
      09 04 00 00 03 FF 01 01 00 
        Interface = 0
        Number of endpoints = 3
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 81 03 10 00 01 
        Endpoint = 1 IN
        Type = Interrupt
        Max Size = 16
        Polling Interval = 1
      07 05 82 02 40 00 01 
        Endpoint = 2 IN
        Type = Bulk
        Max Size = 64
        Polling Interval = 1
      07 05 02 02 40 00 01 
        Endpoint = 2 OUT
        Type = Bulk
        Max Size = 64
        Polling Interval = 1
      09 04 01 00 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 00 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 0
        Polling Interval = 1
      07 05 03 01 00 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 0
        Polling Interval = 1
      09 04 01 01 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 09 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 9
        Polling Interval = 1
      07 05 03 01 09 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 9
        Polling Interval = 1
      09 04 01 02 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 11 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 17
        Polling Interval = 1
      07 05 03 01 11 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 17
        Polling Interval = 1
      09 04 01 03 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 19 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 25
        Polling Interval = 1
      07 05 03 01 19 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 25
        Polling Interval = 1
      09 04 01 04 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 21 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 33
        Polling Interval = 1
      07 05 03 01 21 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 33
        Polling Interval = 1
      09 04 01 05 02 FF 01 01 00 
        Interface = 1
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 1 / 1
      07 05 83 01 31 00 01 
        Endpoint = 3 IN
        Type = Isochronous
        Max Size = 49
        Polling Interval = 1
      07 05 03 01 31 00 01 
        Endpoint = 3 OUT
        Type = Isochronous
        Max Size = 49
        Polling Interval = 1
      09 04 02 00 02 FF FF FF 00 
        Interface = 2
        Number of endpoints = 2
        Class/Subclass/Protocol = 255 / 255 / 255
      07 05 84 02 20 00 01 
        Endpoint = 4 IN
        Type = Bulk
        Max Size = 32
        Polling Interval = 1
      07 05 04 02 20 00 01 
        Endpoint = 4 OUT
        Type = Bulk
        Max Size = 32
        Polling Interval = 1
      09 04 03 00 00 FE 01 01 00 
        Interface = 3
        Number of endpoints = 0
        Class/Subclass/Protocol = 254 / 1 / 1
      09 21 05 88 13 40 00 10 01 
        HID, 64 report descriptors
    enumeration:
    BluetoothController claim this=1FFF40C0
    BluetoothController claim this=1fff40c0 vid:pid=a5c:21e8
        9 4 0 0 3 ff 1 1 0 7 5 81 3 10 0 1 7 5 82 2 40 0 1 7 5 2 2 40 0 1 9 4 1 0 2 ff 1 1 0 7 5 83 1 0 0 1 7 5 3 1 0 0 1 9 4 1 1 2 ff 1 1 0 7 5 
        83 1 9 0 1 7 5 3 1 9 0 1 9 4 1 2 2 ff 1 1 0 7 5 83 1 11 0 1 7 5 3 1 11 0 1 9 4 1 3 2 ff 1 1 0 7 5 83 1 19 0 1 7 5 3 1 19 0 1 9 4 1 4 2 ff 
        1 1 0 7 5 83 1 21 0 1 7 5 3 1 21 0 1 9 4 1 5 2 ff 1 1 0 7 5 83 1 31 0 1 7 5 3 1 31 0 1 9 4 2 0 2 ff ff ff 0 7 5 84 2 20 0 1 7 5 4 2 20 0 1 9 
        4 3 0 0 fe 1 1 0 9 21 5 88 13 40 0 10 1 
          rxep=1(16) txep=2(64) rx2ep=2(64)
    BluetoothController, rxep=1(16), txep=2(64)
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 3, at offset = 0, shift= 0
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 6, at offset = 0, shift= 1
    new_Pipe
    HCI_RESET called (03 0c 00 )
        control callback (bluetooth) 1
        Control callback (bluetooth): 1 : 3 c 0 
    0E 04 01 03 0C 00 
    BT rx_data(6): e 4 1 3 c 0 
        Command Completed! 
    HCI_WRITE_CLASS_OF_DEV called (24 0c 03 04 08 00 )
        control callback (bluetooth) 3
        Control callback (bluetooth): 3 : 24 c 3 4 8 0 
    0E 04 01 24 0C 00 
    BT rx_data(6): e 4 1 24 c 0 
        Command Completed! 
    HCI_Read_BD_ADDR called (09 10 00 )
        control callback (bluetooth) 4
        Control callback (bluetooth): 4 : 9 10 0 
    0E 0A 01 09 10 00 E1 D3 60 70 F3 5C 
    BT rx_data(12): e a 1 9 10 0 e1 d3 60 70 f3 5c 
        Command Completed! 
       BD Addr:e1:d3:60:70:f3:5c
    HCI_Read_Local_Version_Information called (01 10 00 )
        control callback (bluetooth) 4
        Control callback (bluetooth): 4 : 1 10 0 
    0E 0C 01 01 10 00 06 00 10 06 0F 00 0E 22 
    BT rx_data(14): e c 1 1 10 0 6 0 10 6 f 0 e 22 
        Command Completed! 
        Local Version: 6
    HCI_INQUIRY called (01 04 05 33 8b 9e 30 0a )
        control callback (bluetooth) 6
        Control callback (bluetooth): 6 : 1 4 5 33 8b 9e 30 a 
    0F 04 00 01 01 04 
    BT rx_data(6): f 4 0 1 1 4 
        Command 401 Status 0
    02 0F 01 1E E3 A9 5D 88 34 01 00 00 80 25 00 F0 
    BT rx_data(16): 2 f 1 1e e3 a9 5d 88 34 1 0 0 80 25 0 f0 
    6C 
    BT rx_data(1): 6c 
        Inquiry Result - Count: 1
          BD:1e:e3:a9:5d:88:34, PS:1, class: 2580
          Peripheral device
            Mouse
    BluetoothController::find_driver  driver 1fff48f8
    HCI_INQUIRY_CANCEL called (02 04 00 )
        control callback (bluetooth) 64
        Control callback (bluetooth): 100 : 2 4 0 
    0E 04 01 02 04 00 
    BT rx_data(6): e 4 1 2 4 0 
        Command Completed! 
    HCI_CREATE_CONNECTION called (05 04 0d 1e e3 a9 5d 88 34 18 cc 01 00 00 00 00 )
        control callback (bluetooth) 65
        Control callback (bluetooth): 101 : 5 4 d 1e e3 a9 5d 88 34 18 cc 1 0 0 0 0 
    0F 04 00 01 05 04 
    BT rx_data(6): f 4 0 1 5 4 
        Command 405 Status 0
    03 0B 00 0B 00 1E E3 A9 5D 88 34 01 00 
    BT rx_data(13): 3 b 0 b 0 1e e3 a9 5d 88 34 1 0 
        Connection Complete - ST:0 LH:b
    HCI_AUTH_REQUESTED called (11 04 02 0b 00 )
        control callback (bluetooth) 6E
        Control callback (bluetooth): 110 : 11 4 2 b 0 
    0F 04 00 01 11 04 
    BT rx_data(6): f 4 0 1 11 4 
        Command 411 Status 0
    17 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 17 6 1e e3 a9 5d 88 34 
        Event: Link Key Request 1e:e3:a9:5d:88:34
    HCI_LINK_KEY_NEG_REPLY called (0c 04 06 1e e3 a9 5d 88 34 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : c 4 6 1e e3 a9 5d 88 34 
    0E 0A 01 0C 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 c 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    16 06 1E E3 A9 5D 88 34 
    BT rx_data(8): 16 6 1e e3 a9 5d 88 34 
        Event: Pin Code Request 1e:e3:a9:5d:88:34
    HCI_PIN_CODE_REPLY called (0d 04 17 1e e3 a9 5d 88 34 04 30 30 30 30 00 00 00 00 00 00 00 00 00 00 00 00 )
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : d 4 17 1e e3 a9 5d 88 34 4 30 30 30 30 0 0 0 0 0 0 0 0 0 0 0 0 
    0E 0A 01 0D 04 00 1E E3 A9 5D 88 34 
    BT rx_data(12): e a 1 d 4 0 1e e3 a9 5d 88 34 
        Command Completed! 
    18 17 1E E3 A9 5D 88 34 57 D9 8A 2E 64 24 48 49 
    BT rx_data(16): 18 17 1e e3 a9 5d 88 34 57 d9 8a 2e 64 24 48 49 
    37 A3 57 58 16 1D 29 E4 00 
    BT rx_data(9): 37 a3 57 58 16 1d 29 e4 0 
        Event: Link Key Notificaton 1e:e3:a9:5d:88:34 Type:0
        key:57 d9 8a 2e 64 24 48 49 37 a3 57 58 16 1d 29 e4 
    06 03 00 0B 00 
    BT rx_data(5): 6 3 0 b 0 
        Event: HCI Authentication complete(0): handle: b
    `ConnectionRequest called(0b 20 0c 00 08 00 01 00 02 00 04 00 11 00 70 00 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 c 0 8 0 1 0 2 0 4 0 11 0 70 0 
    
    =====================
    BT rx2_data(20): b 20 10 0 c 0 1 0 3 0 8 0 41 0 70 0 0 0 0 0 
        L2CAP Connection Response: ID: 0, Dest:41, Source:70, Result:0, Status: 0
          Control Response
    L2CAP_ConfigRequest called(0b 20 10 00 0c 00 01 00 04 00 08 00 41 00 00 00 01 02 ff ff )
    
    =====================
    BT rx2_data(20): b 20 10 0 c 0 1 0 4 2 8 0 70 0 0 0 1 2 30 0 
        L2CAP config Request: ID: 2, Dest:70, Flags:0,  Options: 1 2 30 0
          Control Configuration request
    L2CAP_ConfigResponse called(0b 20 12 00 0e 00 01 00 05 02 0a 00 41 00 00 00 00 00 01 02 a0 02 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 12 0 e 0 1 0 5 2 a 0 41 0 0 0 0 0 1 2 
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 12 0 e 0 1 0 5 2 a 0 41 0 0 0 0 0 1 2 a0 2 
    
    =====================
    BT rx2_data(22): b 20 12 0 e 0 1 0 5 0 a 0 70 0 0 0 0 0 1 2 30 0 
        L2CAP config Response: ID: 0, Source:70, Flags:0, Result:0, Config: 201
    Set HID Protocol 0 (0b 20 05 00 01 00 41 00 70 )
    13 05 01 0B 00 02 00 
    BT rx_data(7): 13 5 1 b 0 2 0 
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 200 : b 20 5 0 1 0 41 0 70 
    `ConnectionRequest called(0b 20 0c 00 08 00 01 00 02 01 04 00 13 00 71 00 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 c 0 8 0 1 0 2 1 4 0 13 0 71 0 
    
    =====================
    BT rx2_data(9): b 20 5 0 1 0 70 0 0 
    13 05 01 0B 00 02 00 
    BT rx_data(7): 13 5 1 b 0 2 0 
    
    =====================
    BT rx2_data(20): b 20 10 0 c 0 1 0 3 1 8 0 42 0 71 0 0 0 0 0 
        L2CAP Connection Response: ID: 1, Dest:42, Source:71, Result:0, Status: 0
          Interrupt Response
    L2CAP_ConfigRequest called(0b 20 10 00 0c 00 01 00 04 01 08 00 42 00 00 00 01 02 ff ff )
    
    =====================
    BT rx2_data(20): b 20 10 0 c 0 1 0 4 3 8 0 71 0 0 0 1 2 30 0 
        L2CAP config Request: ID: 3, Dest:71, Flags:0,  Options: 1 2 30 0
          Interrupt Configuration request
    L2CAP_ConfigResponse called(0b 20 12 00 0e 00 01 00 05 03 0a 00 42 00 00 00 00 00 01 02 a0 02 )
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 12 0 e 0 1 0 5 3 a 0 42 0 0 0 0 0 1 2 
        tx_data(bluetooth) 82
    tx_data callback (bluetooth): 0 : b 20 12 0 e 0 1 0 5 3 a 0 42 0 0 0 0 0 1 2 a0 2 
    
    =====================
    BT rx2_data(22): b 20 12 0 e 0 1 0 5 1 a 0 71 0 0 0 0 0 1 2 30 0 
        L2CAP config Response: ID: 1, Source:71, Flags:0, Result:0, Config: 201
    HCI_WRITE_SCAN_ENABLE called(1a 0c 01 02 )
    13 05 01 0B 00 02 00 
    BT rx_data(7): 13 5 1 b 0 2 0 
        control callback (bluetooth) 82
        Control callback (bluetooth): 130 : 1a c 1 2 
    0E 04 01 1A 0C 00 
    BT rx_data(6): e 4 1 1a c 0 
        Command Completed! 
    Write_Scan_enable Completed
    
    =====================
    BT rx2_data(29): b 20 19 0 15 0 71 0 a1 11 ff 9 0 5a 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    HID HDR Data: len: 21, Type: 17
        Unknown report
    13 05 01 0B 00 01 00 
    BT rx_data(7): 13 5 1 b 0 1 0 
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 1 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 2 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 ff 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 ff 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 1 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 1 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 fe 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 fe 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 3 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 3 fe 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 4 fe 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 3 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 2 fe 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 1 0 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    
    =====================
    BT rx2_data(14): b 20 a 0 6 0 71 0 a1 2 0 0 ff 0 
    HID HDR Data: len: 6, Type: 2
        Mouse report type
    Then I turned off mouse and unplugged Bt dongle:
    Code:
    05 04 00 0B 00 13 
    BT rx_data(6): 5 4 0 b 0 13 
        Event: HCI Disconnect complete(0): handle: b, reason:13
    port change: 1C00100A
        disconnect
    disconnect_Device:
    USBDriver (available_drivers) list: 1FFF2020 -> 1FFF23E0 -> 1FFF27C0 -> 1FFF2CC0 -> 1FFF31C0 -> 1FFF36C0 -> 1FFF3BC0 -> 1FFF48E0
    USBDriver (dev->drivers) list: 1FFF40C0
    disconnect driver 1FFF40C0
    Bluetooth DisconnectUSBDriver (available_drivers) list: 1FFF40C0 -> 1FFF2020 -> 1FFF23E0 -> 1FFF27C0 -> 1FFF2CC0 -> 1FFF31C0 -> 1FFF36C0 -> 1FFF3BC0 -> 1FFF48E0
    delete_Pipe 1FFF4200
      Free transfers
        * 536823712 * remove * free
      Free transfers attached to QH
        * 536823936
    * Delete Pipe completed
    delete_Pipe 1FFF41A0
      Free transfers
      Free transfers attached to QH
        * 536827008
    * Delete Pipe completed
    delete_Pipe 1FFF4140
      remove QH from async schedule
      Free transfers
        * 536823872 * remove * free
      Free transfers attached to QH
        * 536827200
    * Delete Pipe completed
    delete_Pipe 1FFF5400
      shut down async schedule
      Free transfers
      Free transfers attached to QH
        * 536827136
    * Delete Pipe completed
    removed Device_t from devlist
      disable

  22. #122
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    JOYSTICK UPDATE - JAMSWALL PS3 Controller Wireless,Bluetooth Dualshock3 Gamepad plugged direct into USB!!!

    I don't know if this will help Bt detection?

    From USB Serial:
    Code:
    *** Device HID1 54c:268 - connected ***
      manufacturer: SHANWAN
      product: PS3 GamePad
    *** HID Device Joystick1 54c:268 - connected ***
      manufacturer: SHANWAN
      product: PS3 GamePad
    *** HID Device Joystick1 - disconnected ***
    *** Device HID1 - disconnected ***
    Full Debug on plug and quick UNPLUG {otherwise endless streaming messages}
    Code:
    port change: 10001803
        connect
      begin reset
    port change: 10001005
      port enabled
      end recovery
    new_Device: 12 Mbit/sec
    new_Pipe
    enumeration:
    enumeration:
    enumeration:
    Device Descriptor:
      12 01 10 01 00 00 00 40 4C 05 68 02 00 01 01 02 00 01 
        VendorID = 054C, ProductID = 0268, Version = 0100
        Class/Subclass/Protocol = 0 / 0 / 0
        Number of Configurations = 1
    enumeration:
    enumeration:
    Manufacturer: SHANWAN
    enumeration:
    Product: PS3 GamePad
    enumeration:
    Config data length = 41
    enumeration:
    Configuration Descriptor:
      09 02 29 00 01 01 00 80 FA 
        NumInterfaces = 1
        ConfigurationValue = 1
      09 04 00 00 02 03 00 00 00 
        Interface = 0
        Number of endpoints = 2
        Class/Subclass/Protocol = 3(HID) / 0 / 0
      09 21 10 01 00 01 22 94 00 
        HID, 1 report descriptor
      07 05 02 03 40 00 01 
        Endpoint = 2 OUT
        Type = Interrupt
        Max Size = 64
        Polling Interval = 1
      07 05 81 03 40 00 01 
        Endpoint = 1 IN
        Type = Interrupt
        Max Size = 64
        Polling Interval = 1
    enumeration:
    HIDParser claim this=1FFF27C0
    BluetoothController claim this=1FFF40C0
    USBHub memory usage = 960
    USBHub claim_device this=1FFF2020
    USBHub memory usage = 960
    USBHub claim_device this=1FFF23E0
    HIDParser claim this=1FFF2CC0
    HIDParser claim this=1FFF31C0
    HIDParser claim this=1FFF36C0
    HIDParser claim this=1FFF3BC0
    JoystickController claim this=1FFF48E0
    Descriptor 4 = INTERFACE
    HIDParser claim this=1FFF27C0
     bInterfaceClass =    3
     bInterfaceSubClass = 0
     bInterfaceProtocol = 0
    HID Parser Claim: 09 04 00 00 02 03 00 00 00 09 21 10 01 00 01 22 94 00 07 05 02 03 40 00 01 07 05 81 03 40 00 01 
    report descriptor size = 148
    Two endpoint HID:
      endpoint = 2
       size = 64
       interval = 1
      endpoint = 81
       size = 64
       interval = 1
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 5, at offset = 0, shift= 0
    new_Pipe
    allocate_interrupt_pipe_bandwidth
     best_bandwidth = 7, at offset = 0, shift= 1
    Descriptor 33 = HID
    Descriptor 5 = ENDPOINT
    Descriptor 5 = ENDPOINT
    control callback (hid)
    05 01 09 04 A1 01 A1 02 85 01 75 08 95 01 15 00 26 FF 00 81 03 75 01 95 13 15 00 25 01 35 00 45 01 05 09 19 01 29 13 81 02 75 01 95 0D 06 00 FF 81 03 15 00 26 FF 00 05 01 09 01 A1 00 75 08 95 04 35 00 46 FF 00 09 30 09 31 09 32 09 35 81 02 C0 05 01 75 08 95 27 09 01 81 02 75 08 95 30 09 01 91 02 75 08 95 30 09 01 B1 02 C0 A1 02 85 02 75 08 95 30 09 01 B1 02 C0 A1 02 85 EE 75 08 95 30 09 01 B1 02 C0 A1 02 85 EF 75 08 95 30 09 01 B1 02 C0 C0 
      mesg = 22000681
      got report descriptor
    Found top level collection 10004
    find_driver
      driver 1FFF48EC
    Match PID/VID: 3
    Claim Additional axis: 1 100 39
    send special PS3 feature command
    control callback (hid)
    42 0C 00 00 
      mesg = 3F40921
    port change: 1C00100A
        disconnect
    disconnect_Device:
    USBDriver (available_drivers) list: 1FFF40C0 -> 1FFF2020 -> 1FFF23E0 -> 1FFF2CC0 -> 1FFF31C0 -> 1FFF36C0 -> 1FFF3BC0 -> 1FFF48E0
    USBDriver (dev->drivers) list: 1FFF27C0
    disconnect driver 1FFF27C0
    USBDriver (available_drivers) list: 1FFF27C0 -> 1FFF40C0 -> 1FFF2020 -> 1FFF23E0 -> 1FFF2CC0 -> 1FFF31C0 -> 1FFF36C0 -> 1FFF3BC0 -> 1FFF48E0
    delete_Pipe 1FFF41A0
      Free transfers
        * 536823776 * remove * free
      Free transfers attached to QH
        * 536827136
    * Delete Pipe completed
    delete_Pipe 1FFF4200
      Free transfers
      Free transfers attached to QH
        * 536823712
    * Delete Pipe completed
    delete_Pipe 1FFF5400
      shut down async schedule
      Free transfers
      Free transfers attached to QH
        * 536822688
    * Delete Pipe completed
    removed Device_t from devlist
      disable

  23. #123
    Senior Member+
    Join Date
    Jul 2014
    Location
    New York
    Posts
    3,335
    Check this out regarding PS3 Bluetooth: https://forum.pjrc.com/threads/49358...l=1#post198174. Doesn't work yet.

    Wired my PS3 works fine.
    Code:
    USB Host Testing
    960
    *** Device HID1 54c:268 - connected ***
      manufacturer: SZMY-POWER CO.,LTD.
      product: PLAYSTATION(R)3 Controller
    *** HID Device Joystick1 54c:268 - connected ***
      manufacturer: SZMY-POWER CO.,LTD.
      product: PLAYSTATION(R)3 Controller
    *** First Joystick message 54c:268 ***
      manufacturer: SZMY-POWER CO.,LTD.
      product: PLAYSTATION(R)3 Controller
    LX: 128, LY: 128, RX: 0, RY: 0 
    L-Trig: 0, R-Trig: 0, Trig-Button: 0 
    Buttons: 128, PS: 0
    
    LX: 128, LY: 128, RX: 0, RY: 0 
    L-Trig: 0, R-Trig: 0, Trig-Button: 0 
    Buttons: 128, PS: 0

  24. #124
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    Quote Originally Posted by mjs513 View Post
    Check this out regarding PS3 Bluetooth: https://forum.pjrc.com/threads/49358...l=1#post198174. Doesn't work yet.

    Wired my PS3 works fine.
    Thanks for the recall in context Mike.

    Odd that the plugged usage is unusable - just streaeaeaeams messages! I suppose it is not recognized? But yes, notes on Amazon suggest plugging for first use. I put a HUB on T_3.6 and it would take some GLUE to associate the two it seems

    I then put on M557 mouse and it connected.

    Then Powered the Rii Keyboard and it came up after T_3.6 restart to clear Bt associate?
    -> hit '0000' Enter and it associated
    -> it has a TOUCH pad area and it sent messages, like the Mouse buttons it has they show as 'Unknown report' versus others as 'Keyboard'

    I started to Add debug_tt - tripped up by slow :: Serial1.begin(115200); that came after my SERIAL_tt.begin( 1843200 );

  25. #125
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    8,555
    With the JoystickBt sketch running and BT dongle on I picked up my Logitech K480 'three device' keyboard { has a rotary switch to associate with three devices }

    { I got one - would not connect to phone one phone but did to another - called Logitech - they said keep it and sent a replacement. Though he had me enter a code on reset and then it did connect }

    Switched it to an open slot and typed '0000' & Enter : it registered as connected and with full DEBUG on displayed tons of spew.

    Switched it away and back and it didn't reconnect? Or any attempt seemed to dump 'Disconnect' as the end message?

    Changed sketch bluet(myusb) from the pairing setup and on upload it seems similar - it picks up activity but ends like this - I think this is a full cycle from one disconnect through attempt and then disconnect:
    Code:
    BT rx_data(6): 5 4 0 c 0 13 
        Event: HCI Disconnect complete(0): handle: c, reason:13
    04 0A 14 E3 78 5D 88 34 40 05 00 01 
    BT rx_data(12): 4 a 14 e3 78 5d 88 34 40 5 0 1 
        Event: Incoming Connect -  14:e3:78:5d:88:34 CL:540 LT:1
          Peripheral device
            Keyboard
    BluetoothController::find_driver  driver 1fff48f8
    HCI_OP_REMOTE_NAME_REQ called (19 04 0a 14 e3 78 5d 88 34 01 00 00 00 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : 19 4 a 14 e3 78 5d 88 34 1 0 0 0 
    0F 04 00 01 19 04 
    BT rx_data(6): f 4 0 1 19 4 
        Command 419 Status 0
    07 FF 00 14 E3 78 5D 88 34 4B 65 79 62 6F 61 72 
    BT rx_data(16): 7 ff 0 14 e3 78 5d 88 34 4b 65 79 62 6f 61 72 
    64 20 4B 34 38 30 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 64 20 4b 34 38 30 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    BT rx_data(16): 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    00 
    BT rx_data(1): 0 
        Event: handle_hci_remote_name_complete(0)
        Remote Name: Keyboard K480
    HCI_OP_ACCEPT_CONN_REQ called (09 04 07 14 e3 78 5d 88 34 00 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : 9 4 7 14 e3 78 5d 88 34 0 
    0F 04 00 01 09 04 
    BT rx_data(6): f 4 0 1 9 4 
        Command 409 Status 0
    12 08 00 14 E3 78 5D 88 34 00 
    BT rx_data(10): 12 8 0 14 e3 78 5d 88 34 0 
    03 0B 00 0B 00 14 E3 78 5D 88 34 01 00 
    BT rx_data(13): 3 b 0 b 0 14 e3 78 5d 88 34 1 0 
        Connection Complete - ST:0 LH:b
    17 06 14 E3 78 5D 88 34 
    BT rx_data(8): 17 6 14 e3 78 5d 88 34 
        Event: Link Key Request 14:e3:78:5d:88:34
    HCI_LINK_KEY_NEG_REPLY called (0c 04 06 14 e3 78 5d 88 34 )
        control callback (bluetooth) 78
        Control callback (bluetooth): 120 : c 4 6 14 e3 78 5d 88 34 
    0E 0A 01 0C 04 00 14 E3 78 5D 88 34 
    BT rx_data(12): e a 1 c 4 0 14 e3 78 5d 88 34 
        Command Completed! 
    05 04 00 0B 00 13 
    BT rx_data(6): 5 4 0 b 0 13 
        Event: HCI Disconnect complete(0): handle: b, reason:13
    04 0A 14 E3 78 5D 88 34 40 05 00 01 
    BT rx_data(12): 4 a 14 e3 78 5d 88 34 40 5 0 1 
        Event: Incoming Connect -  14:e3:78:5d:88:34 CL:540 LT:1
          Peripheral device
            Keyboard
    BluetoothController::find_driver  driver 1fff48f8

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •