I know how to change panels from flight mode in the "change panel" drop down in the minim config software.
But I tried selecting chnl 7 from my tx to change panels and minim osd isn't acknowledging it. How does minim know what the channel values are? There is no servo plug into it. I assume it must be in the form of a mavlink command.
What to be done to get this to work?
Did you use the minimosd config tool to change the OSD Toggle Channel which lives on the first panel of the tool to CH7 ?
You will need an FTDI cable, which plugs into a USB port on your computer and then unplug the end of the minimosd with all the cables and plug the other end of the FTDi into the minimosd.
Once you do that you will be able to do stuff like update the firmware or options on the MINIMOSD. The APM is not able to update firmware or settings of the Minimosd. It only sends mavlink messages which are basically this = that etc.
The APM doesnt know anything about the Minimosd in any form. It only knows how to send mavlink packs. Anything can read them. Minimosd spies and updates a display, the radio relays it to another, Jdrones has another board which can be used to do lots of other things like control leds and a lot more that i cant recall as i dont have one.
yes, I did all that. I configured 2 panels, one with typical osd stuff and one for waypoint data. Then saved via the ftdi. I also checked that chnl7 was outputting a signal in the data screen in MP.
Did you upgrade the fiormware on the Minimosd ? I dont think minimosd has had this option for all that long and you could very well be using an old version.
I am using that also. How does minim osd "see" the channel pwm? is it passed as a mavlink heartbeat? As mentioned earlier, It must be. There is no phyical servo channel input.
Then how do you set up your pixhawk parms. And you do you test / troubleshoot it? I tried the servo tab on the lower part of the flight data screen. Tried all the channels with varying pwms for high and low. No luck. I looked at live data and chnl 7 out was sending 3 different pwm values based on my dx8 switch assigned to channel 7.
I will post some screen shots. I think it is pixhawk parm setup issue not passing heartbeats. I haven't seen any video with a pixhawk and minim osd with a channel switching. I have seen vids on changing panels based on flight modes, but I don't want that.
I currently am having an issue with osd not seeing some heartbeats, so I have some issues to resolve first which might be related. For example, I am not getting any Long and lat data, but am getting battery volts and flight mode. My gps unit was getting bad health going from 0 to 6 sats and back to 0 constantly. We had bad weather today, so hopefully tomorrow I can resolve some of these issues.
Is it true that you have to power the minim osd up later than the pixhawk.
If someone could post some screen shots, that would be great.
This is old as hell but, nobody ever answered it. I understand what you're asking and I'm trying to figure out exactly the same thing. I used ch5, configured ch5 on my Tx, see it in moving in Mission Planner, and set ch5 on my OSD, how it goes from the APM to the OSD I have no idea.
Read this but still does not answer how to diagnose this issue.
Did you manage to get your OSD switching properly? I am also having trouble getting my Minim OSD to switch. It switches fine via Ch. 7 on my TX but won't switch or toggle via the Servo (Ch.7) screen on Mission Planner. Do you have any suggestions for me?
Good timing, I JUST had a full feature maiden flight 2 days ago. I broke one of my 3 position switches, so I moved half of the flight modes to another switch, accidentally shared with my OSD switch... and incidentally I saw the OSD change when I changed flight modes, so it indeed worked.
One thing is the feature where minimOSD will revert to screen 1 if there are any failsafes, I think that is a setting in the minimosdxtra software. When I posted this, I think that was preventing the switch because I had the plane disarmed and probably some of the other conditions to allow switching weren't met. Oh yeah, I am using minimosd-extra firmware. here's some good info: http://www.rcgroups.com/forums/showthread.php?t=1817533.
Hi Peter ,
Thanks for your reply. Yes indeed the Failsafe function is what I am having to resort to when flying beyond RC TX range. It is still not ideal as I would like to be able to switch between panels via Mavlink. Some issue between Mavlink and switching of the Telemetry port possibly but not sure yet. By the way, I am also using Minim OSD-Extra.
You sound like you have the multi switch setup to select flight modes. I tried this but found it a bit confusing and thought if I had to hit RTL in a hurry then it might be a problem remembering the switching order. I have reverted to just one three position switch with Manual, FBWA and RTL and select others via Mavlink if needed.
In the minimOSD-Extra software, try unchecking the box that returns to screen 1 on error. I used ch5, if helps.
I did do a multi switch setup. I have a 6 position rotary switch, but haven't installed it yet. The way I have it set is a 2-position switch does off=manual on=autopilot modes enabling the other 2 3-position switches, those are mixed to get 4 flight modes and if EITHER or BOTH 3-position switch are switched all the way down I get RTL mode.
I'm a newbie, but I need the same feature, so I made a little inspection on this topic.
No tests yet, only googling arond...
It seems like that YES, there are mavlink messages for RC input:
And according to this article, you have to REQUEST the RC (stick/switch) data from the device (particularly ANY data other than heartbeat):
I think the OSD does that (requests rc channel data - if configured) through it's TX line.
Unfortunately, I have to share the serial port on my Pixhawk with the telemetry radio to communicate with ground control, so I only y-cabled the RX line to OSD. So I'm stuck at this point... (The other serials are also used for other purposes...)
Haven't checked though. (Whether OSD sends anything over it's TX.) But I'm pretty sure it is not a passive "listener" device, otherwise there would be no TX pin on the panel at all to spare some space...
Maybe, if I send that "request rc input data" command through ground control, the OSD could "pick up" the reply messages and react to switches as required. Just a random thought...
I made some measurements today with my logical analyzer and yep, the OSD definitely requests a huge amount data from the autopilot through mavlink.
Right after the first heartbeat arrives on the OSD's Rx line (D1) from the autopilot, the OSD sends huge amount of bits on Tx (D0)... The first command is a request for data sream 01, followed by plenty other requests, which I haven't analyzed yet.
https://mavlink.io/en/messages/common.html#HEARTBEAT (also, see #REQUEST_DATA_STREAM)
Please note, that during mavlink communication, the logical payload data in the spec is REORDERED, bigger structures transmitted first! ( https://mavlink.io/en/guide/serialization.html#field_reordering )
https://github.com/mavlink/c_library_v1/blob/master/common/common.h - for message CRC salts (aka CRC_EXTRA)
https://crccalc.com/ - to check the CRC16. Please note, that the CRC-16/MCRF4XX variant is the one that mavlink implementations use - check available python/C sources on the net. (This is Linux's native implementation btw...)
Funny, but message #65 right above #66 in the spec is the "RC_CHANNELS"... :D
Also, during googling I found out, that if a telemetry capable RC receiver is connected to mavlink, it can send channel value status reports... I'm plannig to check this, and also I want to analyze all the messages the OSD sends to autopilot... The latter will be problematic, because my cheap LA is not able to store enough samples. :(