Skip to content

Instantly share code, notes, and snippets.

@samhenrigold
Created September 6, 2025 23:21
Show Gist options
  • Save samhenrigold/42b5a92d1ee8aaf2b840be34bff28591 to your computer and use it in GitHub Desktop.
Save samhenrigold/42b5a92d1ee8aaf2b840be34bff28591 to your computer and use it in GitHub Desktop.
#!/bin/bash
# MacBook Lid Angle Sensor Diagnostic Script
# This script helps identify the lid angle sensor on different MacBook models
echo "=============================================="
echo "MacBook Lid Angle Sensor Diagnostic Tool"
echo "=============================================="
echo ""
# Get system info
echo "System Information:"
echo "- Model: $(system_profiler SPHardwareDataType | grep 'Model Name' | cut -d: -f2 | xargs)"
echo "- Chip: $(system_profiler SPHardwareDataType | grep 'Chip' | cut -d: -f2 | xargs)"
echo "- macOS: $(sw_vers -productVersion)"
echo ""
echo "Step 1: Looking for exact expected sensor..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac,\"ProductID\":0x8104,\"PrimaryUsagePage\":32,\"PrimaryUsage\":138}'"
EXACT_MATCH=$(hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}')
if [ ! -z "$EXACT_MATCH" ]; then
echo "βœ… FOUND EXACT MATCH:"
echo "$EXACT_MATCH"
echo ""
echo "Your sensor should work!"
exit 0
else
echo "❌ Exact match not found. Continuing diagnostics..."
fi
echo ""
echo "Step 2: Looking for any Apple sensors..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac,\"PrimaryUsagePage\":32}'"
APPLE_SENSORS=$(hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}')
if [ ! -z "$APPLE_SENSORS" ]; then
echo "πŸ“± Found Apple sensor devices:"
echo "$APPLE_SENSORS"
echo ""
else
echo "❌ No Apple sensors found with UsagePage 32"
fi
echo ""
echo "Step 3: Looking for orientation sensors with any ProductID..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac,\"PrimaryUsagePage\":32,\"PrimaryUsage\":138}'"
ORIENTATION_SENSORS=$(hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}')
if [ ! -z "$ORIENTATION_SENSORS" ]; then
echo "🧭 Found orientation sensors:"
echo "$ORIENTATION_SENSORS"
echo ""
else
echo "❌ No orientation sensors found"
fi
echo ""
echo "Step 4: Looking for all Apple 0x8104 devices..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac,\"ProductID\":0x8104}'"
APPLE_8104=$(hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}')
if [ ! -z "$APPLE_8104" ]; then
echo "πŸ” Found Apple 0x8104 devices (different usage pages):"
echo "$APPLE_8104"
echo ""
else
echo "❌ No Apple 0x8104 devices found"
fi
echo ""
echo "Step 5: Looking for similar ProductIDs..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac}' | grep -E '0x810[0-9A-F]'"
SIMILAR_PRODUCTS=$(hidutil list --matching '{"VendorID":0x5ac}' | grep -E "0x810[0-9A-F]")
if [ ! -z "$SIMILAR_PRODUCTS" ]; then
echo "πŸ” Found similar Apple ProductIDs (0x810X):"
echo "$SIMILAR_PRODUCTS"
echo ""
else
echo "❌ No similar ProductIDs found"
fi
echo ""
echo "Step 6: All Apple HID devices (filtered for potential sensors)..."
echo "Command: hidutil list --matching '{\"VendorID\":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'"
ALL_APPLE_FILTERED=$(hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E "(sensor|orientation|32|138)")
if [ ! -z "$ALL_APPLE_FILTERED" ]; then
echo "πŸ“Š Found potential sensor-related Apple devices:"
echo "$ALL_APPLE_FILTERED"
echo ""
else
echo "❌ No sensor-related Apple devices found"
fi
echo ""
echo "=============================================="
echo "Diagnostic Summary:"
echo "=============================================="
if [ ! -z "$EXACT_MATCH" ]; then
echo "βœ… STATUS: Sensor should work (exact match found)"
elif [ ! -z "$ORIENTATION_SENSORS" ]; then
echo "⚠️ STATUS: Different ProductID - code needs updating"
echo " Found orientation sensor with different ProductID"
elif [ ! -z "$APPLE_SENSORS" ]; then
echo "⚠️ STATUS: Different Usage - code needs updating"
echo " Found Apple sensors but different Usage value"
elif [ ! -z "$APPLE_8104" ]; then
echo "⚠️ STATUS: Different UsagePage - check other usage pages"
echo " Found Apple 0x8104 devices but different usage pages"
else
echo "❌ STATUS: No compatible sensor found"
echo " This MacBook model may not have an accessible lid angle sensor"
fi
echo ""
echo "Please share this entire output for troubleshooting!"
echo "=============================================="
@davedarko
Copy link

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1
  • macOS: 15.6

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

@andrewksmith12
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip: Unknown
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
πŸ“± Found Apple sensor devices:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x0 0x2 32 115 0x10035e2f8 BT-AACP AppleUserHIDEventService (null) AppleUserHIDEventDriver 0
0x5ac 0x0 0x2 32 122 0x10035e2f2 BT-AACP AppleUserHIDEventService (null) AppleUserHIDEventDriver 0

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x0 0x2 32 115 0x10035e2ef BT-AACP IOHIDResource (null) (null) 0
0x5ac 0x0 0x2 32 122 0x10035e2eb BT-AACP IOHIDResource (null) (null) 0

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
πŸ“Š Found potential sensor-related Apple devices:
0x5ac 0x0 0x2 32 115 0x10035e2f8 BT-AACP AppleUserHIDEventService (null) AppleUserHIDEventDriver 0
0x5ac 0x0 0x2 32 122 0x10035e2f2 BT-AACP AppleUserHIDEventService (null) AppleUserHIDEventDriver 0
0x5ac 0x0 0x2 32 122 0x10035e2eb BT-AACP IOHIDResource (null) (null) 0
0x5ac 0x0 0x2 32 115 0x10035e2ef BT-AACP IOHIDResource (null) (null) 0

==============================================
Diagnostic Summary:

⚠️ STATUS: Different Usage - code needs updating
Found Apple sensors but different Usage value

Please share this entire output for troubleshooting!

@macprince
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M1
  • macOS: 26.0

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

Please share this entire output for troubleshooting!

@Sergey004
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M1
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

Please share this entire output for troubleshooting!

@AndreyKrnsov
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M1
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

Please share this entire output for troubleshooting!

@Serjik85
Copy link

Serjik85 commented Sep 7, 2025

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M1
  • macOS: 26.0

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

Please share this entire output for troubleshooting!

@Fl0p
Copy link

Fl0p commented Sep 7, 2025

./diagnose_lid_sensor.sh

MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip:
  • macOS: 14.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
πŸ“± Found Apple sensor devices:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8262 0x0 32 65 0x10002ea56 (null) (null) (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8262 0xffffffff80300000 32 65 0x10002ea01 USB AppleUserHIDDevice Ambient Light Sensor AppleUserUSBHostHIDDevice 1

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
πŸ” Found similar Apple ProductIDs (0x810X):
0x5ac 0x8102 0x0 65298 1 0x10002ea26 (null) (null) (null) (null) 0
0x5ac 0x8103 0xffffffff80400000 12 1 0x10002ea39 USB AppleUserHIDEventService Headset AppleUserHIDEventDriver 1
0x5ac 0x8103 0xffffffff80400000 12 1 0x10002e9fb USB AppleUserHIDDevice Headset AppleUserUSBHostHIDDevice 1
0x5ac 0x8102 0xffffffff80700000 65298 1 0x10002e9f9 USB AppleUserHIDDevice Touch Bar Backlight AppleUserUSBHostHIDDevice 1

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
πŸ“Š Found potential sensor-related Apple devices:
0x5ac 0x8262 0x0 32 65 0x10002ea56 (null) (null) (null) (null) 1
0x5ac 0x8262 0xffffffff80300000 32 65 0x10002ea01 USB AppleUserHIDDevice Ambient Light Sensor AppleUserUSBHostHIDDevice 1

==============================================
Diagnostic Summary:

⚠️ STATUS: Different Usage - code needs updating
Found Apple sensors but different Usage value

Please share this entire output for troubleshooting!

@MrJarnould
Copy link

❯ ./diagnose_lid_sensor.sh

MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1 Max
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
βœ… FOUND EXACT MATCH:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000b7e SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000b51 SPU AppleSPUHIDDevice (null) (null) 1

Your sensor should work!

@scij
Copy link

scij commented Sep 8, 2025

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1 Pro
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
βœ… FOUND EXACT MATCH:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000808 SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x1000007a5 SPU AppleSPUHIDDevice (null) (null) 1

Your sensor should work!

@netux
Copy link

netux commented Sep 8, 2025

Hi. Just coming in to say this works just fine Apple M2 Pro on macOS 15.6.1!
Seems like I lucked out with my purchase, as I would've missed out on this awesome tool if I had gone with an M1 instead 😬

@rfazi
Copy link

rfazi commented Sep 9, 2025

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1 Pro
  • macOS: 13.7.8

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
βœ… FOUND EXACT MATCH:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x10000048a SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x10000045a SPU AppleSPUHIDDevice (null) (null) 1

Your sensor should work!

@tripcreator
Copy link

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1 Pro
  • macOS: 26.0

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
βœ… FOUND EXACT MATCH:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000a60 SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000a26 SPU AppleSPUHIDDevice (null) (null) 1

Your sensor should work!

@Ghoses
Copy link

Ghoses commented Sep 9, 2025

System Information:

  • Model: MacBook Pro
  • Chip: Apple M1 Pro
  • macOS: 15.5

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
βœ… FOUND EXACT MATCH:
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000a1c SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 32 138 0x100000a09 SPU AppleSPUHIDDevice (null) (null) 1

Your sensor should work!

@Potionn
Copy link

Potionn commented Sep 10, 2025

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M2
  • macOS: 15.5

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
πŸ” Found Apple 0x8104 devices (different usage pages):
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 65280 9 0x1000006c4 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000006a1 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 5 0x1000006ac SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 65280 9 0x10000063c SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000005ff SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 5 0x1000005fe SPU AppleSPUHIDDevice (null) (null) 1

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
πŸ” Found similar Apple ProductIDs (0x810X):
0x5ac 0x8104 0x0 65280 9 0x1000006c4 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000006a1 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 5 0x1000006ac SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 5 0x1000005fe SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 9 0x10000063c SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000005ff SPU AppleSPUHIDDevice (null) (null) 1

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

⚠️ STATUS: Different UsagePage - check other usage pages
Found Apple 0x8104 devices but different usage pages

Please share this entire output for troubleshooting!

@aman-coditas
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Pro
  • Chip: Apple M2
  • macOS: 15.6.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
πŸ”Ž Found Apple 0x8104 devices (different usage pages):
Services:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 65280 9 0x1000007a2 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000007f5 SPU AppleSPUHIDDriver (null) (null) 1

Devices:
VendorID ProductID LocationID UsagePage Usage RegistryID Transport Class Product UserClass Built-In
0x5ac 0x8104 0x0 65280 9 0x100000774 SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x100000789 SPU AppleSPUHIDDevice (null) (null) 1

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-Fa-f]'
πŸ”Ž Found similar Apple ProductIDs (0x810X):
0x5ac 0x8104 0x0 65280 9 0x1000007a2 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x1000007f5 SPU AppleSPUHIDDriver (null) (null) 1
0x5ac 0x8104 0x0 65280 9 0x100000774 SPU AppleSPUHIDDevice (null) (null) 1
0x5ac 0x8104 0x0 65280 3 0x100000789 SPU AppleSPUHIDDevice (null) (null) 1

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

⚠️ STATUS: Different UsagePage - check other usage pages
Found Apple 0x8104 devices but different usage pages

Please share this entire output for troubleshooting!

@spaceKitten28
Copy link

==============================================
MacBook Lid Angle Sensor Diagnostic Tool

System Information:

  • Model: MacBook Air
  • Chip: Apple M1
  • macOS: 15.1

Step 1: Looking for exact expected sensor...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ Exact match not found. Continuing diagnostics...

Step 2: Looking for any Apple sensors...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32}'
❌ No Apple sensors found with UsagePage 32

Step 3: Looking for orientation sensors with any ProductID...
Command: hidutil list --matching '{"VendorID":0x5ac,"PrimaryUsagePage":32,"PrimaryUsage":138}'
❌ No orientation sensors found

Step 4: Looking for all Apple 0x8104 devices...
Command: hidutil list --matching '{"VendorID":0x5ac,"ProductID":0x8104}'
❌ No Apple 0x8104 devices found

Step 5: Looking for similar ProductIDs...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -E '0x810[0-9A-F]'
❌ No similar ProductIDs found

Step 6: All Apple HID devices (filtered for potential sensors)...
Command: hidutil list --matching '{"VendorID":0x5ac}' | grep -i -E '(sensor|orientation|32|138)'
❌ No sensor-related Apple devices found

==============================================
Diagnostic Summary:

❌ STATUS: No compatible sensor found
This MacBook model may not have an accessible lid angle sensor

Please share this entire output for troubleshooting!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment