EthOS Tips and Tricks

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Nathan
    replied
    The microphone on the transmitter is designed for outputting sound files from the transmitter. I have no idea if there is a way to get audio through the telemetry signal. You'll need to call FrSky to figure that out. But I am very doubtful.

    I hope you can get it working though!

    Nathan

    Leave a comment:


  • NicholasRadzykewycz
    replied
    [QUOTE=He Who Shall Not Be Named;n189879]

    You want real-time passive sonar from your model submarine. No problem.

    Yes, I'm using a pair of Glady's hydrophones positioned at roughly 22 inches apart, so there will be enough lateral distance to get some better angle bearing with the increased speed of sound in water. Boat is being designed from the ground up for silent running, so special ESCs, Motors and Servos all ultra quiet as well as rubber cushion on every mounting bolt for further isolation.

    Already have a working 900 Mhz transmitter for audio which seems to work decently. It is however very bulky and takes up a significant amount of hull room. I was mostly just noticing the port on the FRSky for headphones and the fact it played audio made me wonder if EthOS could save me a bunch of trouble of an independent transmitter and allow for audio on a single antenna system.

    Boat will also be equipped with an active sonar as well in the form of a Deeper Pro castable fishfinder with a modified extended antenna. This will only work on the surface and at periscope depth

    Underwater navigation to be achieved with a compass module for the FRsky.

    I plan on running the sound eventually to an analyzer software on shore for more precise sound localization


    The purpose of this sub is for wargaming, but more importantly the sound function will help a lot with submerged navigation, since I can visually look at the boats on the water and figure out where I roughly am at by listening to the other boats. This also allows for using things like fountains or any other fixed underwater noise source as a nav beacon so that I can puzzle out my location if I lose track of my boat underwater without having to surface and reveal where I am at.
    Last edited by NicholasRadzykewycz; 08-28-2025, 08:21 PM.

    Leave a comment:


  • He Who Shall Not Be Named
    replied
    Originally posted by NicholasRadzykewycz
    Working on a project where I'd like to send audio from a pair of microphones thru the FRSky antenna and was wondering if anyone had done that before or how to set it up in EthOS. Might have to be a custom function to write but I could save an entire large and bulky second signal antenna in my sub and reduce interference if it is possible to send audio via the FRsky
    You want real-time passive sonar from your model submarine. No problem.

    I did that back in the day with a little FM transmitter mounted within the forward bulkhead of my 1/96 SKIPJACK's WTC.

    Click image for larger version  Name:	PICT0010.jpg Views:	0 Size:	59.7 KB ID:	189880 Click image for larger version  Name:	PICT0011.jpg Views:	0 Size:	60.9 KB ID:	189881 Click image for larger version  Name:	FF8_3709-X3[1].jpg Views:	0 Size:	57.6 KB ID:	189882

    Self noise was a problem, so I would sit on the bottom -- no aboard motor or servo noise getting in the way -- and listen. Only useful dope I got from the radio head-phones was kind-of-sound, amplitude, and doppler. No bearing or range, of course. But I could tell, without looking at the water, who was sniffing and how close they were.

    You talked about two microphones/hydrophones. You're looking for relative bearing, right? The brain is not quick enough to tell the time differential in water, so you'll need an H-type detector to present bearing to you through a display. However you'll make out the amplitude differential by feeding one channel into one ear, and the second channel into the other -- that should be enough for you to skull out a rough relative bearing in real time.

    My little effort was accomplished in the late 80's. With that gear no one snuck up on me!

    David
    High School Dropout
    Last edited by He Who Shall Not Be Named; 08-28-2025, 10:50 AM.

    Leave a comment:


  • NicholasRadzykewycz
    replied
    Working on a project where I'd like to send audio from a pair of microphones thru the FRSky antenna and was wondering if anyone had done that before or how to set it up in EthOS. Might have to be a custom function to write but I could save an entire large and bulky second signal antenna in my sub and reduce interference if it is possible to send audio via the FRsky

    Leave a comment:


  • biggsgolf
    replied
    Nathan, this is much appreciated!

    Leave a comment:


  • Nathan
    replied
    Mixing Planes with Rudder to Reduce Pitch/Roll (For roll you must have the ability to control each side of the dive planes independently. The differences needed for pitch-only are included as well, towards the bottom.)

    This one is a little more complicated and I don't have a boat that I can fully test this on. The exact weights and directions will have to be left up to you. I'll highlight areas where those changes can be made, but the specifics will be up to your individual boat and preferences. I suggest you make sure your output limits are set to prevent any damage from over travel and use the full values in my pictures. This will show you an exaggerated version of the changes. That will help you set up the directions of the inputs and otherwise make the secret sauce less secret.

    Okay, here we go:

    Set up a curve to use for mixing in the throttle. This curve is set up to only start working when the boat is moving forward. If you don't have reverse, or want the throttle's impact to start at a higher throttle then modify this curve. Most likely you won't want it to go to 100% unless you have a really large and slow moving boat. There is nothing fancy in this curve otherwise so I am not showing the config page. Do note that the curve starts at 0, not -100 - this is because 0 should be no throttle and negative is reverse. Sorry, I am not going to document how to make this work while travelling backwards!

    Click image for larger version

Name:	Curve.png
Views:	83
Size:	8.7 KB
ID:	187455

    Set up a logic switch to only activate in more extreme rudder movements. I am thinking that tiny movements of the rudder will not cause significant rolling so this logical switch sets up where in the rudder stick travel to turn on the anti-rolling function. The value (x) percentage is setpoint. The absolute value function ensures it works on both sides of the rudder input.

    Click image for larger version

Name:	LS1.png
Views:	77
Size:	16.7 KB
ID:	187456

    Create an output for our throttle mixing. This output is what links the speed of the model to the amount of correction. The "control' of this amount is through the Curve. This is just a necessary intermediary because of the way EthOS works. Make SURE you use a channel that does not have anything plugged into it. EthOS doesn't care if you use a channel above the count on your receiver. This channel NEEDS to be greater than the number of channels on your receiver. I chose 5, but you could use 10 or even 64. Just use a channel that is not physically connected to your model. The mix we will create will make this channel function.

    Click image for larger version

Name:	Channel 5.png
Views:	76
Size:	15.4 KB
ID:	187457

    Add the Throttle Mix. This mix ties the throttle stick (or pot, or whatever you use) to our fake output (Channel 5 for me, maybe 10 or something for you - again, a channel you are not already using. Don't break your model)

    Click image for larger version

Name:	Throttle Mix 1.png
Views:	78
Size:	17.6 KB
ID:	187458
    Click image for larger version

Name:	Throttle Mix 2.png
Views:	76
Size:	69.4 KB
ID:	187459

    Make sure you apply the Curve and set the channel. The source is the same as you use for your throttle.

    And, finally, make the anti-roll mix. This is the mix that moves the planes according to the amount of rudder and throttle. it isn't complicated once you get this far. There is a trick in the Actions, though, you have to "long press" to get the ability to choose the channel.

    Click image for larger version

Name:	Anti Mix 1.png
Views:	75
Size:	17.9 KB
ID:	187460
    Here is the Action screen with a highlight for where to long press. When you do so, a screen will popup and offer a selection of "Use a source". Choose that and then select Channels and your Channel
    Click image for larger version

Name:	Use a source.png
Views:	75
Size:	4.2 KB
ID:	187461
    Okay, the rest of the mix:
    Click image for larger version

Name:	Anti Mix 2.png
Views:	74
Size:	70.0 KB
ID:	187462
    Note that I chose BOTH of the planes. Here is place where you might need to reverse one to get the direction of travel you need.


    For pitch-only control

    Use this curve instead:

    Click image for larger version

Name:	Curve Pitch.png
Views:	74
Size:	10.5 KB
ID:	187463

    And add it to the Throttle mix
    Click image for larger version

Name:	Anti Pitch Mix.png
Views:	74
Size:	16.6 KB
ID:	187464

    That was even easier that I thought it would be!



    From here you will just need to play around.

    I am planning on bringing my test rig to Subfest (2024 Redux) if you'd like to try it out in person.

    Nathan

    Leave a comment:


  • biggsgolf
    replied
    Originally posted by Nathan

    Biggsgolf, I haven't used stability control on a sub yet, others have and might chime in.

    Regarding roll control, assuming you have each plane on an independent servo, you can mix the roll into the rudder mix. And if you add in some throttle mixing.... Bob and I have discussed this sort of mix but I haven't been able to experiment. I'll spend some time on it this week and see if I can get something posted this weekend.

    Nathan
    Thanks Nathan!

    Leave a comment:


  • Nathan
    replied
    Originally posted by biggsgolf

    Nathan, great posts, have you come up with or seen how to use the Flsky XR18 pitch control? I also want to figure out how to program for the Planes to offset each other to stop sub listing in turns, any idea about that? Thanks Nathan
    Biggsgolf, I haven't used stability control on a sub yet, others have and might chime in.

    Regarding roll control, assuming you have each plane on an independent servo, you can mix the roll into the rudder mix. And if you add in some throttle mixing.... Bob and I have discussed this sort of mix but I haven't been able to experiment. I'll spend some time on it this week and see if I can get something posted this weekend.

    Nathan

    Leave a comment:


  • biggsgolf
    replied
    Originally posted by Nathan
    Setting Up Ballast Control Using the 6-Position Switch

    If anyone wants to use the 6 position switch as momentary switches to control your ballast with 3 different modes, this should get you started. In this example we are using the left most set of buttons to control three ballast actions:
    • Venting the tank (actuated by a switch driving power to a solenoid)
    • Normal blowing of the ballast (actuated by opening the valve for surface air and powering the air pump)
    • Emergency blow (actuated by powering the air pump only)
    NOTE: opening the vent and turning on the air pump use the same channel (a dual relay board driven by a single receiver channel)
    NOTE: this is a system that scavenges air from the dry compartment for emergency blow with a valve to allow surface air in for normal blow

    To start, set up a state table like this showing the states of the channels you need (this case has 2 channels, but yours may have 3. Even more could be possible by extending this example.)
    Switch Action Channel 1
    (surface air valve)
    Channel 2
    (Air Pump & Vent)
    Upper (FS1) Snorkel Blow -100 -100
    Middle (FS2) Emergency Blow 100 -100
    Lower (FS3) Vent 100 100
    This table will help you be sure you are setting the right values at the right time. Be sure to test each value to be sure (we had swapped the pump and vent and nearly burned up a solenoid because we were driving it when we thought we weren't!)

    Once you have your state table set up we need to configure the transmitter 6-position switch. This is a 2 step process.

    The first step is to tell the transmitter how to treat the switch
    In Edit Model set the "Function Switches" to "Momentary" - this makes each button an independent momentary switch (this transmitter is awesome!!)
    Click image for larger version Name:	Function Switch.png Views:	11 Size:	15.8 KB ID:	186880

    Now that we have 6 more switches we have to set up Variables to actually use them. For this set up we'll use 3 vars, one for each button.
    We are going to work our way from the bottom of our state table to the top because venting and emergency blowing is "easier" because they each impact only a single channel.
    Click image for larger version Name:	Var1.png Views:	11 Size:	12.1 KB ID:	186882
    The Range isn't critical in our setup, but be sure it includes the values you are setting. The Values section:
    • Sets the default value (-100)
    • We added the FS3 switch which sets the value to 0
    • (for THIS setup, we need a default value of -100, your model may be different)
    In operation, the value will be 0 until the switch is pressed. And it will be 100 as long as the switch is down.
    Now we'll repeat 2 more times.
    Click image for larger version Name:	Var2.png Views:	11 Size:	12.7 KB ID:	186881
    Click image for larger version Name:	Var3.png Views:	11 Size:	12.9 KB ID:	186883
    These variables now become the "switches" in our mixes

    Vent Mix - actuating the venting solenoid
    Click image for larger version Name:	Vent Mix 1.png Views:	11 Size:	18.5 KB ID:	186884
    Click image for larger version Name:	Vent Mix 2.png Views:	11 Size:	66.6 KB ID:	186885

    Pump Mix - actuating just the air pump
    Click image for larger version Name:	Emerg Mix 1.png Views:	11 Size:	18.0 KB ID:	186886
    Click image for larger version Name:	Emerg Mix 2.png Views:	11 Size:	69.5 KB ID:	186887

    And finally the slightly more complicated state, the Snorkel Blow both opens the valve and actuates the pump
    So this is actually 2 mixes actuated by the same switch. (okay, not ALL that complicated...)
    We start with opening the valve
    Click image for larger version Name:	Snorkel Mix A1.png Views:	11 Size:	18.6 KB ID:	186888
    Click image for larger version Name:	Snorkel Mix A2.png Views:	11 Size:	68.3 KB ID:	186889

    And then we turn on the pump
    Click image for larger version

Name:	Snorkel Mix B1.png
Views:	201
Size:	19.3 KB
ID:	186904
    Click image for larger version

Name:	Snorkel Mix B2.png
Views:	196
Size:	67.8 KB
ID:	186905

    And that does it.

    Of course your exact values, channels, and output reverses may differ, but the idea can be applied across many functions.

    Nathan
    Nathan, great posts, have you come up with or seen how to use the Flsky XR18 pitch control? I also want to figure out how to program for the Planes to offset each other to stop sub listing in turns, any idea about that? Thanks Nathan

    Leave a comment:


  • Nathan
    replied
    Setting Up Ballast Control Using the 6-Position Switch

    If anyone wants to use the 6 position switch as momentary switches to control your ballast with 3 different modes, this should get you started. In this example we are using the left most set of buttons to control three ballast actions:
    • Venting the tank (actuated by a switch driving power to a solenoid)
    • Normal blowing of the ballast (actuated by opening the valve for surface air and powering the air pump)
    • Emergency blow (actuated by powering the air pump only)
    NOTE: opening the vent and turning on the air pump use the same channel (a dual relay board driven by a single receiver channel)
    NOTE: this is a system that scavenges air from the dry compartment for emergency blow with a valve to allow surface air in for normal blow

    To start, set up a state table like this showing the states of the channels you need (this case has 2 channels, but yours may have 3. Even more could be possible by extending this example.)
    Switch Action Channel 1
    (surface air valve)
    Channel 2
    (Air Pump & Vent)
    Upper (FS1) Snorkel Blow -100 -100
    Middle (FS2) Emergency Blow 100 -100
    Lower (FS3) Vent 100 100
    This table will help you be sure you are setting the right values at the right time. Be sure to test each value to be sure (we had swapped the pump and vent and nearly burned up a solenoid because we were driving it when we thought we weren't!)

    Once you have your state table set up we need to configure the transmitter 6-position switch. This is a 2 step process.

    The first step is to tell the transmitter how to treat the switch
    In Edit Model set the "Function Switches" to "Momentary" - this makes each button an independent momentary switch (this transmitter is awesome!!)
    Click image for larger version  Name:	Function Switch.png Views:	11 Size:	15.8 KB ID:	186880

    Now that we have 6 more switches we have to set up Variables to actually use them. For this set up we'll use 3 vars, one for each button.
    We are going to work our way from the bottom of our state table to the top because venting and emergency blowing is "easier" because they each impact only a single channel.
    Click image for larger version  Name:	Var1.png Views:	11 Size:	12.1 KB ID:	186882
    The Range isn't critical in our setup, but be sure it includes the values you are setting. The Values section:
    • Sets the default value (-100)
    • We added the FS3 switch which sets the value to 0
    • (for THIS setup, we need a default value of -100, your model may be different)
    In operation, the value will be 0 until the switch is pressed. And it will be 100 as long as the switch is down.
    Now we'll repeat 2 more times.
    Click image for larger version  Name:	Var2.png Views:	11 Size:	12.7 KB ID:	186881
    Click image for larger version  Name:	Var3.png Views:	11 Size:	12.9 KB ID:	186883
    These variables now become the "switches" in our mixes

    Vent Mix - actuating the venting solenoid
    Click image for larger version  Name:	Vent Mix 1.png Views:	11 Size:	18.5 KB ID:	186884
    Click image for larger version  Name:	Vent Mix 2.png Views:	11 Size:	66.6 KB ID:	186885

    Pump Mix - actuating just the air pump
    Click image for larger version  Name:	Emerg Mix 1.png Views:	11 Size:	18.0 KB ID:	186886
    Click image for larger version  Name:	Emerg Mix 2.png Views:	11 Size:	69.5 KB ID:	186887

    And finally the slightly more complicated state, the Snorkel Blow both opens the valve and actuates the pump
    So this is actually 2 mixes actuated by the same switch. (okay, not ALL that complicated...)
    We start with opening the valve
    Click image for larger version  Name:	Snorkel Mix A1.png Views:	11 Size:	18.6 KB ID:	186888
    Click image for larger version  Name:	Snorkel Mix A2.png Views:	11 Size:	68.3 KB ID:	186889

    And then we turn on the pump
    Click image for larger version

Name:	Snorkel Mix B1.png
Views:	201
Size:	19.3 KB
ID:	186904
    Click image for larger version

Name:	Snorkel Mix B2.png
Views:	196
Size:	67.8 KB
ID:	186905

    And that does it.

    Of course your exact values, channels, and output reverses may differ, but the idea can be applied across many functions.

    Nathan
    Last edited by Nathan; 03-23-2025, 08:35 AM.

    Leave a comment:


  • Nathan
    replied
    Originally posted by neitosub

    Just wanted to get some clarifications on this feature, it appears that one of the screenshots is missing. Any chance you could repost it? Just wanted to know the logical switch settings in EthOS.
    ​​​​​
    Thanks!
    Sorry that picture didn't come through. I recreated it because I couldn't find the original.

    Someday I need to figure out why the forum won't email me when people make a reply...

    Nathan

    Leave a comment:


  • rwtdiver
    replied
    Originally posted by RCSubGuy

    Should be just the thing, Rob! You can either have it all on one stick or separate them into two. Completely up to you!
    I see your point, Bob! I am going to try that set up next. I can see where it might be a smoother operation having both on one stick...

    Thank you for your input..

    Rob
    "Firemen can stand the heat."

    Leave a comment:


  • neitosub
    replied
    OP doesn't seem to be active on this forum anymore, so here's the answer to my question earlier in case anyone is looking for how to set up the bow plane lock out:



    It's pretty much like the video above, the functions we are looking for are similar to the nose landing gear steering lockouts in RC airplanes.

    Leave a comment:


  • neitosub
    replied
    Originally posted by Nathan
    Bow Plane Retract Lockout

    IMPORTANT: before testing this be sure you have disconnected any linkages that could cause damage if anything goes wrong, or if any outputs need to be reversed.

    When you have retracting planes it is important to be sure of 2 things. One, that the planes will centered before they retract, and two, that they cannot be operated while retracted. If you have an EthOS radio you can set this up right in the radio. Here is how.

    There is one thing that it is important to note about EthOS in order for this to work - EthOS only tracks the "sweep" of a channel if there is a slow set in the mix. If you don't use a slow you will see the channel move direct to the endpoint (for example, 100% right to -100%) even though you see the servo is still moving. With the slow enabled, EthOS, and you, will see all the values (for example, 100% to 98% to 96%, etc.) This sweep is important because it keeps the logical switch in time with the retract servo. Though if there is a mechanical problem with the servo the radio won't know. A closed loop system will have to be left up to the Reader, sorry.

    Okay, here we go.

    Planes Enabled Logical Switch
    You first need to create a Logical Switch to identify when the planes are enabled. Note that the source is the retract servo channel. That is the "sweep" we need. The delay gives a second for the servo to finish deploying the planes before activating the planes. It should be a "just in case" but your physical configuration may require a longer delay before becoming active.

    Click image for larger version

Name:	LS1b.jpg
Views:	475
Size:	59.5 KB
ID:	181646

    You will use this logical switch in the planes mix.

    Planes Mix

    Note the active condition is the logical switch, meaning the planes can only move when the logical switch is on. When the active condition is false the channel is set to 0, which is centered position (works well for us!) Be sure you factor in the logical switch if you add extra mixes for the planes.

    Click image for larger version

Name:	Mix Planes_a.jpg
Views:	470
Size:	58.5 KB
ID:	181647Click image for larger version

Name:	Mix Planes_b.jpg
Views:	465
Size:	60.7 KB
ID:	181648

    Retract Mix

    Finally, you need the mix for the retract channel. This is where the slow goes.

    Click image for larger version

Name:	Mix Retract_a.jpg
Views:	470
Size:	66.7 KB
ID:	181649Click image for larger version

Name:	Mix Retract_b.jpg
Views:	465
Size:	70.2 KB
ID:	181650

    You will have to reverse the channels, maybe adjust the slow on the retract mix, or the delay on the planes mix, but this should get you on the right path.

    Nathan
    Just wanted to get some clarifications on this feature, it appears that one of the screenshots is missing. Any chance you could repost it? Just wanted to know the logical switch settings in EthOS.
    ​​​​​
    Thanks!

    Leave a comment:


  • trout
    replied
    This is a great thread. This will be a reference I will be visiting over and over.

    Leave a comment:

Working...