Is this hard? / Will it damage my stuff?
This will not modify your controller in any way, and the wiring is extremely simple, so if you do everything carefully there should be no risk to your controller, and you can unhook it at any time to use with a N64 console.
What you will need:
Arduino - $30
Processing 1.0 - free
Arduino Software - free
3 pieces of wire - free (I hope)
USB cable
Remove these ads by
Signing UpStep 1Wiring the controller
The controller only uses three leads: +3.3V, signal, and ground.
Looking directly at the plug, ground is farthest left, signal is in the middle, and +3.3V is on the right. Using the wire, connect ground and +3.3V to the respective pins on the Arduino, and connect the signal lead to the Digital 2 pin on the Ardunio.
NOTE: If you have other code on your Arduino, you should disconnect the controller and upload the new code from the next page to the Arduino before powering it up with the controller attached.
Connect the Arduino
Connect the USB cable and the Arduino will have power.
| « Previous Step | Download PDFView All Steps | Next Step » |














































With the new version of Arduion-1.0 i did have to include the "import" stuff & as well take care of RXTX-2.2pre1 / RXTX-2.2pre2 (see below)
Minor Issue:
Has anyone made a patch yet for the controller's sensitivity? With a lot of games this is a HUGE problem.
Overall, great job throwing together the documentation
Fix the RXTX errors:
http://rxtx.qbang.org/wiki/index.php/Download
just pull back the latest RxTx 2.2 preview version & you should be good
However, I wanted analog stick support, so I wrote a plugin for Project64 and other emulators.
The only thing that's missing is Memory Pak, Rumble Pak and Transfer Pak support (like the Adaptoid has)
I have no idea how to implement either of them and there doesn't seem to be much of help on google, nor can I find the source code of the Adaptoid plugin/driver, so if anyone could point me in the right direction that would be great.
Only one controller is supported at the moment, but adding support for more would be easy. Mempaks work however by letting the emulator handle them (but that means you can't use physical mempaks)
You will probably have to change the COM port in Controller.cpp to match your Arduino's COM port (it's hardcoded for COM4 at the moment, I would add a configuration dialog to choose COM port, but I'm not sure how to make dialogs in C/C++)
"import java.awt.Robot;"
"import java.awt.AWTException;"
"import java.awt.event.ImputEvent;"
WARNING: RXTX Version mismatch
Jar version = RXTX-2.2pre1
native lib Version = RXTX-2.2pre2
error, disabling serialEvent() for /dev/cu.usbmodem621
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at processing.serial.Serial.serialEvent(Serial.java:238)
at gnu.io.RXTXPort.sendEvent(RXTXPort.java:772)
at gnu.io.RXTXPort.eventLoop(Native Method)
at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:1641)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 12
at java.lang.String.charAt(String.java:686)
at N64_Controller_mouse.serialEvent(N64_Controller_mouse.java:81)
... 8 more
any ideas?
http://rxtx.qbang.org/wiki/index.php/Download
and error 2:( Exception in thread "Animation Thread" java.lang.RuntimeException: Error inside Serial.() ) Insight is apreciated. (Edit: it may be because im not using the right size of wire (AWG 23) or the fact i never tinned the Arduino end)
I am using Processing 1.5.1. I am getting the same error as ppl below on the robot class thing. I copied and pasted the code u said to copy and paste at the top of the sketch. I am complete noob at this stuff. It would be great if you could post a copy of Processing 1.0 to use.
Thank you :)
Thank, and a very nice project :)
Nice instructable!
This is how I determined my number...I hope this is the right explanation...if not someone correct me.
http://forums.sun.com/thread.jspa?threadID=5294982
seems to suggest that bundling the robot class as a jar file would make it work, but I haven't got the know-how for that - any chance you know how to get that to work?