Cheap UHF spectrum analyzer (and RC tx rx) using RFM22 module

Here it is: Google Code Archive - Long-term storage for Google Code Project Hosting.

That version the PPM sum runs fine on pin D8, perfect 18ms like FrSky but no RF22...

This is the output from a FrSky D4FR

And this is from the code of the LRS

The channels interval is showing the ~1500ms the default value I've set because it can't get data from the RF22.

zitron:
Hmm... are you using my modified version of the RF22 lib? Because I thought I solved that particular problem, my servos seem fine. Try the new code, and see what you get.

Hello zitron. Can you summarize what modifications you have made to your RF22 lib? What problems did you need to fix?

Best Regards,
George

Here it is: http://code.google.com/p/zlrs/

Sorry I don't know how to use google code, where is your code?

MGeo:
Hello zitron. Can you summarize what modifications you have made to your RF22 lib? What problems did you need to fix?

I am really bad at documenting stuff, I think I basically moved the read data stuff from the interrupt handler to only run when you call the receive function.

There you go: http://code.google.com/p/zlrs/source/browse/#git%2Frf22_RCrxHWS_tele

I prefer GitHub but I decided to give a try to Google Code GIT hosting.

Got some time today to look into this, seems the way I've set it is consuming too much time not allowing the RF22 to process data.
I've changed the timer to only trigger and even on the pulse shift and the RF22 started to work. Now I need to correct the PPM output as it's not been generated correctly.

...and it's fixed! :slight_smile:
Took some ideas from openLRS code and ended up only using Timer1 as overflow interrupt.
I'll be submitting the updated code soon and start adding a failsafe feature.

Update1: Code submitted and video made of the test

Update2: FrSky telemetry support added. RSSI+Voltage levels working on a modded 9x radio.

Wow awesome! I like the changes.

Which version of the 9x firmware do I need?

I'm thinking about building a tricopter, I might just copy your setup!

I'm using the er9x, but I think open9x will work as well they use the same mods for telemetry.

In multicopters and for FPV I just love the tricopter, the super responsive tail makes it really fun to fly.
If you need any details just let me know.

I'm trying to determine with platform will be the one making the first test running the LRS. :slight_smile:

Just a video showing the maiden flight. :slight_smile:
Next step is to make some proper antennas, you can hear the drop packets beeps (as well as me speaking loud).

Nice! Were you flying on 1mW? 1mW Should be good for 100m with normal antennas.

arghh... thanks for that!

I remembered seeing that code but when checked I saw that it was using the full power, 20dBm!
Problem was I checked on the RX and forgot to check on the TX side, so yes I was only using 1dBm
on the TX side. :wink:
If the weather keeps good, I'll test it again with more power.

PS: What have you used to power the TX module? Both Futaba and 9X output 12v so it needs to be converted. For testing I ended up using a ESC+LiPo. So I was wondering if you have a new board layout that includes a voltage level converter.

I couldn't tell from your video, but make sure you also check the hardware power selector/switch next to the RF22. You shouldn't need to change the software if you just add a jumper.

For power I just soldered a wire from the 5V reg on my 9X.

I've disabled the jumper check code, so it's always using the same power.
What I had forgotten to do was check the initialization settings on the TX.

As for the power regulator I recalled I had here a tiny pcb with a voltage reg from a old Wireless camera kit.

Couldn't be better, it converts from 12v to 5v and has place to solder two more wires that I'm using for the PPM and Serial TX.
It's a 78L05 so It's pushing it a bit, but I let it on for quite some time and it didn't burnt.

How does one change the frequency easily on this? I'm looking at Radio Control Modules - 433MHz (and also the one from Sparkfun) and they all seem to indicate that the parts on the board constrict it to specific frequency and it wouldn't work on others, yet you guys seem to be able to switch along the entire range with no problem.

You can change normally using the registers. It can work all over the full range allowed by the SIL chip.
What happens is that hoperf adds some filters that will make it work better on model range. So don't expect to have the same
performance on 866Mhz if you're using a model for 433Mhz.
Example, for the purpose of acting as a frequency scanner is it ok for a LRS I'd stick to the model frequency to get the maximum performance.

One update on the testings.
Last weekend tried it with the power set to 20dbm and indeed the range is nothing compared to before.
The day was not the best, cold, wet grass and foggy so definitely not the best conditions for RF, still it
went up to 350m with signal and I just didn't went more coz I was freezing. :slight_smile:

Cool, I just test flew my multiwii tricopter last weekend, it's pretty awesome! I didn't bother with the PPM, too lazy. I think I will add a battery voltage warning to the telemetry when I have time.

Are you planning FPV?

My next step was to add RSSI out, probably use Timer2 to generate a 50hz pulse.
So it can either be used directly with some OSD's or with the buffers commonly used with FrSky and others RX's.

Been using it for some time but just realised I had forgot to share here. :slight_smile:

Added support for output FrSky telemetry code from the TX module, so that I can use it with my modded 9X radio and see the RSSI levels from both RX and TX.

The yellow wire (seen in the picture above) goes from the pcb TX pin into the 2nd pin that after the radio mod works as RX for the FrSky module.
At the moment is only sending that data, but could potentially send anything that FrSky telemetry provides.

That is sweet! I will have to check it out. Do you lose your model settings if you flash different firmware to the 9x? I hope not.

I haven't done much because of the crappy weather and I have too many projects going on. Flew my tri for a bit, it's not properly tuned, but is still very nice. I am terrified of my HK450, but I can hover the tri around the kitchen. I will definitely setup FPV on it eventually. There's no way I will fly the 450 FPV. I have a 2.4GHz FPV system, but every time I turn it on to test it my house mates (probably neighbours too!) lose wifi. Maybe I will get a 5.8 system. If you are thinking about DIY OSD, I have made my own ages ago, before kg4wsv made his MAX7456 lib (check out this very old and long thread http://arduino.cc/forum/index.php/topic,8785.0.html). You can probably use the same code in any of the arduino-MAX7456 OSDs sold everywhere.

I finally got around to edit the video of my autopilot test crash last year, you can see my OSD in action although replaying logged data: Crash No. 4 (When Inertial Measurement Unit and brain both fail during autopilot test!) on Vimeo

Do you already have a different firmware or you're using the stock one?

Between different versions of er9x or open9x is possible to save them and after re-upload. I do that every time I update it just in case.
But try with the eepe tool it might even be able to save the ones from the stock fw.

Ehehe that is funny. :slight_smile:
What's the power on that 2.4 vTX??? I also have helis (several... ) but never even tried to put FPV in them. For me FPV just in multicopters
with the tricopter been the best due to the fast tail response.
At the moment all the fun is going to my micro quad I converted to FPV: BSRC MicroQuad FPV - Maiden Flight - YouTube
I'm using a really old 1.3Ghz vTX so the range is super short and really bad video.

About the OSD I'll check it out, I have two E-OSD from HK and I'm using that but was considering getting one of the Arduino based ones with the
MAX7456. Last month almost lost my quad when I flew way out and got lost. :frowning:
Btw, what tool did you used to overlay the OSD in the video? Or was just normal video overlay?