It would be really nice to have a better understanding of why my various bluetooth headphones have weird behavior around pairing/unpairing, switching to headset mode, having multiple devices connected, etc. Sniffing and analyzing the packets would probably be very helpful to understand this?

Also, it would be cool to build a bluetooth audio mixer kind of thing. A device that connects directly to all the bluetooth audio sources/sinks and allows me to route audio from any source to any sink. (And maybe also, throw in wired audio input/output, too.)

how to sniff bluetooth packets?

probably using an ubertooth is the best way

reference guides about bluetooth spec