Let's Make Robots!

DIY RC, Moving to Arduino, RasPi, and other questions

I have added more questions to the end of this, so please have a look.

Hi

I sort of started this question on another page, but I thought I'd move it here so I'm not hijacking someone else's page.

2 questions here;

1: I'm looking to move from using picaxe to Arduino. Can anyone give me any pointers on where to start? (I know this question's probably been asked elsewhere on LMR)

2: One of my interests is making RC cars, boats, etc., so I'm considering making a DIY RC transmitter/reciver to give me some extra channels and functions (telemetry, freedom of layout, built-in speed control, etc.) without breaking the bank. I'm looking at XRF modules for the radio side of things, as they're fairly cheap, easy to use, have a decent range, and 2 way transmission. Does anyone have any experience with them, or can anyone asvise anything better?

Also, the XRF modules seem to be based around this chip (pdf warning). Would it be possible/cheaper/better to build up an XRF compatiable tranciver from this chip, so that I can keep it all on one board?

Thanks in advance, and sorry if I've done anything wrong (I'm pretty new to forums)

 

More questions/info on use:

Any radio I use will have to not interfere with standard 27mhz, 40mhz and 2.4ghz equipment, as I'm a member of a RC boat club that runs ocasional pond evenings.

Also (this is probably an obvious point), I want to have at least 4 fully proportional channels (for two 2-axis joysticks).

Extra question: would there be any problem with using a combination of arduino and picaxe, IE an arduino based transmitter and a picaxe based reciver?

Thanks the replies

 

More info in what I'd like, idealy, to make a transmitter to do

 

Sorry if this sounds in any way over ambitious, I was just jotting down features that I'd like to try and put on it when I do it.

Also, sorry if any of it doesn't make sense, as these were notes for myself.

It may be a while until I do any physical work on this project, as I've got other projects (a theremin and a stirling engine) and exams to do before I make a start. This post is mostly to sort out ideas as to how to do it.

Cheap one-way RF / Xbee / cheap RF tranciver (2.4ghz?)
            Reciver:        Picaxe
                    Expandable (via serout/shift register)
                    Digital, servo + serout
                    Expansion port?
                    Shift register
                    AV transmit?
                    Audio recive?
                    Remote reprogrammability?
                    Cheap IR reciver for lightweight/cheap use?
                    In-built PWM control for Speed control etc.
            Transmitter:    Picaxe / Audrino (Rasberry PI?)
                    Screen? (Character LCD/OLED / Nokia LCD (monochrome/colour?))
                    2 joystick
                    Extra anologue channels
                    Xbox finger triggers?
                    Toggle switches / push button / On screen?
                    Mixing Etc
                    Anologue trim (mechanical / Digital?)
                    Use dead transmitter for joysticks, case, arial ETC.
                    PC connectivity?
                    Cruise control on throttle (and all spring return controlls?)
                    Multi-model switching (model ID code at begining of each command)
                    Simple High-res mode?
                    AV recive?
                    Audio transmit?
                    Remote reprogrammability?
                    Lightweight budget IR transmit/recive?
                    Optional +/- or normal ("crawler mode")

Thanks again

 

Yet another question...

If I used some form of USB host module, on the transmitter side, and used a radio that allows remote re-programming, would it be possible to re-program one arduino (the one in the reciver) using the arduino in the transmitter, and code from the memory stick?

This is probably beyond what I can do at the moment, as I haven't even flashed an LED on an arduino yet, but I'd be intrested to know for the future.

Thanks

 

Another possibility...

I recently came across another posibility as to how to arange things, which might be a bit easier as a starting point. I was having a look at these. They are 2.4ghz conversion modules for non-modular transmitters. My thought is to get one of these, and interface it up to a DIY microcontroller-based transmitter. These have the advantage of good range (the 4ch recivers have about 500m, the 8ch ones have about 1.2km), allready availiable recivers, and I know they won't interfere with other people's systems. They are also relatively cheap (transmitter module and reciver), get good reviews, and have serial-based telemetry, for stuff like battery voltage, temprature and location (using GPS). There is also already some stuff on DIY telemetry using this.The connection to the transmitter using PPM, so the thing that I'd need to know is this; How hard is it to get a PPM signal out of a picaxe or arduino microcontroller?

PS: This is by no means my final decision on how I'm doing things, and it will still be a while before I get round to doing anything, due to other projects and exams.

 

More thinking...

Still haven't got around to doing anything on this, I'm afraid, as I've been busy redecorating. I have, however, got my hands on a raspberry pi, so I've been thinking; Would this be any good for a transmitter? Is it quick enough to put out a real-time signal, or not? Would I need a secondary microcontroller to handle some stuff, like PPM encoding? Is it worth using a raspberry pi for, or would I be better off with a standard microcontroller?

If I used the pi, how hard would it be to strip back the OS to just do the RC stuff? I woulden't need anything for networking, etc. and I might not even want any video output, so how much could I strip back linux to get it booting and running as quickly as possible?

Another question (a bit seperate) is this; is it possible for two microcontrollers to share memory? EG can one write a value to a space on an EEPROM, and then can that be read by another microcontroller? My thought here is that one microcontroller could handle the PPM encoding, and run really quickly, and the other could handle the inputs, throttle curves, mixing, etc. I'm not sure if this is worth doing, as an arduino might be able to run quick enough anyway.

I also found this arduino library; http://sourceforge.net/projects/arduinorclib/

I can't seem to find out all that much about it, and I have absolutely no expirence with libraries, so has anyone here used it?

PS; Entirely unrelated, but i've written my first instructables, and entered them into a competition. This is partially to show why I haven't had time to get started on this yet. If you want to have a look, here they are;

How to make a corflute roller-shutter (or any other curved shape)

How to make a Hi-Fi cabinet

If I shoulden't have posted them, I appologise.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Arduino has a library for cheap radio modules called Virtual Wire. So, you can build your own transmitter using an ATmega328 with Arduino bootloader or even an ATtiny85, one joystick (2 potentiometers) and one cheap transmitting radio module. The receiver can also be a ATmega328 or a Tiny85, then a motor driver, a servo and the receiving radio module.

I've looked at using the cheap transmitter/reciver modules, using the rfout and rfin commands in picaxe basic, but they're not trancivers, and I'm not sure of the reliability of them.

Thanks anyway. I don't know an awful lot about them, so if they are generally reliable, please say.

but googling DIY RC transmitter and reciver returned this site. I don't know if its helpful or not....

This site redirects to some other sites and maybe helpful.

The transmitter on the first site looks a bit basic (few channels, no proportional), although the design could probably be fairly easilly altered.

The second site looks quite similar to what I'm planning, using an old/dead transmitter for case and sticks, and a radio module

Thanks for the reply.

http://letsmakerobots.com/node/18459 might interest you when switching from picaxe to arduino. Read the comments as well. As to your hobby, I can't reply about making diy rc but picaxe will be fine for all your projects. It's a good board and if you know basic but don't know C/C ++ it's better to stick with picaxe. Picaxe is better documented than arduino with the manual containing all three information you need but arduino has more capabilities in computation and hardware support.

Thanks for the link.

Picaxe chips would probably be fairly well OK for my DIY RC project, but I'm starting to find the limits, and for other intrests, arduinos seem a bit better featured (I'm into electronic music, for example, and I know that you can use arduino with midi)

What according to you are the limits of Picaxe? If its not being able to use shields like the duino, then that can be solved but if its computational, its better if you make the switch and quick!!!

It isn't the fact that you can't use shields (if I moved on to arduino, I probably woulden't use a full-sized arduino in projects anyway, I'd probably want to use a DIY one on a custom board, just with the arduino bootloader on it), but arduinos seem to be able to interface up to more components (graphic LCDs, MIDI, etc.) and also the bootloader is open source, so, with a bit of effort, I should be able to put it onto chips myself (I think).

Well, I don't know a lot about bootloading but I can give you a link to this tutorial which I personally prefer to be the best for anyone developing a DIY custom arduino. This is just my personal preference and you can easily ignore it.

This node is the best if your project has motors.

Well, I don't know a lot about bootloading but I can give you a link to this tutorial which I personally prefer to be the best for anyone developing a DIY custom arduino. This is just my personal preference and you can easily ignore it.

This node is the best if your project has motors.