Welcome to Multi-Rotor UK. Please login or sign up.

Monday,August 26, 2019, 04:34:17

Login with username, password and session length


24 Aug 2019 19:21:05
23 Aug 2019 19:26:42
I agree it does look a lot better for some reasom SMF shorten any recent posts display  :rolleyes:
23 Aug 2019 10:29:15
Nice! Looks loads better.  :beer2:
22 Aug 2019 22:47:32
Sorted mate  ~~
22 Aug 2019 10:27:36
Sure. But basically, all the subjects are getting cut off.
21 Aug 2019 18:14:54
Can you pm me a screen shot of what you mean
21 Aug 2019 12:15:41
Gaza - can you make the subject line section in the forum topic list wider? It's cutting off the subject field really short.
19 Aug 2019 09:14:20
Good for you!  ~~
18 Aug 2019 19:13:57
Had another negative encounter, it's been a few years since the last one, just an uneducated ******, going on about drones being illegal yada yada yada.    :-/
Still that didn't spoil my flying time, had an absolute blast  ~~
07 Aug 2019 19:52:01
ooooh mrs jones  :D
  • Total Members: 8066
  • Latest: badger1
  • Total Posts: 196588
  • Total Topics: 19805
  • Online Today: 60
  • Online Ever: 530
  • (Tuesday,June 26, 2012, 08:34:46 )
Users Online
Users: 2
Guests: 69
Total: 71

Theme Changer

3d - Printworx

Printing 3d Forum

Make your own Digital to Analogue converter

Started by teslahed, Wednesday,August 28, 2013, 22:44:11

Previous topic - Next topic


Wednesday,August 28, 2013, 22:44:11 Last Edit: Thursday,August 29, 2013, 15:59:29 by teslahed
You need a digital to analogue converter to turn a digital signal into an analogue signal.

Why would you want to do this? Many receivers (like the openLRSng system) can output a Received Signal Strength Indicator (RSSI) which is a value that shows the reception signal quality your multirotor is seeing. This is useful when flying FPV as it allows you take note when reception is getting poor and turn around and come home before it gets too bad to fly. RSSI is often output as a PWM digital signal but many On Screen Displays (OSDs) and some flight controllers can only take this signal in as an analogue input. I will be inputting this signal to a free analogue input pin on the crius all in one pro flight controller i currently use.

I copied this diagram;

The 10uF capacitor value i used above is 100 x too high . I am trying again with a 0.1uF (0.1uF = 100nF) capacitor as suggested in the most recent readme file;


RSSI output at ';first'; port (marked as RSSI on OrangeRX / ch1 on Flytron) 32kHz PWM signal. To make this analog you can use a simple RC filter (R=10kOhm C=100nF). Ports 2-9 are parallel PWM outputs for channels 1-8 (50Hz).

keeping all the components as small and inline as possible to keep the end result compact and light. I don';t want to add too much weight to the fpx hexacopter if i can avoid it. I haven';t outputed the ground on both sides as i am running my system from 1 lipo so all the grounds are shared / common. I don';t think i run any risk of forming a ';ground loop'; doing things this way but i may have missed something...

Total weight - 5.8 grams. And i will probably be chopping a good half a gram of red wire off the thing before i use it :smiley:

More details coming tomorrow after test flying.

Components used;

1 x Standard 10k Resistor (avaiable from all good electronics stores).


1 x 0.10uF Electrolytic Capacitor (same as above).


Misc lengths and sizes of transparent heatshrink (or coloured stuff if you aren';t posing for the cameras like mine was above).

1 x Old servo wire cut to length (taken off a broken servo).

1 x torroid inductor (taken from an old broken ESC).

1 x length of awg 20 wire.

One circlip short of a quadcopter.
 1 lobe short of an antenna.


Thursday,August 29, 2013, 04:28:45 #1 Last Edit: Thursday,August 29, 2013, 04:35:38 by teslahed
This circuit also functions as a low pass filter;


And similar circuits are used along with inductors to filter out high frequency interference from video signals to improve range and reception.


This video explains why a low pass filter also works as a digital to analogue converter. I';ve linked to the relevent section but the whole thing is worth a watch.
One circlip short of a quadcopter.
 1 lobe short of an antenna.


Just did a quick test of the RSSI on the hex indoors.

With the hex powered up and everything on (but disarmed) i get 74dBc stood directly besides the hexacopter.

With the hex powered up and me 2 floors down, directly underneeth the hex and the aerial pointing straight up to put the hexacopter in the dead zone - i get 65dBc.

The values were updating roughly once per second or second and a half.

Does this sound sensible to people that have used RSSI before?
One circlip short of a quadcopter.
 1 lobe short of an antenna.


I have used a digital to analogue converter with these values;

Quote(R=10kOhm C=100nF)


I have the output from the digital to analogue running into analogue pin 3 and enabled the parts in the multiwii config;

  /****                             RSSI                           ****/
    #define RX_RSSI
    #define RX_RSSI_PIN A3

I have used Multiwiii EZ-GUI on my phone via bluetooth to check the values i';m getting. It shows;

TxRSSI = 74dBc when everything is turned on and working and i have the radio in the same room as the hexacopter.

TxRSSI = 60dBc (or there abouts) when i walk down 2 flights of stairs and put some concrete in between myself and the hex (bluetooth was still connected:))

TxRSSI = 0dBc when i turn the radio off.

So this looks about right?

Hooking up my video system I see 0% when i turn the hex on before i turn my radio on, which then slowly starts climbing to 100% - which seems odd.

If i turn my radio on in the same room as the hex it stops climbing (or climbs faster if i';m quick) then stabalises at 65%

If i walk down two flights of stairs it drops down to 20% on the video display and  74dBc to 60dBc on the phone display as before.

It looks like i have something wrong with the scaling?

The one part of this process i do not understand very well is;

Can anyone offer any suggestions on improving my results? Thanks:)
One circlip short of a quadcopter.
 1 lobe short of an antenna.



did you consider using a forward biased diode (eg 1N4148) instead of your resistor ?
this would have the advantage of a smoother dc output since it will stop the backwards flow of current when the Rx output is 0
would also mean you could use a much smaller capacitor <10uF

the diode will reduce the Rx output by a fixed voltage - typically 0.5v


I didn';t consider that - i just used the basic circuit as outlined in the OpenLRSng readme file. I may try your suggestion next if you think it';s better though.

First test flight. My RSSI signal barely dips below 100% and when it does occasionally it looks more like a glitch than anything else. Maybe i need to fly further away?

I tested the RSSI indicator indoors using a resistive load on my transmitter instead of a proper aerial. I was getting a nice smooth reduction in RSSI signal strength from 100% down to 20% when walking from the top floor of my house to the bottom so perhaps i just haven';t flown far enough yet?
One circlip short of a quadcopter.
 1 lobe short of an antenna.


actually, come to think of it, I';m not sure a diode is a better option !

the RSSI output is I assume a PWM output, so using a diode will ignore the PWM hi/lo duty cycle always giving a constant voltage - so not what you';re wanting....

I havn';t checked RSSI levels much, what do you get if you turn your Tx off - removing props beforehand  ;)


It goes down to zero (or actually 3% sometimes for some reason) as soon as i turn the transmitter off.
One circlip short of a quadcopter.
 1 lobe short of an antenna.