I'm working on a project where we are attempting to transmit a warning on 5.8GHz when a drone enters a restricted airspace, and figured there has to be an easy way to implement MinimOSD or similar. The current through it to just hook up a camera with the lens cap on, and overlay a warning message such as "WARNING - RESTRICTED AREA" that would flash momentarily.
I'd like to try and change the "no data" so that I don't need to fake some telemetry to get it to work, but am utterly lost as to where to find that or how to do it.
Thoughts.... Suggestions... Offers to make the change for a fee?
WOW, Thanks John!
That's actually all i wanted. I don't have my OSD with me right now, but i'll try it out first thing on monday morning. I can't thank you enough for doing this!
John R said:
Not sure if this will help, but I spent a few minutes screwing around with the code and made a version of the firmware that ONLY displays "WARNING - RESTRICTED AREA!" in the center of the screen. That's it, it does nothing else!
Here's the steps to get it on the MinimOSD:
1. Download everything from https://github.com/night-ghost/minimosd-extra/blob/master/osd_lates...
2. Launch the OSD_Config.exe program and select the appropriate COM port for your OSD - if you get a message about EEPROM, click OK
(3-6 are optional if you've already loaded the normal firmware and updated the CharSet. You cannot update the CharSet using my modified firmware)
3. Choose "Options" > "Update Firmware"
4. Pick one of the firmware files from the FW_+_Char folder and load the firmware
5. After you see the upload was successful, Choose "Options" > "Update CharSet..."
6. Pick the most recent CharSet file and upload the file
7. Choose "Options" > "Update Firmware"
8. Choose my custom HEX file and load the firmware
9. You should see "Firmware Written Successfully"
The only thing your OSD will do now is display "WARNING - RESTRICTED AREA!" on the main screen.
You can go back to the fully functioning firmware at any time.
It looks like the print command to display "No Input Data!" while the OSD is waiting for heartbeat packets is configured on line 1460 of the Panels.h file in the MinimOSD Arduino source code (I'm looking at the Pixhawk/APM version by NightGhost linked here: http://ardupilot.org/copter/docs/common-minim-osd-quick-installatio...).
I don't have access to my MinimOSD at the moment and this is the first time I'm looking at the code, so this is entirely a stab without the ability to debug.
osd_printi_1(PSTR("No input data! %u|"),seconds - lastMavSeconds);
OSD::setPanel(1,7); //starting character grid position (2, 8)
osd_printi_1(PSTR("WARNING - RESTRICTED AREA!"));
There's probably more required but I won't be able to test until I can flash to an actual chip.
you did not upset/offend at all. I just got tired of trying of fooling around trying to understand what you really try to do.
I just wish you tried in small scale, (on ground, with attenuated/sane transmission power) first, many 5.8Ghz channels actually overlap each other, and you will never succeed injecting video this way in a reliable fashion. At worst, this method may jam an inexperienced pilot or one whithout RTL - and cause injury/damage.
Anyway - making minimOSD output that text is no problem at all, it's open source, I did program on it a lot due to some payload use. get Minimosd-Extra source, and any freelancer will be able to make it do that.
Sorry if I offended you somehow Andre, that was certainly not my intent. I am not presuming that the test will work effectively, I'm just asking a simple question about how to change the overlay to display a message as a proof of concept. The FCC question was merely to address what most people would be immediately concerned with when we mention transmitting at normally illegal power levels.
Again, I'm sorry if I upset you somehow, it was never my intention to argue with you or disrespect you in any way.
your two recent posts are completely contradicting - i guess there is more BS around, like the FCC-ok :)
So you should ask "RF Nazis" how well this FCC approved test will work, because it would be an embarrassingly clueless application if it described the idea like here. (I will not comment more on this topic, have fun.)
Thanks John, that is exactly what we are attempting to do... When you say simple, can you explain where an how to do it? It is mostly a proof of concept. This xmit platform will most likely be flown on a vehicle following the target uav, transmitting on their video frequency monitoring is being done on the ground prior to launch) at 2+ Watts on a toggle switch, so the threat user sees it intermittently. If it doesn't entirely work, that is fine, as it is a proof of concept / demonstration.
Before you RF Nazis lose your minds, this is being done with full permission of the FCC on a government test range with all approvals already coordinated.
No, all we are trying to do is show the words "WARNING - RESTRICTED AIRSPACE" on our own video feed, through our MinimOSD unit, and down to our video receiver, as a static default message on the minimOSD when no data is received from the Pixhawk.
Alright, I think I've just had an "AH HA!" moment and figured out what you're trying to do.
Is the idea to setup a MinimOSD (with or without a camera, video feed doesn't matter) connected to a 5.8GHz Video TX that just outputs a black screen with the words "WARNING - RESTRICTED AREA" on the display? You absolutely can set this up, and pretty easily with some very minor modifications to the MinimOSD source code.
I like the concept, however, I don't think this in any way accomplishes the goal of notifying a pilot they've entered a restricted area:
- The receiver of the video feed is the pilot's goggles or screen, not the drone, so there's no way to only display this on the pilot's screen when the drone itself enters the area, it could work if the pilot is standing within the restricted area but....
- There's also no way to really accurately control the area the signal covers. You can play with different antenna types and power levels to try to "shape" the coverage area, but it's just a radio signal that will travel out infinitely until it's too small to be detected.
- You'd have to cover all the 5.8GHz frequency bands. Current analog video transmissions run on specific channels within the 5.8GHz band and the pilot's VTX and receiver are tuned to one of these frequencies. Your transmitter would either have to constantly jump from frequency to frequency so that a pilot on any of the channels would see it, or broadcast in such a way that it just blankets everything used for normal RC Analog Video. And in almost all cases they would just see static on their feed rather than a clear warning message. Not to mention this doesn't even begin to cover digital video transmissions like DJI's LightBridge.
And these are just a few of the many obstacles to this solution, assuming I've correctly understood what you're trying to do. If the goal is actually to inject characters into someone else's video stream, Andre K is absolutely correct, you would need some NSA-level funding to figure that one out!!!
I think the correct option, although I don't know the process, is to get your region of interest added to the No Fly Zone maps used by companies like DJI and 3DR (Mission Planner). The flight control software will automatically notify the pilot they've entered a restricted area and in some cases will prevent them from entering that airspace.
i understand that you are try to modify/inject OSD text/picture into someone else analog video link - correct ?