Hi,
Have been working on an OSD compatible with MinimOSD, but based on a STM32F4. The OSD can do vector graphics and also can send data to the ground station using the unused frames after the Vsync pulses ( like teletext).( I use this to send data to my antenna tracker.) The OSD is desigtned to be a drop in replacement for MinimOSD and accepts Mavlink data. Also has 2 audio channels ( so can be used e.g fo vario) and various peripherals ( serial port, i2C, SPI and PWM capture etc,) broken out on headers.
Here is a video of the prototype working
regards
Andy
Replies
this is awesome - cant wait for a new OSD that is ardupilot compatible.
what's the status on being able to buy a kit from you ?
Hi Julian,
I need to verify with my co-conspirators, but currently I am still not really happy with the board. I have a feeling there is a lot of RF junk coming off it. Its certainly an order of magnitude better than V1 but there are still many things I would like to try:
-Different board shape. As it stands it looks like the board may be just right to act as a 1575 MHz patch (GPS frequency) I plan to copy the BrainFPV/OpenPilot board dimensions and see if that changes things. That said V2.1 board is an order of magnitude better than V1, defnitely flyable as shown by the vid
-Better EMI rf filters on power i/os e.g bead inductors etc. There are definite issues with this still. You need to try different placements. presumably where they cancel.
- Maybe a rf shield case. This might be as simple as a cardboard wrapper with some aluminium foil around it( I'm thinking FrSky D4R-II style). Having only had one flight its difficult to be sure but think my video range is down a bit. so may be due to rf from the OSD
All that said, the board works as can be seen so I see it currently as a hackers board. It has loads of untapped potential. One major goal is to plonk the whole APM stack in to it under the OSD. If it runs on a 16 MHz Arduino, this should be no problem ( and clearly works as shown by BrainFPV).
I will make the V2.1 board( as shown in the vid) available on OSHPark shortly. If you are still reading, I will see if can make some sort of kit of parts available. I think the (small quantity) parts cost to me is around $40 - $45. So bearing in mind the above, if you are intersetsed lete me know and I'll make a parts kit up... Soldering the board would not be a job for a novice though..
I hope to get on and design a new board version shortly but there is now a long list so may just live with V2.1 for a while and concentrate on the user side stuff
regards
Andy
As an update on the subject of rf interference. I managed to get a friend to do some frequency scanning.
On the V2.1 board( with its aluminium foil screen/package) there is a small amount of noise at 1560 Mhz which might explain the slightly reduced GPS sensitivity. This is in contrast to the V1 board, which has a largeish noise spike at exactly at 1575 MHz ( GPS frequency), which explains why the V1 board was so effective at jamming GPS at up to 1m away. Unlucky in some ways but has forced me to learn about RF issues and the resulting V2.1 board was much improved.
Overall I dont think the V2 board is bad at all . Its certainly flyable. In fact here is a video of me flying out to 2km + on my 25 mW 5.8 GHz system...
which is a personal best for me with thiis set up..so this is quite good proof that noise is quite low at 5.8 GHz and 2.4 GHz.
Despite this we are going to have a go at removing the last issues at GPS frequencies so planning to design another pcb yet...
regards
Andy
Hi,
Just a heads up.
Have found a major problem with the V1 PCB. It seems to act as a perfect GPS transmitter and jams my UBLOX-LEA6H at 0.5 m or less.
I'm looking into the issue, but ultimately this is going to require a new PCB to solve. I need to pay much more attention to rf layout clearly.
Apart from that the PCB is working very nicely. Crystal clear and crisp, but not much good without GPS :)
regards
Andy
Andy, did you try a separate power supply for the board, in case the jamming is coming over the wires instead of being radiated?
Colin
Hi Colin,
Yes. I put the whole thing including a battery in a biscuit tin with the lid on. That cures it obviously. However remove the lid or let the battery hang out and it kills the GPS.
I will try some small (470 pf) decoupling capacitors, but really the solution is a redesign with some RF pcb layout know how I think. From what I am reading my V1 board is how not to do it!
regards
Andy
Update on the GPS interference issue of the STM32F4 OSD board.
After redesigning the PCB, I am now pleased to say that the issue looks to be entirely solved. I got the redesigned boards back from OSHPark this week and made one up. With the V2.1 board I can put the OSD board right next to the PS antenna and it has no effect on it.
Next step is to get it all wired up and try it out in a plane. With that done and assuming all is well, I will publish the new PCB on OSHPark..
Anyway the good thing is I have learnt a lot about PCB design!
regards
Andy
What are the external components that would have to be mounted separately?
Thanks a lot,
Colin
Take a look at the schematic for the video circuit
I think that sums up that module
Another option is to open the project file in KiCad, and it will also show the connections between the modules, the processor etec.
Also look at my Bill of materials
The original prototypes were done as a "shield " for a STM32F4 Discovery board (The one with the STM32F407 at 168MHz) . See the end of post for some pics of the prototype boards
In the Makefile there are options to make for the earlier boards.
If you make for board_type4_disco, you will get something very similar to the final board that will work with STM32F4 Discovery, but you will need to make some mods. From memory you need to remove a capacitor which works as a reservoir for USB. ( If you really want to do this I will try to look out the required mods, though I believe that is the main one)
Versions before 4 (1 survives!) used different timers and peripherals and components. Originally I avoided peripherals that already had stuff attached on the Discovery board, however in order to get the best choice of peripherals, when I moved to a custom board, I moved a lot of things around, used different timers etc. In the resources.hpp header, you can see what is attached to what in which version. N.B that for board_type4 I ignore whats in that header and actually include another one . Its a mess but dont want to clean it up till I have got a few more boards done! just in case I need the old boards
Another useful option would be to try a STM32F4 Nucleo but the STM32F4 versions are slightly less capable processors which runs at 84/100 MHz. They should be fast enough but would need to do some work on timings as somethings are hard wired at the moment. (In fact that should be on the TODO list to make all timings functions of processor clock speed). However I would love to make a version of the OSD as an mbed project.
As far as hardware goes, most of the IC's are smd and I mounted them on breakout boards to make them into DIL components. I got away with it, but the datasheets warn about not using discrete wiring due to stary inductance capacitance etc. I got breakout boards on ebay. (See the pics at the end for examples on the prototype boards)
All in all though, by the time you have done a hardwired board, then I am sure it would be easier and faster just to buy and populate the finished board. As you can see, my originals were a mess! and time consuming to hookup. It was a relief to do the finished board! I could probably provide a kit of parts incuding pcb for $45 + postage ( which is around what it costs me in small quantities... would just be nice to get another board up and running). If you are interested in that, let me know.
regards
Andy
Thanks Andy. That'll keep me out of trouble for a while :-)
C.