YO4HFU |
SDA2121-2 PLL I²C ARDUINO |
During experiments to reuse the front end of an old Blaupunkt SC202(C) car radio cassette, I was curious to see if I could control the SDA2121-2X PLL via I²C.
This PLL IC is not very popular, and the available datasheet provides only minimal information.
I managed to control it using an Arduino Uno. The local oscillator (LO) frequency (without IF shift) is set by entering the desired frequency through the serial terminal in the Arduino IDE.
The sketch can be further extended to adjust the frequency with a rotary encoder, automatically calculate the LO frequency (for example 10.7 MHz IF), display the value, and more.
The frequency step is 50 kHz. The FM input is divided by 2 through the internal prescaler; therefore, the reference frequency for the PFD must be 25 kHz (R = 4 MHz / 160).
As a result, the N divider is calculated as (Frequency / 2) divided by 0.025. For example, for a frequency of 100 MHz, N = 2000.
It should be noted that the R and N dividers use separate sub-addresses, which is an uncommon programming method compared to standard PLLs.
+5V
│
├── 2.2kΩ ─── SDA (A4 Arduino ↔ Pin 3 PLL)
└── 2.2kΩ ─── SCL (A5 Arduino ↔ Pin 2 PLL)
GND ↔ PLL Pin 4 (A0)
GND Arduino ↔ GND PLL
SDA2121-2 datasheet
Blaupunkt OPEL SC202(C) schematic
Arduino Sketch v2
yo4hfu@2010-2025