SMALL - espritmodel.com SMALL - Telemetry SMALL - Radio
Reply
Thread Tools
Old Nov 10, 2013, 10:41 AM
Registered User
Joined Mar 2009
1,103 Posts
Build Log
OrangeRX / OpenLRS 433Mhz hack#1 : upgrade 100 mW to 1W + Step-by-step instructions

Hi,

So you have an OpenLRS or OrangeRX 100mW system, and would like to upgrade it to 1W.

On the TX side, you can follow the below instructions, but it's simpler to buy directly a 1W TX from HK or Flytron.

But interesting thing is that for the RX there's currently no 1W version. This is especially an issue if you plan to use telemetry or lost packet alarm, which require paquets to be sent from the plane.

Current options are
-to use a 100mW RX, but this will limit the system range.
-to use a 1W TX as RX, but it's not practical as there are no servo connectors on it.

In addition, the Flytron and ORX '1W' TX are powered at 3.3V, which gives less than 400mW in reality.


SO, how could it be worse ?


That's why I took my soldering iron to do a surgical operation on an ORX RX, ugly operation that consist in the RFM22B removal, implant of a RFM23BP, and adding a small supply for it.

That's the trick. And it works.

BEWARE, don't fall in the common mistake of thinking that the RFM23BP is really a 5V device.

I had to check this directly with the HopeRF engineers to be sure, now it's clear : the RFM23BP must be powered at 5V, but the communication pins (SDI,SDO, etc) must receive only 3.3V signals. Actually you can see these pins are directly connected on the si34xx which is a 3.3V device, and you can see a 3.3V regulator on the module. In short the PA needs 5V, but the logic needs 3.3V.

So we can start.

1. Order your modules, there are many sources and I got mine from ebay. Don't forget, you need a RFM23BP, not a RFM23S.



2. Open your ORX, and have a look at the heart of the RFM22B module. We can almost hear its crystal oscillating. But not for long.



3. Now remove the excess solder with this. Choose a rather high temperature for your iron, around 380°C is fine.



4. This is not sufficient to remove the module, as the solder is also behind the pins, but it will help for the next step.



5. With hot air soldering station and a cutter, desolder the module. You'll probably have to work alternatively on both sides, carefully. Remember that not so long ago, this piece of technostuff was all you needed to be happy. Now you want more and it's still time to stop everything.



6. It starts moving...



7. And voilą ! How does it feel to have broken your ORX ?



8. Now is the time to solder your brand new RFM23BP. Of course it's larger than the RFM22B. My suggestion is to mount it at 90°, be careful to solder the side which is close to the antenna as we don't want to add 10 cm of wire to the antenna.

Sorry I like these macro photos, everything looks so mysterious



9. The step you'll forget : you have to cut the trace which is just above the "_" of "OpenLRS_RX". This will allow the RFM23BP to be powered separately from the rest of the circuit. The atmega will continue to be powered at 3.3V as previously, and in the next steps we'll take care of feeding the RF module with 5V.



10. Blob of solder on the central pad : as we have some room left let's add an heatsink.

EDIT : Heatsink is not necessary, the module doesn't warm significantly.



11. A piece of metal strip will do the trick.



12. And then connect the top pins to the PCB




13. And last but not least, we prepare some serious power for the RFM23BP. It will need around 500 mA, which is exactly what an anyvolt micro can provide.
Before soldering the anyvolt, trim it to 5V.
Remember that you had to cut a trace an a previous step. If not done, do it now.

NB: you could ask why a 5V regulator is needed for the RX, if it's powered via the ESC. It's true, but I wanted to have something usable on the TX too. In addition it will filter any glitch from the servos. As always, do as you like.



14. Connect the anyvolt input on the '+' pad near the servo connectors




15. Congratulations !



OK, now let's check the output power of this module.

* First test, powering at 3.3V, to have an idea of the power of the "1W" Flytron and HK modules.



Ouch, 368mW... and it's measured precisely, directly connected to the spectrum analyzer.

* Second test, powering at 5V



Ouch too, the RFM23BP is only providing 572mW of RF power (depends on the samples, I've had others giving 621mW), far from the advertised power. I've seen other people measuring similar results, which is rather deceiving for this module.

But well, we now have a complete bidirectional 1W 572mW system, which is already a good improvement if you plan to use telemetry.

If you like such small projects, I'm also working on a simple LNA (low noise amplifier) for ORX and on a small 1.3W booster.
flipflap is offline Find More Posts by flipflap
Last edited by flipflap; Nov 16, 2013 at 04:31 AM.
Reply With Quote
Sign up now
to remove ads between posts
Old Nov 10, 2013, 11:38 AM
Registered User
DTF UHF's Avatar
Canada, QC, Montreal
Joined May 2013
459 Posts
Subscribed
DTF UHF is online now Find More Posts by DTF UHF
Reply With Quote
Old Nov 10, 2013, 12:32 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Wow - great walk through.
I will definitely be trying this one. Thanks a lot!
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 10, 2013, 01:02 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Quote:
Originally Posted by flipflap View Post
That's why I took my soldering iron to do a surgical operation on an ORX RX, ugly operation that consist in the RFM22B removal, implant of a RFM23BP, and adding a small supply for it.
Hi - small concern.
The RFM22B and RFM23BP are not QUITE pin compatible - for some reason the RXON and TXON are swapped round between the 2 modules.

I'm sure this is fixable in SW - if I recall I remember seeing something about this in Kha's openlrsng thread.
Any comments how you're handling this flipflap?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 10, 2013, 01:04 PM
Registered User
DTF UHF's Avatar
Canada, QC, Montreal
Joined May 2013
459 Posts
The pins are swapped but the logic is also swapped, so the connections are identical
DTF UHF is online now Find More Posts by DTF UHF
Reply With Quote
Old Nov 10, 2013, 01:11 PM
Registered User
Joined Mar 2009
1,103 Posts
Quote:
Originally Posted by nicnet View Post
Hi - small concern.
The RFM22B and RFM23BP are not QUITE pin compatible - for some reason the RXON and TXON are swapped round between the 2 modules.

I'm sure this is fixable in SW - if I recall I remember seeing something about this in Kha's openlrsng thread.
Any comments how you're handling this flipflap?
Yes, you say the pins are swapped because their naming changed and seems inverted, but actually it's still the same connections to do, as you can see in different schemas on internet. Actually I killed one module because I initially thought I had to invert the wires.

(Notice it can be changed easily by software if it was needed.)
flipflap is offline Find More Posts by flipflap
Reply With Quote
Old Nov 10, 2013, 01:11 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Quote:
Originally Posted by DTF UHF View Post
The pins are swapped but the logic is also swapped, so the connections are identical
So do I just use the Chrome config tool to load standard "RX-openLRS Rx v2 Board / Orange Rx UHF ..." openlrsng firmware onto this, and the pin swap is taken care of?

Which logic is swapped?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 10, 2013, 02:04 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Quote:
Originally Posted by flipflap View Post
Yes, you say the pins are swapped because their naming changed and seems inverted, but actually it's still the same connections to do, as you can see in different schemas on internet. Actually I killed one module because I initially thought I had to invert the wires.

(Notice it can be changed easily by software if it was needed.)
Humour me - I don't want to burn my last remaining RFM23BP.

On stock orangerx with RMFM22, RX_ANT is connected to GPIO_1.
When replacing the RFM22 with RFM23BP, RXON will now be connected to GPIO_0.
So where does the re-inversion occur?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 10, 2013, 02:45 PM
Registered User
Joined Mar 2009
1,103 Posts
As you've noticed, the pins RX_ON and TX_ON on the RFM23BP become RX_ANT and TX_ANT on the RFM22B, and in reversed order.

But their signals are inverted too :

rfm22b datasheet :

Quote:
RX_ANT : Rx Antenna select input pin, When RFM2 2 is RX state,RX_ANT should be = 1, TX_ANT should be = 0
rfm23bp datasheet :

Quote:
Rx ON : select input pin, When RFM2 3BPS is RX state,RX_ON should be = 0, TX_ON should be = 1
That was a good question and I passed some time around it too some time ago.
flipflap is offline Find More Posts by flipflap
Reply With Quote
Old Nov 11, 2013, 05:54 AM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Hi flipflap

>>It's true, but I wanted to have something usable on the TX too.

Could you explain what you mean by that, related to regulated 5v supply to the module?
Are you referring to using RX as TX, and connecting your regulator to the main TX supply?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 11, 2013, 08:28 AM
Registered User
Joined Mar 2009
1,103 Posts
Quote:
Originally Posted by nicnet View Post
Hi flipflap

>>It's true, but I wanted to have something usable on the TX too.

Could you explain what you mean by that, related to regulated 5v supply to the module?
Are you referring to using RX as TX, and connecting your regulator to the main TX supply?
Exactly, it's quite common to use a rx as tx, but the rc tx has no esc, it provides only battery voltage, for example 10v. I could be using an esc, but was interested in a variable voltage regulator, to check power and warming at various voltages.
flipflap is offline Find More Posts by flipflap
Reply With Quote
Old Nov 11, 2013, 01:14 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
So completed my orangeRX 100mw RX conversion to 1W (ok, 0.5W) - was quite easy job. I'll do some range testing soon.
Flipflap, was interested in your "customized" version of OLRS with high data rates - is it available anywhere?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 11, 2013, 03:40 PM
Registered User
Joined Mar 2009
1,103 Posts
Congrats !

I can send you a copy of my version, but would prefer not share it publicly right now, as it's really targeted on my hardware. For example I use only the serial PPM with my APM, and had to do a slight modification on this part of the code (the pulses between the channels were too small for some reason). But I didn't check it still works OK in parallel PPM. That's an example.

some changes done :

Now it compiles with arduino 1.X, because a main difference between arduino 0.X and 1.0 is that serial is completely non blocking in 1.X. With arduino 0.X it was impossible to achieve high rates, as during the time serial data was sent to the PC, nothing else could be done. With 1.X, other operations such as packet sending, are possible during this time.

I also added a 1000 bytes buffer on the serial port.

Packets size have been changed, and are asymetrical : 64 bytes down and 40 bytes up. Worked a lot to find good packet size and timing.

Precise RSSI measurement. It's possible to measure a very precise and constant RSSI (varying by 1 or 2 units) if measuring during the preamble, that's what I do here. (In original code it was measuring anytime and then taking an average value.)

Show the RSSI with graphical vu-meter needle on an arLCD (320x240 color LCD with touch screen).

My goal was to achieve a perfect APM link + RC link without any glitch or unsmoothness.

And it effectively handles perfectly a 9600 bauds APM telemetry rate, I mean without any lost packet, even when transmitting the parameter list while initiating the mission planner connection.

Just be sure to configure the APM for 9600 bauds (and remember to disconnect the USB cable, when it's connected the APM will override this setting and send at 115200 bauds)
flipflap is offline Find More Posts by flipflap
Reply With Quote
Old Nov 11, 2013, 08:38 PM
Registered User
Finland, Vihti
Joined Mar 2010
202 Posts
Quote:
Originally Posted by flipflap View Post
Congrats !

I can send you a copy of my version, but would prefer not share it publicly right now, as it's really targeted on my hardware. For example I use only the serial PPM with my APM, and had to do a slight modification on this part of the code (the pulses between the channels were too small for some reason). But I didn't check it still works OK in parallel PPM. That's an example.

some changes done :

Now it compiles with arduino 1.X, because a main difference between arduino 0.X and 1.0 is that serial is completely non blocking in 1.X. With arduino 0.X it was impossible to achieve high rates, as during the time serial data was sent to the PC, nothing else could be done. With 1.X, other operations such as packet sending, are possible during this time.

I also added a 1000 bytes buffer on the serial port.

Packets size have been changed, and are asymetrical : 64 bytes down and 40 bytes up. Worked a lot to find good packet size and timing.

Precise RSSI measurement. It's possible to measure a very precise and constant RSSI (varying by 1 or 2 units) if measuring during the preamble, that's what I do here. (In original code it was measuring anytime and then taking an average value.)

Show the RSSI with graphical vu-meter needle on an arLCD (320x240 color LCD with touch screen).

My goal was to achieve a perfect APM link + RC link without any glitch or unsmoothness.

And it effectively handles perfectly a 9600 bauds APM telemetry rate, I mean without any lost packet, even when transmitting the parameter list while initiating the mission planner connection.

Just be sure to configure the APM for 9600 bauds (and remember to disconnect the USB cable, when it's connected the APM will override this setting and send at 115200 bauds)
Just what I've been looking for.
Presumably you are adjusting the APM SR0_PARAMS to slow the message sending?
Does your version affect range at all?
Is RSSI out (RX->APM( requiring an analog conversion?

I'll PM you an email address to send it to, if that's ok?
nicnet is offline Find More Posts by nicnet
Reply With Quote
Old Nov 11, 2013, 09:55 PM
Registered User
Joined Mar 2009
1,103 Posts
It's OK, just select SERIAL3_BAUD = 9, no need to slow down parameters sending.

I didn't check the max range yet, but I still had no packet loss at 2 km. In theory there is some range reduction as soon as the RF rate is increased, but I can't confirm how much.

For RSSI, the only way APM can receive it is in analog format, but you can choose on which pin. So you need a resistor and a cap. Notice that without that APM will compute an "RSSI" from the lost packets rate.
flipflap is offline Find More Posts by flipflap
Reply With Quote
Reply


Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Sold 1w 433mhz Hawkeye UHF OpenLRS Transmitter JR/Turnigy - NIP cstearns Aircraft - General - Radio Equipment (FS/W) 0 Oct 20, 2013 12:20 PM
Sold 433Mhz 1w UHF Openlrs TX and RX Set $99.99 cstearns Aircraft - General - Radio Equipment (FS/W) 0 Oct 17, 2013 12:58 AM
Discussion Flytron 1w OpenLRS Tx with HK OrangeRx receiver? ummagawd FPV Talk 2 Jul 20, 2013 10:22 PM
Sold ImmersionRC 5.8 600 mw + Fatshark 5.8 100 mw + antennas jjmelo FPV Equipment (FS/W) 8 Mar 27, 2013 04:09 PM
Sold v3 1W openLRS Tx / v2 Rx simplyfly FPV Equipment (FS/W) 0 Jan 19, 2013 03:50 PM