Search This Blog

Radio Guy Tees

Radio Guy Tees
Radio Guy T-Shirts

Wednesday, 13 August 2025

It's Pill Time again

 You may recall that I used the SDM32 MCU range quite a lot and also the "Blue Pill" board for a lot of my projects.

Recently the board support package that I was using in Arduino has become depreciated and I wanted to document how I now use the boards with the Arduino IDE.

Firstly, in board manager I have added this to the "additional URL's" section:

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

This is the official board support file from the manufacturer.

Once that is complete, then you also need to install the STMCubeProgrammer, also from the manufacturer.

Once done, there are a number of options to upload from the IDE to the board, most require messing about with the boot jumpers, but there is a HID bootloader we can instal on the board for permanent conenctivity between the IDE and the board. Note the boot jumper settings below:


We then use the STMCubeProgrammer application to connect to the board using the FTDI COM port.


We can then download the appropriate binary from the selection here.

It's critical that you get the correct binary bootloader uploaded, I used the medium density PC13 for my board (PC13 is the pin the onboard LED connection).


Once loading is complete, move the boot jumper back BEFORE removing power, then bob is indeed your uncle.

Inside the IDE, I then used the following settings:


One of my boards didn't work using this method and I strongly suspect a counterfiet device - beware!



The Black ADF4351 Boards

 Well,

Some time ago, I did some expermimentation with black ADF4351 evaluation boards that are available at all good sites selling wares from the land where copyright means "lets copy it right".

I've bought some more recently and found that I couldn't get them to work.


Thanks to this post, I was able to deduce that the newer boards seem to be missing some bits - most importantly the CS line isn't tied high by a SMD resistor. Once I had pulled that pin high via 10K to the 3V3 line, the board worked as expected.

I've been using mine with a Pi Pico2:


You can see the additional 10K on the fritzing diagram above.

I have written some very simple code here to upload the register values to the device, and also have a spreadsheet here that will do the necessary maths from a target output frequency, channel spacing and clock frequency and generate the 6 register values needed to program the device.

Good stuff!