<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Maarif Khan Official</title>
    <description>The latest articles on DEV Community by Maarif Khan Official (@maarif_khanofficial_0f42).</description>
    <link>https://dev.to/maarif_khanofficial_0f42</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4032602%2Fe0fa0cb1-4584-42d7-9424-77db98ea6c3c.png</url>
      <title>DEV Community: Maarif Khan Official</title>
      <link>https://dev.to/maarif_khanofficial_0f42</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/maarif_khanofficial_0f42"/>
    <language>en</language>
    <item>
      <title>VMware + macOS Ventura + Barrot Bluetooth (0A12:0001 / 0x08E7) — Looking for developers familiar with Apple's Bluetooth stack</title>
      <dc:creator>Maarif Khan Official</dc:creator>
      <pubDate>Thu, 16 Jul 2026 18:01:18 +0000</pubDate>
      <link>https://dev.to/maarif_khanofficial_0f42/vmware-macos-ventura-barrot-bluetooth-0a120001-0x08e7-looking-for-developers-familiar-53kh</link>
      <guid>https://dev.to/maarif_khanofficial_0f42/vmware-macos-ventura-barrot-bluetooth-0a120001-0x08e7-looking-for-developers-familiar-53kh</guid>
      <description>&lt;p&gt;I've spent several days reverse engineering a Bluetooth compatibility issue between VMware Workstation and macOS Ventura.&lt;/p&gt;

&lt;p&gt;This is not a normal Bluetooth support question. I've already gone well beyond typical troubleshooting and I'm hoping someone familiar with macOS Bluetooth internals, IOKit, DriverKit, BlueTool, or OpenCore may recognize what's happening.&lt;/p&gt;

&lt;p&gt;Environment&lt;/p&gt;

&lt;p&gt;Host:&lt;/p&gt;

&lt;p&gt;Windows 11&lt;/p&gt;

&lt;p&gt;Virtualization:&lt;/p&gt;

&lt;p&gt;VMware Workstation&lt;br&gt;
USB controller fixed at USB 3.2&lt;br&gt;
USB passthrough enabled&lt;br&gt;
VMware shared Bluetooth disabled&lt;/p&gt;

&lt;p&gt;Guest:&lt;/p&gt;

&lt;p&gt;macOS Ventura&lt;/p&gt;

&lt;p&gt;Bluetooth USB Adapter:&lt;/p&gt;

&lt;p&gt;USB VID/PID:&lt;/p&gt;

&lt;p&gt;0A12:0001&lt;/p&gt;

&lt;p&gt;Initially appears to be:&lt;/p&gt;

&lt;p&gt;CSR8510 A10&lt;/p&gt;

&lt;p&gt;However, after issuing raw HCI commands, the controller identifies itself as:&lt;/p&gt;

&lt;p&gt;Bluetooth Manufacturer ID:&lt;br&gt;
0x08E7&lt;/p&gt;

&lt;p&gt;Barrot Technology Co., Ltd.&lt;/p&gt;

&lt;p&gt;The device also reports:&lt;/p&gt;

&lt;p&gt;USB revision:&lt;br&gt;
0x8891&lt;/p&gt;

&lt;p&gt;which matches Linux fake-CSR handling.&lt;/p&gt;

&lt;p&gt;What has already been tested&lt;/p&gt;

&lt;p&gt;This has already been verified:&lt;/p&gt;

&lt;p&gt;✔ USB passthrough works&lt;/p&gt;

&lt;p&gt;✔ VMware correctly passes the USB device into Ventura&lt;/p&gt;

&lt;p&gt;✔ macOS detects the USB device&lt;/p&gt;

&lt;p&gt;✔ Apple Bluetooth transport attempts to start&lt;/p&gt;

&lt;p&gt;✔ Raw HCI communication works&lt;/p&gt;

&lt;p&gt;Commands tested successfully:&lt;/p&gt;

&lt;p&gt;HCI Reset&lt;br&gt;
Read Local Version&lt;br&gt;
Read Supported Commands&lt;br&gt;
Read BD_ADDR&lt;/p&gt;

&lt;p&gt;The adapter returns a valid Bluetooth address.&lt;/p&gt;

&lt;p&gt;So the controller is definitely alive.&lt;/p&gt;

&lt;p&gt;The actual problem&lt;/p&gt;

&lt;p&gt;Despite the controller responding correctly,&lt;/p&gt;

&lt;p&gt;Ventura never adopts it as the active Bluetooth controller.&lt;/p&gt;

&lt;p&gt;Instead macOS reports something like&lt;/p&gt;

&lt;p&gt;BCM_4350C2&lt;/p&gt;

&lt;p&gt;Address:&lt;br&gt;
NULL&lt;/p&gt;

&lt;p&gt;No usable HCI controller becomes available.&lt;/p&gt;

&lt;p&gt;Bluetooth never becomes functional.&lt;/p&gt;

&lt;p&gt;OpenCore&lt;/p&gt;

&lt;p&gt;Already tested.&lt;/p&gt;

&lt;p&gt;BlueToolFixup was also investigated.&lt;/p&gt;

&lt;p&gt;OpenCore itself does not appear to solve the problem.&lt;/p&gt;

&lt;p&gt;From everything I've found, BlueToolFixup is not a Barrot compatibility layer.&lt;/p&gt;

&lt;p&gt;What makes this interesting&lt;/p&gt;

&lt;p&gt;The adapter is not actually CSR.&lt;/p&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;p&gt;Barrot Technology&lt;br&gt;
Manufacturer 0x08E7&lt;/p&gt;

&lt;p&gt;while simultaneously exposing&lt;/p&gt;

&lt;p&gt;VID 0A12&lt;br&gt;
PID 0001&lt;/p&gt;

&lt;p&gt;which mimics older CSR hardware.&lt;/p&gt;

&lt;p&gt;Linux already contains fake-CSR handling for devices around:&lt;/p&gt;

&lt;p&gt;bcdDevice 0x8891&lt;/p&gt;

&lt;p&gt;which strongly suggests this controller requires a special initialization sequence.&lt;/p&gt;

&lt;p&gt;Current hypothesis&lt;/p&gt;

&lt;p&gt;The failure no longer appears to be:&lt;/p&gt;

&lt;p&gt;VMware USB passthrough&lt;br&gt;
USB permissions&lt;br&gt;
HCI transport&lt;br&gt;
the Bluetooth radio itself&lt;/p&gt;

&lt;p&gt;Instead it appears to be somewhere between&lt;/p&gt;

&lt;p&gt;AppleBluetoothUSBTransport&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;BlueTool&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;IOBluetoothHCIController&lt;/p&gt;

&lt;p&gt;where Ventura refuses to register the controller after initial HCI communication.&lt;/p&gt;

&lt;p&gt;What I'm looking for&lt;/p&gt;

&lt;p&gt;Has anyone worked with:&lt;/p&gt;

&lt;p&gt;Barrot Bluetooth controllers&lt;br&gt;
fake CSR devices&lt;br&gt;
Apple's Bluetooth transport&lt;br&gt;
BlueTool&lt;br&gt;
DriverKit Bluetooth transports&lt;br&gt;
IOBluetoothFamily&lt;br&gt;
USB Bluetooth initialization quirks&lt;/p&gt;

&lt;p&gt;Specifically:&lt;/p&gt;

&lt;p&gt;Has anyone successfully used a Barrot (0x08E7) controller under Ventura?&lt;br&gt;
Does Apple reject Barrot after Read Local Version?&lt;br&gt;
Is there already a transport patch somewhere?&lt;br&gt;
Has anyone ported Linux's fake-CSR initialization to macOS?&lt;br&gt;
Would DriverKit be the correct layer, or does this require patching Apple's Bluetooth transport?&lt;br&gt;
Evidence collected&lt;/p&gt;

&lt;p&gt;So far we've confirmed:&lt;/p&gt;

&lt;p&gt;VMware USB 3.2 passthrough works.&lt;br&gt;
USB 2.0 was ruled out because it breaks input devices, so testing continues with USB 3.2 only.&lt;br&gt;
Raw HCI communication (Reset and Read BD_ADDR) was identified as the decisive diagnostic path, confirming the controller itself responds.&lt;br&gt;
The investigation concluded the device identifies as Barrot Technology (0x08E7) while presenting the legacy CSR USB ID (0A12:0001), suggesting a fake-CSR implementation rather than genuine CSR hardware.&lt;br&gt;
The proposed direction is to reproduce Linux's Barrot/fake-CSR initialization sequence because Apple's transport does not appear to handle this device automatically.&lt;/p&gt;

&lt;p&gt;I'd be happy to share:&lt;/p&gt;

&lt;p&gt;USB captures&lt;br&gt;
HCI logs&lt;br&gt;
Wireshark captures&lt;br&gt;
Python HCI tools&lt;br&gt;
VMware configuration&lt;br&gt;
Reverse engineering notes&lt;/p&gt;

&lt;p&gt;if anyone wants to investigate.&lt;/p&gt;

</description>
      <category>debugging</category>
      <category>developers</category>
      <category>hardware</category>
      <category>softwareengineering</category>
    </item>
  </channel>
</rss>
