How did you go about connecting the DS touchscreen to wires you could use in the breadboard? i have one (well two actually as i assume i will mess up the connection on at least one!) and would love any tips for how you went about it. My current plan is a to cut between the wires using a modelling knife.
Does anyone know of a way to get rid of the plastic overlay thats on the wires then it would be easy to connect wires at the base of the wires.
I just did it carefully with a sharp pair of scissors and then laid 4 wires on the connectons and soldered them up with some heatshrink round it to stop the joint flexing so much... I didn't remove any plastic or anything...
Anternatively, if you like surface mount soldering you can buy the touch screen connector from sparkfun... I presume that it works with both the DS and DS lite touch screens (it looks like it should)
Still no video of this in action? I've added one to my Wish list (2.99 free shipping on eBay, can't beat that!), but I'd love to see how yours looks while functioning :).
Oh, sorry. I dismantled it to use some of the parts as I still only have one arduino! If I remember then I will still try to a get a video done eventually. The LEDs on the picture were not evenly matched so it didn't mix very well and I have not got round to playing with the i2c commands for my blinkm maxm yet...
I know it says in the code where to connect the pins from the screen, but could you please write it out? For some reason I'm having trouble understanding it. A picture would be useful if you have one :P.
Just a quick comment to anyone still looking at this. In my first posted code there are some weird numbers to get the values right for PWMing the LEDs, if you are going to do something similar then you want to 'map' the values from the touch screen to get them within the right range for the PWM.
Yeah.
Well you don't get quite the full range from analog reading on the touch screen, you normally get close to it but not quite... So the map function sets it right
You don't get 0-1024 on analog read, you get 0-1023...
So basically if you wanted 1-1024 then you would need to map it still (or add 1!)
Cool. Thanks for the advice :). Seems like that'd be simpler and faster than what you did, so why didn't you just do it that way in the first place? :P!
Now I'm planning to do something similar with multiple RGB LEDS (about 5-6) the big question is how does one connect multiple RGB LEDs - common anode types to the arduino? all ideas welcome...
To connect common anode RGB LEDs you connect the anode to + (5v or 3.3v with resistor if necessary), then you use PWM on the cathodes. The ATmega chip will sink the current but it will be reversed.
255 is normally the highest brighntess but with this config. it will be the lowest as the pin is low for the shortest amount of time.
For multiple LEDs you will still want to use transistors on the cathodes as the ATmega chip cannot sink much current.
I've just made an application that will make using the NDS touch screen with arduino a lot easier. It has a rectangle the exact same size as an NDS touch screen. Basicly, you draw a rectangle using the mouse onto this area, and it creates some arduino code that will execute when you press the touchscreen in this area. You can also save the design of the touchscreen, so you can print it off glue/stick it behind the screen when your using it. The only thing is, I'm not sure if it works because I'm still waiting for a breakout board, but in theory it works, I've used some of the code written here and just made the software work out the coordinates relative to the screen.