Show Posts
Pages: 1 ... 3 4 [5] 6 7 ... 15
61  Community / Exhibition / Gallery / Re: Cheap UHF spectrum analyzer using RFM22 module on: March 14, 2012, 06:18:00 pm
My boards are laid out completely differently compared to the OLRS, I did not used his code at all, but wrote my own code using the arduino RF22 library instead. I have attached my schematics. Flytron's code will not will on mine without significant modifications, and vice versa. My atmega328 runs at 5V, and the RF22 runs at 3.3V from a SMD regulator on the back of the board, the 5V SPI commands from arduino are sent to the module after going through a voltage divider.  My boards are a little to big, I'm planning to make them smaller the next time.

I can send you a couple of the boards free if you pay for the postage, but please understand that I don't really want to start a business selling boards!
62  Community / Exhibition / Gallery / Re: Cheap UHF spectrum analyzer using RFM22 module on: March 13, 2012, 10:12:40 am
Yeah he uses 3.3V at 16MHz, which is not recommended, I run mine at the normal 5V. Also, he uses software spi which I find kind of weird, I use hardware spi...

I've made some boards (see attached picture) I tested to 600m range on the ground, through some houses. I also tested it on my helicopter last weekend, works great!
63  Community / Exhibition / Gallery / Cheap UHF spectrum analyzer (and RC tx rx) using RFM22 module on: February 25, 2012, 03:10:23 pm
I was inspired by the OpenLRS project to make my own UHF remote control and telemetry for my FPV planes, but much cheaper!

You can get the RF22B 100mW (20dbm, many km range) tranceiver modules from HopeRF very cheaply, I got 6 for ~30 Euro. They are great transceivers, and there is a arduino library for them: http://www.open.com.au/mikem/arduino/RF22/. In the example code, there is a spectrum scanning demo. I changed the code a bit and wrote a PC program to make it easier to use:

250MHz to 960MHz sweep:


Close up at 434MHz:


Pictures of the board:




The PC program (in C#, a modified version of my plotting program: http://arduino.cc/forum/index.php/topic,80462.0.html) and arduino code are attached.

Have fun!


Edit: The arduino code posted here may have some problems, see this post for the new code: http://arduino.cc/forum/index.php/topic,93777.msg767772.html#msg767772

New version of PC program: http://arduino.cc/forum/index.php/topic,93777.msg767889.html#msg767889

Update on potential board problem: http://arduino.cc/forum/index.php/topic,93777.msg989562.html#msg989562

New version with telemetry support: http://arduino.cc/forum/index.php/topic,93777.msg1000972.html#msg1000972
64  Using Arduino / Interfacing w/ Software on the Computer / Re: C# Graphing program with code on: January 17, 2012, 08:56:40 am
Thanks Paul!

I had a few people asking for the source code, it's right there in the first post!!!
65  Using Arduino / Interfacing w/ Software on the Computer / C# Graphing program with code on: November 27, 2011, 12:23:58 pm
Hi guys,

I posted my C# based graphing program here:

http://arduino.cc/forum/index.php/topic,80462.0.html

I thought I will post my source code here in the interface forum, see attached zip file!

Cheers,
-Z-
66  Community / Exhibition / Gallery / Multi-channle data plot/streaming/graphing thing on: November 27, 2011, 12:16:31 pm
Hi guys,

I needed a thing to graph data sent from arduino for my UAV thing, so I put together a program in C# using the excellent ZedGraph graphing libraries.

It allows you to graph upto 10 different channels on one graph (limited only because I couldn't come up with more line colours), and you can change how many samples you want to store in the graph. You can zoom in to the graph, save a picture n'stuff.



It is not super fast, i.e. not meant to be an oscilloscope, but 100Hz is not a problem.


Here's a link to the download: https://sites.google.com/site/iluvtocnc/DataPlot3.zip

Here's a test sketch:

Code:
void setup() {
  // initialize the serial communication:
  Serial.begin(9600);
}

void loop() {
  Serial.print(analogRead(A0));
  Serial.print(',');
  Serial.print(analogRead(A1));
  Serial.print(',');
  Serial.print(analogRead(A2));
  Serial.print(',');
  Serial.print(analogRead(A3));
  Serial.print(',');
  Serial.print(analogRead(A4));
  Serial.print(',');
  Serial.println(analogRead(A5));
  delay(10);
}

I apologize in advance for any crashes from bugs, the user inputs have zero error checking, since this was a Sunday afternoon job. This is a .net program, so you may need to have .net framework to get it working. I have only tested this on Win 7.

-Z-

I have a lot of people ask me for the code, it's here!!!! ############################
I have posted in the source code here: http://arduino.cc/forum/index.php/topic,80466.0.html
67  Community / Exhibition / Gallery / Re: RC helicopter UAS on: March 15, 2011, 05:43:43 pm
I wonder if there's a better algorithm of measuring RPM. The two ways that are often used both have advantages and disadvantages:

1. Measuring how long it takes for N revolutions
- More accurate at lower RPM, but slower update as well
- Inconsistent update rate, could be a problem for your control system

2. Measuring the number of revolutions in N seconds
- Consistent update rate
- Less accurate at lower RPM
- Less RPM resolution if you want high update rate
68  Community / Exhibition / Gallery / Re: RC helicopter UAS on: March 14, 2011, 11:40:00 am
Haha I'm the original author of that crappy RPM reading code, I never thought people will actually want to use it!! Makes me happy that it actually works for you!

BTW, I am currently using the same code in my CCPM helicopter flight computer as part of the governor with PID control.
69  Forum 2005-2010 (read only) / Troubleshooting / Re: Deriving speed and distance from acceleration on: February 04, 2009, 01:55:31 pm
Hi,

6G is 58.8m/s^2 (6x9.smiley-cool, not 6m/s^2.

Also, if you need to go up or down a hill, you need to know the angle of the hill, because gravity will introduce large amounts of drift otherwise.

-Z-
70  Forum 2005-2010 (read only) / Troubleshooting / Re: Analog Sample Rate on: December 19, 2008, 04:47:02 pm
I think the issue is that if you want to fill in the blanks, you still have to send those serial commands to the LCD, which is really slow.

But good point though, if you don't care if the LCD is slow, you can simply make another variable called LCDangle or something, which gets increased or decrease by say 1 every loop depending on if LCDangle > PotAngle or not.
71  Forum 2005-2010 (read only) / Troubleshooting / Re: Analog Sample Rate on: December 19, 2008, 04:13:28 pm
Since you are only using one serial line, have you tried using the hardware serial?

72  Forum 2005-2010 (read only) / Troubleshooting / Re: start and stop intervall - please help! on: August 06, 2007, 05:37:10 pm
Quote
i'm really a newbie, so i have to ask again...

i want to use the interruption function from the reference:

attachInterrupt(interrupt, function, mode)

would it work when i insert the interruption between every blink of the led in the interval();?

and i don't really know what i should insert in the brackets of the interrupt function...


I'm no expert either, but I think the general idea is that you want to put whatever you want to be executed when the interrupt happens in the interrupt function. When the interrupt happens, the processor stops doing what it was doing, say in the middle of a delay(), and jumps over to do the stuff in interrupt() function.

So for example, you can setup a loop like this:

Code:

int flag = 1;

void loop() {

  while(flag == 1) {
    turnonLED();
  }
}

interrupt() {
  flag = 0;
  turnoffLED();
}


When this runs, the LED will be kept on until the interrupt occurs, setting flag to 0 thus quitting the while loop and turning off the LED.

Not the best code example, but like I said, I'm no expert!

-Z-
73  Forum 2005-2010 (read only) / Troubleshooting / Re: unsigned int functions in tabs -> "not declare on: June 29, 2007, 06:02:11 pm
Oh MAN! I pressed "save" after I deleted all my SPI functions that took me hours to write last night!  >smiley-sad I've got most of them rewritten now, it didn't take long since last night I was suck on some small error for a while.

Anyway, good news is that uint16_t works perfectly!

Thanks a lot!

-Z-
74  Forum 2005-2010 (read only) / Troubleshooting / Re: unsigned int functions in tabs -> "not declare on: June 27, 2007, 04:26:17 pm
That's a great idea, but it doesn't seem to work? I get:

error: 'unsignedint' does not name a type In function 'void loop()':



If I remove all references to the functions in the tab from void loop(), I get:

error: 'unsignedint' does not name a type

In fact, I get the same error even if the typedef and the functions are in the main tab. Do typedef's even work for unsigned int?


This is getting weird. It says:

error: 'unsignedint' does not name a type

even if I comment out everything in the tab, with nothing in the main tab. I had to completely delete all the code from the tab to get it to compile!

I think I'll avoid tabs for a while...

-Z-
75  Forum 2005-2010 (read only) / Troubleshooting / Re: unsigned int functions in tabs -> "not declare on: June 27, 2007, 09:26:36 am
OK, thanks!

I thought the environment automatically inserted function prototypes, which was why one could use tabs, but so there's a bug. Is there something I can do (change some config files or whatnot) to over come this problem? This makes tabs kind of useless for my program, since I've got a bunch of unsigned int one-liner functions, I might as well just copy the whole function over.

-Z-
Pages: 1 ... 3 4 [5] 6 7 ... 15