> 1. impersonate your light bulb, because they both have the same key
Definitely don't give both the same key.
> 2. impersonate my light bulb, because you and your browser can't tell the difference
Who cares if you can impersonate your own lightbulb?
> 1. each certificate is signed by a unique CA
This doesn't change either scenario. If they shared a key then custom CAs don't stop impersonation. If each device has its own key and CA then they still can't impersonate your device, and they still can impersonate their device.
> 2. each device has a globally unique domain and you type this domain into the browser
Typing in "jzhf.hue.com" sound easier than figuring out what IP has been assigned to the device.
> Who cares if you can impersonate your own lightbulb?
For MITM - you think you are connecting to your device, actually it's my proxy (DNS spoof, ARP spoof, TCP hijack, ...), you still get the green bar in your browser saying "über secure Philips lightbulb", you just don't know it's mine because the domain matches and it's signed by the same CA (assuming neither of these protections is in place).
> If each device has its own key and CA then they still can't impersonate your device, and they still can impersonate their device.
Without manual installation of my CA your browser won't accept the certificate ripped from my device.
You said in another post that providing correct address is better than per-device CA. No doubt it's more convenient in a commercial product, assuming you can solve the DNS problem somehow (which doesn't seem possible without working Internet connection or editing hosts file). From pure security standpoint though, I feel like per-device CA has an added advantage of resistance to typosquatting. But it's getting academic now, it's hard to squat if it takes buying a physical device with the right ID.
Definitely don't give both the same key.
> 2. impersonate my light bulb, because you and your browser can't tell the difference
Who cares if you can impersonate your own lightbulb?
> 1. each certificate is signed by a unique CA
This doesn't change either scenario. If they shared a key then custom CAs don't stop impersonation. If each device has its own key and CA then they still can't impersonate your device, and they still can impersonate their device.
> 2. each device has a globally unique domain and you type this domain into the browser
Typing in "jzhf.hue.com" sound easier than figuring out what IP has been assigned to the device.