Skip to content

EU1KY/eu1ky_aa_v3_h745

Repository files navigation

EU1KY Antenna Analyzer V3

This is a port of eu1ky_aa_v3 for STM32H745I DISCOVERY board

Getting Started

Prebuilt binary FW

You can download prebuilt firmware binary here: fw_image.zip.

Unpack the binary file from the archive, and drag-and-drop it to a virtual drive that appears when you connect the board to PC with USB cable.

Prerequisites

The firmware can be built in both Windows and Linux.

You'll need the following prerequisites to be installed:

  • Python3, in system path, including its Scripts subdirectory. Linux systems usually have the python installed by default (try executing 'python' in the command line). No matter what python version is installed, both Python 2 and Python 3 are equally usable for the purpose of building the firmware.
  • intelhex Python module (can be installed with command line 'python -m pip install intelhex --user').
  • Git SCM.
  • (Windows only) GNU make for Windows Download appropriate prebuilt file, rename it to make.exe and put it somewhere in a system PATH.
  • (Linux only) build-essential package (e.g. in Ubuntu, install it with 'sudo apt-get install build-essential')
  • GNU ARM embedded toolchain, AArch32 bare-metal target (arm-none-eabi), version 12.3 or newer. Path to its bin subdirectory must be in the system PATH.
  • STM32 CubeProg, in system PATH

It is recommended to use Visual Studio Code as a convenient code editor, workspace file for it is included. "C/C++" and "VsCode Action Buttons" extensions are highly recommended for it. Though, VSCode is not very convenient for in-system debugging (with Native Debug extension) because it does not show hardawre registers from SVD file. I prefer debugging in Windows, using EmBitz 1.11 and EBLink as GDB server. EmBitz project file is also included. SVD (STM32H7 System View Description) files for STM32H7 can be found on the ST Microelectronics site.

Build instructions

To clone repository, open command interpreter in some convenient directory and execute the following commands:

git clone https://github.com/EU1KY/eu1ky_aa_v3_h745
cd eu1ky_aa_v3_h745

To build the release target, just open a command line interpreter in the project's directory, and run

make -j4

If you want to build unoptimized code, run

make -j4 debug

The build must be finished with no errors and no warnings.

Flashing the firmware

In Windows you can connect the onboard ST-Link to PC with Micro-USB cable and then drag and drop appropriate built FW binary (out/Debug/fw_image.bin, or out/Release/fw_image.bin) to the drive that appears in the system.

The same method should probably work in Linux.

Another way is to use STM32 CubeProg by running

make flash

to flash Release firmware, or

make flashdbg

to flash Debug.

Differences from STM32F7 discovery

Though the boards are very similar, there are some significant differences that do not allow to port the code as a simple branch of the original one.

  • STM32H7 has two CPU cores in SoC. Currently the code has been ported to Cortex-M7 core only, but I am planning to utilize the second core, Cortex-M4, for HTML5 based web interface running on the device.
  • The STM32H745I Discovery board has on-board eMMC, so you don't need an SD card.
  • I've added NanoVNA protocol support, so NanoVNA Saver software can be used as an external interface to the device. You can choose the protocol used in the Configuration menu.
  • I am planning to build a new, significantly more capable RF frontend. Its support will be implemented first for this Discovery board, and, probably, will be ported back to F746 Discovery, but later.
  • An image file named logo.png can be placed in /aa/ directory. The image must be a PNG with dimensions 480x272 pixels. If it is there, and strictly satisfies the specified dimensions, it will be displayed when the device boots up.
  • The board uses built-in real time clock now. A 3V backup battery cell can be connected to the board to preserve clock always running: SB23 (near the CPU) should be unsoldered, battery plus should be connected to CPU's Vbat input (SB23 contact near the CPU), battery minus should be connected to the ground plane.

License

As usually, WTFPL.


73! Yury Kuchura EU1KY

About

EU1KY antenna analyzer ported to STM32H745I Discovery board

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published