BMW and Mercedes have one convenient feature that some people hate, other likes.An automatic moving side mirror, on the passenger side, that moves downward during backup, to see the curb. I decided that with some modification it would be a very useful feature in my car as well.
It was also very interesting from an engineering view point. Mirrors in the MX-5 do not have any intellect; they’re simply controlled by buttons.

Red marking shows connection points
I decided to make a controller, which will remember position of the mirror and allow manual adjustments any time. This is different from BMW or some aftermarket devices.
I can separately adjust the mirror position in all directions for drive mode and backup. These positions will be remembered for each shifter position separately.
I found it is very convenient during parallel parking close to the wall at my office. This wall has some protruding feature, which I have to watch out for. A little adjustment of the mirror is very helpful and it automatically returns to where it’s supposed to be when I start driving.
There are no extra buttons to press, everything is automatic.
Implementation:
MX-5 AT has no dedicated wire to signal reverse mode, but CAN bus. I used Microchip PIC18F2480 CAN controller to do all the work: receiving CAN info about shifter position, bypassing manual adjustments to the motors and remember position in the EEPROM.
As always, installation in this car is a big challenge. I don’t like to make permanent changes in my car. I think the best option to connect my controller is to use a special harness. I could not find compatible connectors, so I recreated a 3D design of connector housing. Using available pins from Digikey and a 3D printer, I built my own custom harness.

First revision of harness

Second revision
Connecting to CAN-HS bus was easy. I found a convenient location near the OBD connector and using a T-clamp, I connected the wires parallel to CAN-HS wires.
I have this setup for 5 weeks now and very happy how it works!

Kit for direct connection, without harness
Here is smart-mirror-installation guide for the option without harness.
Updated 3/4/2017:
Updated 4/18/2017 Smart mirror installation guide
Updated installation guide for installing controller on passenger side, which is more easy.
Updated 6/9/2017
Because there is no feedback on actual mirror position, controlling has to be done by time measurement only. This can produce some error in positioning , because the speed of moving up and down can be slightly different. I implemented in the software a correction algorithm for all 4 directions. To calibrate this algorithm, I used a laser pointer and a test cycle program to automatically move the mirror multiple times in 4 directions, and monitored laser reflection on the flour for accuracy of returning back to the same position after 10 cycles.

Calibration setup
Currently, error is less than half an inch after 10 cycles.

Installation on the right side of the car with bypass switch
Here is some feedback on Miata forum:
https://forum.miata.net/vb/showthread.php?t=644600
https://forum.miata.net/vb/showthread.php?p=8544671#post8544671
New version of this controller will be available as a feature of integrated device.
Pingback: Check fuel! Reminder | Gadgets for my MX-5 2016 (ND)
Pingback: CAN bus sniffer | Gadgets for my MX-5 2016 (ND)
Hi,
I’m really interested in this. My previous car, VW Golf GTI, had this feature and it helps parking a lot and I miss it now.
Is this for automatic only? I drive a 124 Spider with the (MX-5 NC ?) manual gearbox. But I saw that you’re not selling this anymore, anyway?
One thing I don’t really like is having a CAN BUS plug on all the time. Can’t we just grab information from the reverse light cable?
Regards,
Torben
LikeLike
It is possible to use revers light wire to initiate mirror control, but it will go every time, when on reverse. I did not like to move mirror, when backing up from the garage, or parking spot, only for parallel parking. I will release new version later this year.
LikeLike
Pingback: Adding front parking camera and more… | Gadgets for my MX-5 2016 (ND)
Heads-up for anyone using the Versatuner: the USB-OBDII cable is very sensitive to traffic on the CAN bus. Disconnect this device while installing and flashing the ECU.
LikeLike