Well, i have tried to start on this project last summer. Even bought expensive F429 development board from DigiKey. Still too much stuff in my personal life and around the mcHF project kept me away.
Now after spending four mounts on the v 0.5 update of the mcHF boards and another month on the new 3D casing, i think is time to seriously get back to this new idea.
What is about the idea – reflecting on the mcHF development in the last two years, all problems that needed addressing were exclusively related to analogue parts of the design. In my view is imperative to sort those problems by removing as much as possible of those(i mean analogue modules).
Why new project, instead of modification of the existing mcHF ? As the mcHF project is more or less mature, hardware is finalized and the firmware complex enough to allow major changes, i believe the best option is to start from scratch.
So where do i start ? First i can re-use parts of the code that was done on the F429 development board – those are mainly two controls that emulate analogue S-meter and spectrum display. I have super loop and OS version. I think i have settled on using FreeRTOS in the new radio, so i had to port the OS version of the controls on a new CPU – the STMF42F746.
I have a clear idea what the new block diagram would look like. I would love to use the AD9957 quadrature upconverter. It could be connected to a 16bit port of the F7 and using a timer, samples could be sent to it via 2-3 ARM instructions, without much overload on the CPU.
Most of the rest would be re-use of the mcHF user input/ouput. The one thing i am not sure is the RX path. Ideally i would love to use ADC/FPGA and sample 0-70 Mhz range, then simply downconvert in the FPGA, but my only starting point is old USRP1 that needs a bit of dusting off.
That is why i have decided to make a first alpha proto board with the F7, LCD, SDRAM and AD9957 for now and see how it goes. Anyway it happens that the F7 discovery board is not suitable for expansion, so i kinda have to do it.
Yes, the SMT32F7 is no joke, thirteen pages of just GPIO options. Well actually it is not that scary – after connecting the LCD in 24 bit mode, SDRAM in 32 bit mode and the AD9957 on full 16 bit port, not much left for anything else, even on the LQFP208 package. Did somebody complained about 5 mil pitch CPU soldering ? Nothing to fear, now we have 208 pin package, but if you miss the 100 pin, the AD part comes in the same footprint as the F4 in the mcHF! Well it has also a thermal pad in the middle.
Final point on the source code, so far it is only a custom compilation of the F7 discovery cube release by ST. I am using the System Workbench from ST, this is using Eclipse and do not support project files, but rather workspace directory. So it is a mad 500 MB of libs and documents that need serious sorting before it could be uploaded on the GitHub. The other problem here is that at this moment it nicely loads onto the F7 discovery board, but once i move to the Alpha board, it will not work on the discovery. And to use conditional compiling in hundreds of files, just to have 1% available on the depreciated board is too much work. So bare with me on this one.
Next, complete schematics and start on the PCB…