The headlight switch knob broke in my Z3 and I didn't feel like spending the $50 or whatever it is for the chrome version of the parts. This design is accurate to the original with respect to the knob body, but I have never had the 'cap' or 'cover' from the switch. So I guessed. It should be close.
Let's just say that this looks and feels better than the disintegrated OEM part.
The model replaces the following BMW part numbers (in pairs, since you only have one of the first and one of the second):
01 LIGHT SWITCH BUTTON 1 61318389547
01 LIGHT SWITCH BUTTON CHROM 1 61318389880
01 LIGHT SWITCH BUTTON ALUMINIUM 1 61318401270
02 COVER FOR LIGHT SWITCH KNOB 1 61318400003
02 COVER FOR LIGHT SWITCH KNOB CHROM 1 61318400004
02 COVER FOR LIGHT SWITCH KNOB ALUMINIUM 1 61318401196
(Part numbers and descriptions taken directly from RealOEM, which is actually bae; thanks RealOEM)
To make this work, you're going to need a standard M5-0.8 hex nut. Nothing special. I walked into Home Depot and got a bag of two for <$0.60. The hex shape cutout should fit your nut with a little extra space for the glue. I used superglue.
I printed this model on my Prusa i3 MK2S at 0.15mm layer height and standard black PLA.
Best of luck.