The factory cupholders on the 1992-1999 BMW 3-series (E36) are too narrow to be usable with modern cups. Cups don't sit level in the cupholders, causing the cup to tip over, making the cupholder unusable.
This conversion kit fixes that problem, and should fit any E36 including the 318i, 325i, 328i, and M3. It makes the cupholders shallower, but affords a flat surface for cups and cans to sit on.
You may want to print these parts in ABS to keep them from deforming on hot days. The insert has never deformed on me with PLA, but the ring has. It doesn't seem to bother the center console plastic if it deforms.
To install the parts:
Pop the cupholder module out of the center console
Remove the spring-loaded components from the cup holder
Reinstall the cupholder module
Install the insert and ring