459MHz UHF legal Tx and Rx - Arduino based programability.

Started by Devonian, July 10, 2011, 02:54:30 PM

Previous topic - Next topic

Devonian

Carrying on from this thread http://www.fpvuk.org/forum/index.php?topic=2111.0
I thought it would be as well to create a thread specifically for UK use of the OpenLRS for 459MHz.
OpenLRS would be better called OpenUHF in my opinion as at 100 mW transmitted power, 'Long Range System' it is not!
It is open source, which means you can change anything you like in the software (firmware) unlike all others which are closed source and you cannot change any of the functionality.
459MHz is completely legal in the UK for airborne model control
http://www.ukrcc.org/459mhz.html

The Tx and Rx can be bought from here
http://flytron.com/16-openlrs
So for under 150 dollars delivered, it's not a bad deal for 1 Tx and 1 Rx.
If you buy an Rx, check which kind of antenna connector you want (there are 2 types).
Or, from your favourite UK store...
http://www.firstpersonview.co.uk/long-range-control-systems

Forum with all the OpenLRS info:
http://forum.flytron.com/viewforum.php?f=7

I have now tested my first Tx and Rx on the bench and can get it to 459MHz without hardware modification.
As yet, I haven't flown it, but that will happen as soon as I can get some free time!

There are several nice features of the sysem that will develop further in the near future.
One of the novel things about this system is the ability of the receiver to become a transmitter (transceiver).
This will allow the Rx to Tx some info back to you whilst still receiving stick inputs.

It already has some basic additional functionality in that when you power up the Tx, it screams at you until you power up the Rx as the paired Rx transmits back to the Tx and tells it that it is alive and receiving valid data.
It has a basic RSSI feature, in as much as the Tx will beep 2 times per second if the Rx is receiving bad/incomplete data packets (eg in a weak signal scenario).

The Rx has an onboard i2C connection, so for example, you can add a Wii & Nunchuck controller directly to it (no need for additional controllers), barometer, telemetry etc.

More as it develops...

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

Devonian

#1
Latest default code is here:
http://code.google.com/p/openlrs/downloads/list


I have modded my v1.08 code to set it to 459MHz:

Both the Tx and Rx software needs to be changed to equally match the changes.
NOTE:  The Tx board and Rx board need 2 different cables for programming - for some reason, Flytron made the Tx & Rx board pinout different  :+

------------------------------------


In the rfm22b tab,to set the band of operation to 450 - 459.9 MHz and 10kHz stepping

Stepping default values
The steps (channel spacing) are set in the rf22b.pde with the default line
_spi_write(0x7a, 0x06); // 60khz step size (10khz x value) // no hopping

So, for example, for 10kHz steps, I set:
_spi_write(0x7a, 0x01); // 10khz step size (10khz x value) // no hopping


Frequency default values:
// frequency formulation from Si4432 chip's datasheet
// original formulation is working with mHz values and floating numbers, I replaced them with kHz values.
frequency = frequency / 10;
frequency = frequency - 24000;
frequency = frequency - 19000; // 19 for 430–439.9 MHz band from datasheet
frequency = frequency * 64; // this is the Nominal Carrier Frequency (fc) value for register setting


For 459 MHz band use, change to as below:
// frequency formulation from Si4432 chip's datasheet
// original formulation is working with mHz values and floating numbers, I replaced them with kHz values.
frequency = frequency / 10;
frequency = frequency - 24000;
frequency = frequency - 21000; // 21 for 450–459.9 MHz band from datasheet
frequency = frequency * 64; // this is the Nominal Carrier Frequency (fc) value for register setting

This will correctly set the low band frequency register values 0x76 & 0x77

You also need to search for and change the following

_spi_write(0x75, 0x53);

and replace it with

_spi_write(0x75, 0x55);



------------------------------------

Then, in the config.h tab, change the default values from:

//######### TRANSMISSION VARIABLES ##########
#define CARRIER_FREQUENCY 435000  // 435Mhz startup frequency
#define FREQUENCY_HOPPING 1 // 1 = Enabled  0 = Disabled

To this for 459MHz
//######### TRANSMISSION VARIABLES ##########
#define CARRIER_FREQUENCY 459000  // 459 Mhz startup frequency
#define FREQUENCY_HOPPING 1 // 1 = Enabled  0 = Disabled


Also, the hopping channels can be defined in the config.h, for example, I have modifed mine:
//###### HOPPING CHANNELS #######
//Select the hopping channels between 0-255
// Default values are 13,54 and 23 for all transmitters and receivers, you should change it before your first flight for safety.
//Frequency = CARRIER_FREQUENCY + (StepSize(10khz) * Channel_Number)
static unsigned char hop_list[3] = {10,15,25};


The above gives me 459.100, 459.150 & 459.250 as my hopping channels.


It is NOT possible to get 25kHz steps, because the steps can only be set in 10kHz steps.
However, by setting the start frequency in config.h from 459MHz (as the above line in Transmission Variables, in red) to 459.025 (as in the line below, in blue) it is possible to get various steps of the allowed UK 459MHz frequencies using the line above for startup frequency
e.g.
#define CARRIER_FREQUENCY 459025  // 459.025 Mhz startup frequency

------------------------------------


I am open to correction as I am no software programmer !!

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

Devonian

#2
I made a simple quarter wave antenna for my Tx, similar to this
http://fpvlab.com/forums/showthread.php?382-Sander-style-(Ez)UHF-antennas
For 459MHz, cut it to 163mm in length.
Mine is on a straight SMA connector as the right angled one is not suited to the OpenLRS module connector.

A simple dipole or turnstile antenna can also be made for the Rx which will perform better than the stock 'rubber duck' antennas.


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

Devonian

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

alistair

Sounds very promising, looking forward to your flight testing!

Coyote

You managed to get it to 459 without hardware changes ? i thought the chip couldnt work that high up ?

Even more interesting now :)
Education and schoolin is good, but FPV is gooder :)

Devonian

Yes, it will go to 459MHz without hardware changes, BUT, I found it dropped a bit of power.
At 435MHz, I measured around 98mW output and at 459MHz I measured around 92mW output.

Simon contacted HopeRF and enquired about the suitability of the standard 430 module at 459MHz and they replied that they had tested it and it was 'OK'.
My take on that is that it is within 10% and therefore they deem that as 'OK'.

When I get a bit of time and my new glasses arrive  ;D,  I will change the modules components to better match the 459 output and report back.

Melih (Flytron inventor and supplier of this kit) is also going to test it at 459 and enquire of HopeRF about the 470 module (if HopeRF actually still produce it? ).

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

Coyote

I don`t know your thoughts but 10mw is in my book an acceptable loss, especially at that high a frequency. Especially without the worry or hassle of changing board mounted components.

Can it run with a "emergency" or get out of trouble temporary high power mode ?
Education and schoolin is good, but FPV is gooder :)

Miles

Looking forward to seeing how this works out. Wondering if you could get enough range to fly from Wales to Ireland  (Specifically Fishgaurd to Rosslare) :+
BW
Quads: Predator-650, WS, WS-Pro, M-Tri, Q-250
Wings: 2*X6, 2*X8, Z84
FW: Wot4, EZ*2
SZD Pirat 1:1

Devonian

No Ian, the 100 mW limit is preset and you can't go past it.
It also Tx's at 50Hz (50 times per second) and this is how they keep the power consumption and heat levels down, which is why my cheapy frequency counter is thrown by it and I can't get it to lock on and give a reading.
I have a couple of PMR radios of similar frequency and power output and I can get a reading from them as they are 100% duty PA's (full output all the time) and they can get pretty warm and do flatten the batteries quickly if used agressively.

@ Badwolve1
60 miles on 100 mW is going to be difficult I can assure you, aside from the fact that an FPV spotter would be visually disadvantaged!
I'm also a radio amateur and at 433MHz (70cm band) I'd be struggling to make reliable contact with under 3 watts and would probably turn the wick up to my legally allowed limit of 400 watts  :D 
That's another good reason to get away from the 433MHz band for model control as you never know who'll be pointing their flame thrower in your direction.

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

Devonian

UPDATE on 459MHz RF component conversion:

Got some time at the bench (it was raining, so what better to do!) and removed several components on the Tx board to better match the RF output at 459MHz.

Conclusion after 4 hours - no significant improvement was gained.
I measured the output at 435MHz before starting and again at 459MHz after modifications.
I calculated I'd gained a couple of milliwatts.

So, to sum up, I would not bother modifying the standard board and simply go with it as standard and accept the loss of around 6 milliwatts (unmodified, I get 98mW at 435 and 92mW at 459 and after mods, I got 94mW).

Melih at Flytron is also going to check the RF output at 459MHz and will enquire of HopeRF if they still make the 470MHz module, which is better suited to 459MHz.

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

Devonian

I found out that David from rcexplorer.se has been an early tester of OpenLRS.
Look at the vid and you will see an OpenLRS mounted just behind the GoPro camera (no apparent issues at UHF ;) )


http://www.youtube.com/watch?v=3CPQgyGI0n4&feature=player_embedded#at=117


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

TeeJay

Very cool, wel done
At some point after I've actually learned to fly I may well be looking into LRS/UHF and would prefer to stay legal if possible, I doubt I'll be wanting to set any distance records LOL but a more reliable frequency when closr to the ground or with trees and such like would be a definate plus over 2.4ghz, it would also mean I could change my video to 2.4/1.2 and gain better reliability than 5.8

Shikra

Nigel - this is fantastic.  And as its arduino - right up my street. Not the only one interested, but am a few months away in reality.

I've got a few projects to complete and then I'll look forward to having a go at one of these.

Really fancy one for my tri - the 35mhz trailing wire is a bit annoying!
Still flying up my own arse ....
And giving Bignose one up his..
Moister than an Oyster...........

Devonian

Hi Shikra,

It'll be good to have a UK programmer around as it's not my specialist subject!
I have a basic grasp of what's going on, but couldn't actually write code from scratch.

The product has some inovative benefits, not just to get it onto UK legal UHF airborne control.
I guess you've had a look at the features and maybe downloaded the code to give it a once over?

You can already add i2C devices directly to the Rx and the Rx can also Tx data back to the ground station.

OpenLRS + Wii Motion Plus

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