6-button digital clock for BMW E30

The clock is engineered to be installed into the existing 6-button BMW E30 digital clock enclosure. The digits and letters are drawn by five red LTP-305HR 5×7 dot matrix displays covered by an orange filter. There are two PCBs: the first is for the power supply and processor, the second is for the displays, buttons, and display chip. The time functions are processed by the RTC module RV-3032-C7, which is temperature-compensated and very accurate. When the power is off, the RTC module gets power from the supercapacitor, which can supply enough power for a few months. The light sensor VEML7700 provides information about the current light level. The display dims at night. The optocoupler provides isolation from other car electronics.

The software is written using RTOS Zephyr for the processor STM32L452RE. There are several threads that read and update the current time, check the light level and adjust the display brightness, process interrupts fired by controlling buttons. A watchdog process restarts the processor in case of a serious error.

clock_parts

clock_open

The processor is programmed by connecting it to an STM32 Nucleo board.

clock programming

The display PCB.

Display

The processor PCB.

processor

The power module.

power

The supercapacitor charger module.

battery_charger

Software: BMW E30 clock software for Zephyr RTOS and STM32