Purchase Links
Receiver (~$20 US): https://hobbyking.com/en_us/orangerx-open-lrs-433mhz-9ch-receiver.html
Transmitter (~$32 US): https://hobbyking.com/en_us/orangerx-open-lrs-433mhz-transmitter-1w-jr-turnigy-compatible.html
Firmware Info
The firmware the system runs is called OpenLRSng and is very configurable. Other alternatives like the UltimateLRS also exist, which may be worth switching to in the future. As of now however, the OpenLRSng firmware
provides everything we'll need. A comparison of the two can be found here.
Note that the OrangeRX is based on an ATMEGA328, and when you buy one you have to flash the firmware on both the receiver and transmitter using the usual ICSP pins (same as an arduino). You'll need an ICSP
programmer and something that'll let you load a .bin or .hex file onto it. The Olimex programmer in the bay can be made to do this, but you can also program an arduino to be an ICSP programmer (search up tutorials
on how to reflash the bootloader on an arduino with another arduino, its the same thing).
Binding Procedure
Hold down the bind button while connecting power to the transmitter. Once the transmitter beeps once, release the bind button. The transmitter will begin to beep 5 times per second and the red LED will flash. The transmitter is now in bind mode, using the stored bind information.
Connect your receiver to power. After a moment, both the red and green LEDs should stay lit constantly and the transmitter will stop beeping. The receiver is now bound and all binding and transmitter information has been sent to the receiver. To bind additional receivers without restarting the transmitter, press the bind button momentarily and the transmitter will begin to beep again.
There are three bind modes:
Release button after 1st beep ( hold for < 5 seconds )
- Regular bind mode.
Release button while beeping rapidly ( hold for 5 - 10 seconds )
- Randomize the TX unique code and hop channels. This makes your TX unique but keeps settings related to telemetry etc.
Release button while TX is emitting solid tone ( hold for 10+ seconds )
- Switches the active profile. There are four profile slots and the active profile is indicated by the short beeps on startup. Since this is painful to do if you need to rotate 3 times, you can also use the flip switch to change profiles at startup time if you have one on your transmitter.
More detailed information is found on the wiki page.
Fail-safes
Make sure the RX is configured to disable output for both PWM and PPM! This seems counter intuitive, however the autopilot has channel disconnect detection which relies on this fact. If the autopilot detects no PWM activity,
it'll assume that the channel has disconnected or the UHF connection was lost and assume control of the aircraft (far more useful than regular fail-safes).
Configuring the Firmware
To configure the modules, you have to download and install the OpenLRSng Configuration chrome app. Then you have to hook up the UART pins on the transmitter module to an FTDI chip and to your
computer. Note that both the receiver and the transmitter have UART pins, however the if telemetry is turned on (which it should be by default), the TX modules configures both the transmitter and receiver.
Hook up the module as follows:
In the picture above, Brown = Ground, RED=VCC (optional), ORANGE=RX, YELLOW=TX
A molex connector compatible with the PicPilot debug port should already have been soldered on, but you can use this for reference.
Also note you shouldn't have to hook up the VCC line. Its recommended you power the TX through the RC itself.
After you get it hooked up, run the configurator chrome up, click on connect (at 115200 baud rate), then and only then power up the module to get it to connect.
When going into the RX tab, you will see its trying to communicate with the receiver. Restart the receiver when you see the loading visual so that the receiver can connect. After this
you should be able to configure all aspects of both the receiver and transmitter. Take a look at the Settings Guide for an explanation of what each setting does.
Receiver Settings:
Exported Receiver Settings found below. One is for enabling PPM on channel 5, whilst the other is for PWM only.
orangeRx_receiver_configuration_ppm.txt
orangerx_receiver_configuration_pwm_only.txt
Transmitter Settings:
orange_rx_tx_recommended_433Mhz_max_power.txt
Resources
Important Notes
Even though the 1W transmitter that HobbyKing sells is capable of 1W output, by default it can only do about 400mW. This is because the transmitter module (the actual RF board) on there is being supplied with 3.3V instead of 6V.
A linear regular can be placed to give the RF module the full 6V it requires for 1W of output. A tutorial of this can be found here: http://www.itluxembourg.lu/site/modding-the-orangerx-1w-modules-for-full-power/
PPM Oscilloscope results:
It seems that PPM on the OrangeRX using the OpenLRSng firmware is done a bit differently than the ezUHF. The main difference is the sync pulse being held high, whilst on the ezUHF its low. Below are pictures
of the oscilloscope results to be used as reference.
Sync Time: ~6ms
Frequency: 50Hz
Channel Gap: 300us
Inverted: No
Add Comment