Is there a way to get SmartAudio working?

Eventually I think that would be the end goal to “compete” with betaflight and inav. Short term just having the full smartaudio feature set implemented into the main code branch is a big step forward. What work needs to be done for your library to be mature enough for this?

Multiple OSD screens do exist and can be switched via RC channels, but I believe you are right that there are no “menus” as of yet.

1 Like

My lib missing one minor things - after command sent to VTX - lib does not hear for the answer. So it is unknown if the command was accepted by VTX or not. I never had issues of lost commands so I never implemented the VTX response handling. Anyway this is not something very complex and I will play with that on weekends.

1 Like

Any progress with this?

Maybe not with SmartAudio but the Onboard OSD menu functionality in Mission planner is great.

Oh is that new? Not tried that yet.

Relatively new. If you have an FC with Onboard OSD it’s great. This is from a Omnibus F4 Nano V6. Drag and drop metrics and screen positioning!!

2 Likes

I see. It is the OSD configurator. Yes - I have used that and it is fantastic.

Today later or tomorrow I will pull a PR with the initial SmartAudio implementation. To get a feedback from core dev team before going forward.

1 Like

it is great news. my most interest about this is actually to control vtx power and channel settings, that would be an extremely nice to have.
btw, does the runcam split camera also talk via smart audio protocol, for camera control to start/stop recording and settings?

1 Like

No, runcam has its own protocol (a few commands). But the most problem it uses different UART speed. Anyway, controlling both via single UART is possible.

is runcam doing half or full duplex? would be nice to have it married somehow with a generic camera control arducopter feature - i tried to look at it, but could not trace how one hooks with an another - i mean the camera trigger feature on the RCx with a protocol type on the serial. if you have figured it out - it would be a useful thing to have, to be able to start/stop runcam at least.

anyway, pls confirm when/if the smart audio will make it into the master. it would be really nice to have as well.

I din’t recall runcam interface details, I just sending a command and it works. I’m not reading an answer afterwards. So I have only the TX wire connected from FC to camera.

PR is on the review now, AP_SmartAudio: initial implementation by SergeyBokhantsev · Pull Request #11630 · ArduPilot/ardupilot · GitHub

BTW, for the practical purposes I have a 3.6.9 FW with a SmartAudio + Runcam control on the single UART port. You can compile and use it.
OR, for the testing purpose - you can compile my SmartAudio branch that is in PR.

Would love to see this as well. My main reason is as VTX get more powerful it’s nice to have them power up in pit mode and then go full power on arm.

1 Like

I am also ready to donate $ 20! Please place the developer’s wallet, and we will start transferring money for motivation.

1 Like

Hello @sergbokh
Do you have SmartAudio protocol code extracted for Arduino.
Or a library for that.
I plan to connect simple arduino Nano to arducopter via passthrough PWM and control the vtx with the Nano borad.
(Or the new Arducpter 4.0 onboard scripting)

If you want just to control VTX power basing on incoming PWM - you don’t really need a SmartAudio library for that. Just open serial port at 9600 and send a corresponding set_power command - this is just a few bytes.

Also I saw a PR that allows ArduPilot scripting to access serial ports. So you event don’t need a arduino board. You can handle PWM channel within your script and send set_power SmartAudio command to a serial port.

I would most certainly chuck at least $20 into the pot if it will help towards getting smartaudio implemented - even if it’s only able to control power levels, i think that is the most important feature of smartaudio. Such a shame it’s not implemented seeing that so many vtx units support it now.

I am trying to use realterm and or serial port monitor to send commands to my eachine vtx 1200 this uses the tramp protocol. What I want to do is just send power commands to the vtx. I am using the software mentioned and a ftdi board with the tx wire to the smart port. I have the software set up as 4800 baud, parity none, data bits 8 and stop bits 2. I can’t find any real information on the protocol. I have looked at your work and tried to send some hex but no luck. can you lead me in the right direction on this project.

Could you be more specific the commands needed to send to the vtx. I am using eachine 1200 I sure it uses the tramp protocol. Is it as easy as sending text set_power = ??? Or do I need to send it in Hex? I really can’t find information about these protocols.