Tuesday, December 05, 2023

Oversky MUL A OSD firmware update

BEWARE! execute at own RISK, this is a DIY project, no warranty. :)

The OSD (on screen display) firmware update on the Oversky MUL A board is the second mandatory update you need to do. If you update the FC firmware you need to update the OSD firmware because both firmwares need to be compatible with eachother.

The FC is shipped with MWOSD version 1.5. This OSD firmware is really outdated, software to configure this OSD firmware is not available for download on the internet. And if you can still find it somewhere it does not run on your WIN10/11.
Beware, updating the OSD firmware is difficult. You need to have some good soldering skills. The problem is that the OSD on the FC can not be upgraded via the USB connection by default. The OSD chip that was chipped and installed on the FC does not have a bootloader. To make the OSD firmware upgradable via USB we need to burn a bootloader to the OSD chip. For this you need ATMEL compatible ISP programmer. A popular and cheap ISP programmer is the Usbasp device. You can buy the usbasp device for several bucks online.



step one: download and install the Arduino Software.
The OSD on the FC is build on a ATMEL atmega 328p chip. With the Arduino IDE software these chips can be programmed with custom applications and you can also burn a bootloader to the chip. I used Arduino verion 1.8.19 for this project. This works fine. Download ARduino IDE here After the Arduino software is installed launch the arduino application. You can now connect you usbasp device to the computer. In the Arduino menu select TOOLS->PROGRAMMER->USBASP. We also need to set the chip type/model that is used on the FC. In the Arduino menu select TOOLS->BOARD->ARDUINO NANO. (this is the Atmega328p chip)



step two: solder the ISP wires to the FC board
The FC board does not have ISP headers that you can use to connect to the USBASP programmer. But we have some luck. the ISP pins on the OSD chip are traced to some small testpin pads. We can use this pads to solder small wires for the USBASP connection. The OSD chip is located next to the heatsink on the FC board. This is the region where we need to solder the wires. We need to Solder 6 wires. 5V (red), GND (black), RESET (yellow), MISO/MOSI/SCK. The pads are very small and if you do not have specialised soldering tools like me, it is very difficult to make this work. But as you can see for me it worked out well. Up to date I have allready updraged the OSD FW on 3 different FC boards.
When you have soldered the 6 wires to the FC board you can connect it to the USBASP programmer. FIRST UNPLUG the USBASP from your computers USB port!!! Check the images bellow on how to connect the ISP wires to the USBASP pins.
Recheck that all wires are connected correctly. If the wires are not connected correctly you can damange the entiry FC board! So check, recheck, check again.



step tree:Burn the bootloader to the OSD chip
If the wires are connected corretly to your USBASP programmer you can connect the USBASP to the USB port on your computer. Now the FC is powered on and some leds might start flashing. Go to the Arduino software. Make sure that USBASP programmer is still selected. Now press the "burn bootloader" via the Arduino menu. Burning the bootloader to the OSD chip will take less than 1 SEC. If it takes longer or if you get any error messages during this process you will need to recheck your wires. Connected correctly? Soldered correctly?

If the bootloader was burned succesfully you can disconect the USBASP from your computer. You can also remove all the ISP wires and soldering from the FC board. As from now the OSD firmware can be updated via the usb port on the FC.



step four:Flash the new OSD firmware
As from now the OSD firmware can be upgraded like the FC firmware via the usb port on the flight controller. Make sure that the usb switch on the FC board is set to OSD. Multiple OSD firmwares exist and are available on the internet. the MWOSD is very popular, because it is updated frequently and has a lot of features. The MWOSD firmware is free. But the MWOSD application is not free. So if you want to flash the OSD chip with the MWOSD application you first need to buy this application. But because the MWOSD firmware is free and free to download, we can upgrade the OSD chip without the MWOSD application.
you can download the MWOSD GUI application here
you can download the MWOSD firmware source code here
Because we used Cleanflight version 2.2 we need a MWOSD version that is compatible. Download MWOSD firmware v2.0 When you have downloaded the MWOSD v2.0 firmware source code you can open this with the Arduino application. All settings that you can set via de MWOSD GUI application can also be set or hardcoded via the firmware. But you need to know what you are doing.
There are at least 2 mandatory settings to change at the config tab:
- define MINIMOSD
- define CLEANFLIGHT
Click the "verify" button in Arduino. If you have no errors you can connect the flightcontroller via the USB connector to your computer. Via the Arduino menu select the correct COM port. Click the "upload" button in Arduino. The MWOSD is now flashed/uploaded to the OSD chip. Reboot the FC and you are ready to go.

No comments:

Post a Comment