Arduino?

skullriot

New Member
I know this is probably asking you to reveal trade secrets, so feel free to say so, but when you were prototyping this controller, did you work with an arduino at all? I was thinking of attempting an arduino hack and making a personal macro controller. I haven't gotten too deep in the specs as of yet, but i have been theorizing as to how to piece it together, where in the chain i think that it would need to go, etc.. If i'm correct, your chip activates the CPU directly, where as most other mods basically sit just after the actual switch and just stutter that. I guess that is what i would be effectively doing as well, but also putting something into the arduino that could tell it to do a rapid A/B untill released thing, for example. Any tips, hints or warnings?
 

odingalt

Well-Known Member
Staff member
The short answer is no, I've never used Arduino. If you have never worked with embedded electronics, Arduino is a great place to start. Arduino will get you into both the hardware and software side of things without having to get too far down into the nuts and bolts of a particular MCU (microcontroller unit). But they are way too expensive if you plan on going to full production to make money.


The long answer.

My very first rapidfire modchip was built using a development kit from Atmel (http://www.atmel.com), a popular name in MCU (microcontroller units). At the time, Atmel didn't have a lot of lower-power MCU's, which are needed since the Microsoft circuit boards operate in the 2.4-3.0 volt range, so I ended up changing over to a Microchip MCU (http://www.microchip.com) After a lot of planning ahead, I selected the Microchip PIC24FJ256GB110 MCU for the macro controller modchip. That MCU had all the features I thought I'd need to make the macro project a reality. Usually for each new project, I just design my own development PCB from scratch using EagleCAD (http://www.cadsoftusa.com). But I've also used pre-built development boards over the years to help me get familiar with each new family of MCU that I use. For your reference, here are some development boards that I have collected over the years from various projects:

http://www.olimex.com/dev/avr-usb-162.html
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en536385
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en535092

These development boards cost anywhere from $30-$100. Hardware-wise, these development boards are very similar (if not superior in the case of the PIC24F starter kit) to Arduino. Companies like Microchip and Atmel provide free software frameworks for just about anything you can think of. These free frameworks are very powerful, but, they are also all very very complicated.

The advantages of Arduino are ease of use, low learning curve, and a variety of "plug and play" Arduino "shields" offered by third-party vendors. For example, if you want to start a new GPS (global positioning satellite) project, you can buy nearly any Arduino and an Arduino GPS Shield and probably get a working GPS project up and running in a weekend. Want to work with an LCD display? Just buy an Arduino LCD Display "Shield". You can stack up a bunch of these third-party "shields" and pretty quickly get a working project up-and-running without needing to know much more than a little C programming language (or whatever language Arduino calls their language, I can't remember what they call it).

Negatives or Arduino are high cost, hardware and software limitations (some may disagree with me here, but I don't believe Arduino environment is sufficient for serious projects). I feel that Arduino is not as powerful as building a project from scratch. Arduino is basically an organization who created an operating system that runs on some Atmel MCU's. Their system is great if you are a hobbiest, or someone new to embedded systems, that doesn't plan on going to commercial production with your design. I don't think Arduino is necessarily not-for-profit, but you'd have to check their website to get the details.

Anyway, I think I've about rambled enough on the topic. If this is your first embedded systems project, I'd start with Arduino, but don't be disappointed if you feel that the system has too many limitations to accomplish what you want to do. It's a great place to start. When you are doing this kind of work, you're going to find that you don't get it right the first... second.. third.. fourth... or fifth try. But it's a lot of fun!!! Once you've completed your first project, you will be addicted.
 

odingalt

Well-Known Member
Staff member
Also don't get frustrated when you don't get many answers from people on the topic of embedded systems. Generally, the answer you will get for most questions about embedded systems is "if you don't know the answer already, then you won't understand it when I explain it to you". The best way to learn is just to go out and buy an Arduino, sit down, and start playing. You have to have a specific piece of hardware in front of you if you are going to ask the right questions. You also need the right audience. If you buy Arduino, then find an Arduino forums and talk to the users their - they'll be happy to help. Buy an Atmel development kit? Find the Atmel user forums and ask around. Etc.

http://arduino.cc/en/Guide/Windows

http://arduino.cc/forum
 

odingalt

Well-Known Member
Staff member
Always happy to hear when somebody is thinking about getting into electronics! Once you get into it, you won't want to do anything else.
 

modded matt

Active Member
radio shack has a DYI intro to micro controllers kit that is around $40. its also a nice place to start, comes with a dev board, chip, wire, components and a very in depth manual.
 

Wolfie

Member
Hate to necro an old thread but did anyone work something out for an arduino to xbox controller rig?

I have done quite a bit of arduino programming (did a 24hr light and time recorder using I2C RTC, light sensors and memory chip all scratch built for doing bulb ramping for time lapse photography as well as other projects like and arduino web server and SD card storage).

Wondering if anyone has even attempted interfacing an Arduino to the xbox controller yet?
 

odingalt

Well-Known Member
Staff member
I haven't heard anything lately. You can just hook up your arduinio I/O pins directly to the buttons on any "CG2" circuit board and start taking control of those buttons. I think. I've never used an Arduinio.
 

Wolfie

Member
I will have to buy a new controller I think. The controllers I have came with my original white console and my elite console. I also have the Fable 3 LE and Gamestop red/black LE which I think are matrix given their age. Not sure about my gray/silver monochrome LE with the twist D-pad (first one that had the twist d-pad). Never cracked open any but the originals. I take it that all newer ones in the stores are CG2 by now?
 

odingalt

Well-Known Member
Staff member
Well, if there's one thing I've learned, it's that you never know what you're going to get when you open it! lol Microsoft has kept us busy guessing at times. But right now in the last few orders we've made with our distributors we've been getting CG2.

And for the past 2 years, the rule-of-thumb has been that any "special editions" including that silver with twisting d-pad have also been CG2 circuit boards. So at this moment in time my opinion is that you have a good chance of getting a CG2 but you have almost a sure thing right now if you buy a special edition.

Your Fable and Gamestop might be CG1 but that would work for your purposes as well. The silver is definitely going to be a CG2. So it sounds like you've got some to work with. The good news is even if you brick the circuit board, you can just buy a new one of any kind and transplant that circuit board into your special edition shell. So don't worry about ruining the circuit board in your special editions you can always replace 'em.

The nice thing is that the joysticks, buttons, triggers and everything have been interchangeable, with the exception of the twisting d-pad. If you have a twisting d-pad, the front shell piece is special for accommodating the twisting d-pad piece.
 
Top