Outputting the crystal oscillator directly in the Si5351

I’m using a OCXO/Si5351A kit as an external 27MHz reference for my LNBF-based 10GHz receiver. At first, I intended to use a buffer amplifier to take out directly the 27MHz cyrstal oscillator in the kit. However, I finally configured the Si5351A to generate 27MHz, as that was simpler.

Taking a look today at the documentation for the Si5351, I’ve realised that it is possible to configure the Si5351 to connect some of its outputs directly to the crystal oscillator input, acting as a buffer and bypassing all the frequency synthesis stages. To do this, XO_FANOUT_EN, which is bit 6 in register 187 “Fanout enable”, must be set to 1. The selector CLKn_SRC, which is bits 3 and 2 of clock control register (registers 16-23), is set to 00 (XTAL source) on reset, so this is already set correctly. It is probably a good idea to set CLKn_IDRV to 11 to get the highest drive strength on the output pin.

Arduino LED driver: prototype finished

Today I’ve finished my prototype of the Arduino LED driver. I had already soldered and tested all the components quite a while ago, but I ran out of connectors for the LED strings, so I had to wait for more to arrive from China.

This project uses an Arduino-compatible ATmega328P and is able to drive up to 18 regular LED strings using the BCR420UW6 linear driver and 4 high-power LED strings using the AL8808 switching driver. The intended application is programmable lightning, such as Christmas or party lights.

PCB front
PCB front

Calibrating the S-meter in Linrad

In a previous post, I talked about the GALI-39 amplifier kit from Minikits. Here I will describe the procedure to calibrate the S-meter in Linrad (or another SDR) using this amplifier or any other amplifier with a known NF and an uncalibrated signal source. Leif Åsbrink has a youtube video where he speaks about the calibration of the S-meter in Linrad. However, he doesn’t use an amplifier, so I will be following a slightly different procedure.

Arduino LED driver: PCBs shipped

This is a quick introduction to my Arduino LED driver project, since the PCBs for the prototype have being shipped from ShenZhen2U a couple of days ago. This project is fairly simple. The idea is to have an Arduino-compatible ATmega328P drive many LED strings, composed of one of the following two types of LEDs: regular or high-efficiency LEDs taking about 30mA, and high-power LEDs modules taking between 700mA and 1A. The applications I have in mind for this project are several lightning projects where a bunch of LEDs have to be controlled, perhaps in a complex way, but without needing much input (or none at all) from the outside world. Christmas and party lightning are good examples.

A total of 4 AL8808 switching mode LED drivers can be installed on the PCB to drive strings of high-power LEDs requiring up to 1A of current. To drive strings of regular LEDs, the BCR420UW6 linear mode LED driver is used. A total of 18 of these can be installed on the PCB. This is as much as you can control with the ATmega328P, as all of the output pins get used.

No USB is included in this project, since the idea is to program it via ISP. In case some interaction with the outside world is needed, the ISP header could be used to interface with SPI hardware. Everything runs off 12VDC which has to be provided by an external switching mode power supply.

PCB images
The PCB images provided by the manufacturer look quite nice

This is going to be open source hardware, so when I have actually built and tested the project I will post the schematics and PCB layouts to Github. Stay tuned for more information.