OpenLRS - thUndead's MODs :D

Started by thundead, November 15, 2011, 02:17:53 AM

Previous topic - Next topic

thundead

Thank you very much for the Beer :) will be used wisely for the upcoming firmware :D

I'm currently working on improving recovery times.

Let me know how the flashing went :D

Mihai.

Quote from: papa_lazerous on November 19, 2011, 01:23:25 PM
Hmm I kinda thought that was the case, serial ppm isnt an option. So I'm limited to 8 channels right now.

I am going to use 1 switch to control my OSD (apparently possible using a 3pos switch) and have pan control only on my cam and use another pot on my tgy9x for the gain on my guardian.  Once I have everything set up and i have proved that the guardian works well and my RTH function works well I will take the gain channel and use it for tilt.  So I will swap everything about, kinda long winded way of doing my setup but it should work.  I have been reading up on adding a head tracker to my radio so with the OpenLRS and your firmware things should be pretty slick.

I have just tested that the OpenLRS all works out of the box with the standard FW on it (ok its on the wrong frequency but I doubt it will matter for 5 minutes in my house lol) just about to flash with 459Mhz FW wish me luck

PS I added to your beer fund as a thanks, as you sent me enough information on youtube replies and are doing allot here. Dont drink it all at once or your head will hurt

John
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

SouthPawPaul

Now that's odd as I get an RSSI voltage on Servo pin 9 with my v2 hardware unless of course servo pin 9 is actually channel 7?

thundead

hmmm try this:
in the config.h section go to
#if (RX_BOARD_TYPE==2)

and change #define RSSI_OUT 10 //Servo7 or RSSI to

#define RSSI_OUT 12 //Servo9 or RSSI

Mihai :)
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

Devonian

#49
I flashed my v1 boards with the RSSI firmware and made a short video of the output (pin 9 on v1 Rx)
I use these RSSI signal strength meter on some of my VTx's:
http://www.dpcav.com/xcart/product.php?productid=16562&cat=0&page=1

You can see the signal strength percentage at the bottom right of the video...


OpenLRS_RSSI_459MHz


I notice no beeps for lost signal packets at the Tx end now - should it be like that Mihai?
Would be nice to retain that I think.
Haven't looked through the code, I simply uploaded your f/w and made the quick test.
I got to about 25 metres and several brick walls in the way in micro power mode - pretty good I think.

Nigel.
You're only jealous 'cos the voices aren't talking to you  :D

thundead

Thanks for the quick test Nigel :)

Nope, its not beeping because the FW is uni-directional so no telemetry.

I'm still improving the FHSS feature so telemetry mode is not a priority yet.

Anyway, everyone uses RSSI on their OSDs and RSSI goes to 0 whenerver a packet is lost or if FS initializes :)

If you feel that RSSi voltage is still jumpy, just play with the RSSI settings a bit :) My RSSI_SMOOTH is 100 now and really happy with it :)

Mihai.
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

yup, ch 7 is definitely the RSSI out for the v2 board apparently. I'll have a quick look again over the code and maybe I can spot something lol.

Re-change the code to the original until I figure out what's the prob.

Cheers,
Mihai
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

Right, try this

as before , in the board 2 section
paste this over:

#define RSSI_OUT 12 //Servo9 or RSSI
     
      #define Servo1_OUT_HIGH PORTD |= _BV(3) //Servo1
      #define Servo2_OUT_HIGH PORTD |= _BV(5) //Servo2
      #define Servo3_OUT_HIGH PORTD |= _BV(6) //Servo3
      #define Servo4_OUT_HIGH PORTD |= _BV(7) //Servo4
      #define Servo5_OUT_HIGH PORTB |= _BV(0) //Servo5
      #define Servo6_OUT_HIGH PORTB |= _BV(1) //Servo6
      #define Servo7_OUT_HIGH PORTB |= _BV(2) //Servo7
      #define Servo8_OUT_HIGH PORTB |= _BV(3) //Servo8
      #define Servo9_OUT_HIGH PORTB = PORTB  //Servo9 /RSSI

let me know if that did it :)
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

Hmmm that is strange.....

I'm looking into the issue now.
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

SouthPawPaul

I am properly confused.

Your v1 RSSI video shows your RSSI up @ around 2.6v and then drops when you put it in your makeshift Farady cage :)

The v2 boards seem to show a 3.29v RSSI voltage. (confusion #1).

When I read up about analogWrite it tells me that calling this function with a pin number and a value in the range of 0-255 will output a PWM signal on the specified pin.

A PWM signal is a square wave, and the duty cycle of this square wave is altered depending on the value passeed to analogueWrite(Pin#, 0-255); according to the docs.

How are you measuring a voltage drop on a PWM signal with a DMM? As far as I can tell, the voltage should remain constant and the frequency of the pwm signal changes? (confusion #2)

This is hurting my head.  :shrug:

thundead

Yup, I'm getting over 3v in the last FW as well.

THe max output from the arduino is 3.3v and I limited the pwm to 250.

It's not a voltage drop that's the thing. What pwm does is it switches 3.3v on and off very fast.
What the multi-meter sees is a voltage depending on how the PWM duty cycle is.

Same principle applies for motor speed control. You PWM the motor's VCC and motor sees a specific voltage according to the duty cycle.

Hope that sorted things out :)

Quote from: SouthPawPaul on November 19, 2011, 06:24:26 PM
I am properly confused.

Your v1 RSSI video shows your RSSI up @ around 2.6v and then drops when you put it in your makeshift Farady cage :)

The v2 boards seem to show a 3.29v RSSI voltage. (confusion #1).

When I read up about analogWrite it tells me that calling this function with a pin number and a value in the range of 0-255 will output a PWM signal on the specified pin.

A PWM signal is a square wave, and the duty cycle of this square wave is altered depending on the value passeed to analogueWrite(Pin#, 0-255); according to the docs.

How are you measuring a voltage drop on a PWM signal with a DMM? As far as I can tell, the voltage should remain constant and the frequency of the pwm signal changes? (confusion #2)

This is hurting my head.  :shrug:
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

Ok please try this :
in config.h

#define Servo9_OUT 11 //Servo9

#define RSSI_OUT 12 //Servo9 or RSSI

Hope it was that easy :))
Lemme know if it worked.

Mihai.




Quote from: papa_lazerous on November 19, 2011, 05:27:48 PM
getting 0.000v on channel 9 now :(

EDIT

Seems I can put the RSSI only channel 8 easy enough

#define RSSI_OUT 12 //Servo9 or RSSI


changing the 12 to 11 meaning...

#define RSSI_OUT 11 //Servo8 or RSSI


It is strange I can move it around from where it was on channel 7 to channel 8 but not 9
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

thundead

melih's coding is a bit weird. For example, the fw sends 8 channel servo data so in theory channel 9 shouldn't do anything anyway.

Could you please test the FS and maybe do a quick range test in micro mode ?

Cheers,
Mihai.

Quote from: papa_lazerous on November 19, 2011, 06:57:29 PM
Ive tried what you suggested, its a no go.  I posted over at Flytron also about the issue of it being on Channel 7 not 9 and that I cant change it.  I think Melih may have goofed with the coding
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.

Devonian

Mihai,

Would it be possible to simply copy/paste your various bit of code into the fully working OLRS_V_1_10 firmware?

If so, I may just have a go at that over the weekend...(wish I could program properly!!).

Nigel.
You're only jealous 'cos the voices aren't talking to you  :D

thundead

FS aka Fail Safe :) with everything on , hook up a servor or something and hold it in some position. Hold the TX button pressed until it beeps :) , turn tx off and see if the servo goes to where you put it :)

Quote from: papa_lazerous on November 19, 2011, 07:37:09 PM
Test the FS?
If you like my work feel free to contribuite to my Pringles & Red Bull Fund :) http://forum.flytron.