❌

Normal view

There are new articles available, click to refresh the page.
Before yesterdayMain stream

DIY STM32 and AD9913 signal generator board

13 April 2024 at 15:02

The AD9913 direct digital synthesizer works as a digital waveform synthesizer that can generate signals with very precise resolution. When it comes to radio receivers, the AD9913 with <0.05Hz resolution can be used as...

The post DIY STM32 and AD9913 signal generator board appeared first on Nuclearrambo.

W8BH clock with EU option

20 November 2022 at 20:39

The TFT GPS clock with touch control which has been designed by Bruce E. Hall, W8BH,Β is a very nice clock with a large and easily readable 3.2" color display. Its three different screens have been nicely laid out and designed also. The processor is an STM32 Blue Pill.

I cloned the software and modified it in two simple ways:

1. EU option

This is a backwards compatible version which can be Europeanized with formats for date and units. It also has possibility for removing the display of the battery icon, when running from a USB supply.

New boolean variables to set:

  • US_UNITS - if false: m, kmh, Little-endian date with '.', if true: feet, mph, Middle-Endian date with '/'
  • BATTERY_DISPLAY - true: as original code, false: no display of battery icon and status

2. Minor fixes

  • There is now a new way of initializing Serial1 (used for GPS input signal) as the original one didn't compile in Arduino IDE 1.8.13. SeeΒ https://github.com/stm32duino/wiki/wiki/API#hardwareserial
  • The satellite count in the upper right corner is more agile so it now drops to 0 whenever the GPS signal is lost, rather than stay forever at last satellite count.
See code on GitHub:Β https://github.com/la3za/GPS-clock.

The two other screens, selectable by touch, are these:




An experimental STM32 Frequency Counter

By: G0MGX
10 May 2020 at 09:04
Well,

In an attempt to learn more about microcontroller programming I have done a little bit of training during this Covid-19 lockdown:



My first real attempt to use these skills is below. I've used a GPS 1pps signal to accurately count an external frequency. This is a GPS disciplined freuqnecy counter:


Good, isn't it?

Here is a picture of me (with Covid-19 dog clipper hair cut) and my beloved Bonnie dog:


A CW & WSPR Beacon

By: G0MGX
18 April 2020 at 16:06
Well,

I've been fiddling some more with STM32 and have created a DDS based CW & WSPR beacon for 6M.

You can find the details of the project here:


The WSPR code is stolen from Anthony F4GOH, his code and other bits and bobs are on GitHub here:

https://github.com/f4goh/wspr

To counter any drift in the DDS, I've modified my AD9850 board to use an external signal for the clock and configured my Leo Bodnar GPS referenced oscilator to give me 10MHz from output 1 and 125MHz from output 2, thus:


The 125MHz is now used to drive the DDS. I'd be delighted to receive reports from the beacon, the CW signal is on 50.030 and every multiple of 10 mins it sends a 2 min WSPR transmission on 50.293 + 30Hz.

Here's the WSPR beacon RX from G0ORC:


No drift - not even a wobble! Excellent.

Fun, dont you think?

TFTs and Blue Pills - Are you sure?

By: G0MGX
11 March 2020 at 17:30
Well,

I've been using the STM32 processor (STM32F103 for those playing along at home) based "Blue Pill" board. This board is compatible with the Arduino IDE and I have been using it with the ILI9341 super duper TFT display module.

This is the board in question:



The STM32 board support can be added easily to the Arduino IDE, just add this line:

https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json

to the preferences screen:


Once you have done that you can then install the STM32 cores from the board manager:


I wrote some very simple code to generate Pi using floating point maths:


Set to calculate 100,000 itterations, the good old Arduino Nano ran this code inΒ 29.60099983215332031250 seconds. This Blue Pill board runs the same calculation inΒ 3.07200002670288085937 seconds. Cooking!

Here' how I have wired the test up for the TFT:


I have used the library called "TFT_eSPI" which is here. In the more modern Arduino IDE you just search for it and install from the library manager.

Once you have done that you need to make a couple of edits to the "User_Setup" file which you can find in the libray directory.

Here's mod 1:


and this is mod 2 - please use pins of your choice here:


Once you have done that all should be well!

Please note that this library and config only works with the Arduino STM32 cores and the HID bootloader.....

Making a 10W "QRP" ish linear

By: G0MGX
14 February 2020 at 09:54
I've started to design some software that will control a low power linear amplifier.

I plan to use the 10W Amp from QRPLabs as the main component - I can't make one for the price they sell these kits, so thats on order.

In the meantime, I've been designing some software to control the output switching, and calculate the forward and reflected power and SWR:



Initial software design is included for the STM32 "blue pill" baord.

The software can be downloaded here.

The pinoput for the STM32 board is here.

The schematic for the RF sence using AD8307 is here.

You can purchase a STM32 board here.

The TFT display with touchscreen functionality is here:

More to follow on this topic.

Here's part 2 where I look at the Low Pass Filters and the Log Amps to take accurate power readings in software:





The finsl control software is here.

The simple software based sequencer software is here.

The schematic for the transistor switches I used in the sequencer is here.

The wiring layout for the STM32 is here.

The AD8307 schematic is here.

A STM32 Processor - really?

By: G0MGX
2 February 2020 at 07:30
Well,

In my never ending desire to fiddle with Microprocessors and/or Micro controllers, I found these boards on my local Amazon with prime next day delivery:


They are called a "Blue Pill" for some reason?!?!? The boards I ordered are these. At the time of writing I could buy 5 of these boards for Β£15 GBP delivered.

You can use them directly with an external USB -> Serial converter, but you can also upload a bootloader and make the on-board USB port work successfully.

I followed the instructions here:


the speed of these processors is excellent and when used in conjunction with the ILI9342 displays I have been using recently they work very well indeed.

You can see an example of the processor in action in my latest musings on the BITX:


All very impressive and I still fail to believe how inexpensive these MCUs are.

** UPDATE **

There is an alternative bootloader (its much smaller) available for this board now, you can find instructions for using it below. This uses the HID method for uploading:



❌
❌