Sign up Calendar Latest Topics
 
 
 


Reply
  Author   Comment   Page 2 of 11      Prev   1   2   3   4   5   Next   »
vfrdirk

Registered:
Posts: 129
Reply with quote  #16 
And the perfboard and the resistors today!
MarkBell

Avatar / Picture

Administrator
Registered:
Posts: 1,867
Reply with quote  #17 
Woot!
__________________
Note - this is in no way intended to be an official position of Thom or Artemis, as I am not an official representative of the creator or game.
the.joeba

Registered:
Posts: 4
Reply with quote  #18 

I got all my parts. I tested my Arduino with Blink (success). When I plug the RGB strip into the custom board it lights up white. Using http://learn.adafruit.com/rgb-led-strips/example-code I am unable to control the lighting though.

I have checked my connections, everything seems to be working. My board isn't fully plugged in on one side, but the side with 5,6,7 and ground is fully plugged in.

Edit:

I did two things wrong:

Switched Power and Ground on the Transistors.
Used 9,10,11 on my pins. Not bad, took under 2 hours to troubleshoot and fix

the.joeba

Registered:
Posts: 4
Reply with quote  #19 
I posted a video of the light cycling between colors with no lights on. It looks great with or without lights!

https://plus.google.com/u/0/100427014993714653983/posts/89MKpLsZViq
MarkBell

Avatar / Picture

Administrator
Registered:
Posts: 1,867
Reply with quote  #20 
Nice! Looks great, now fire it up with the game
__________________
Note - this is in no way intended to be an official position of Thom or Artemis, as I am not an official representative of the creator or game.
vfrdirk

Registered:
Posts: 129
Reply with quote  #21 
OK. I've got most of the components now, still waiting for the pins and the screw terminal, but everything else is in. I have already come up with a few questions, just from looking at what I have and what the pictures show:

(This is not a criticism of davr's work, he's an expert and was kind enough to get the ball rolling. I'm an electronics dunce and am trying to clarify so I can build and document the process.) I will gladly accept guidance from anyone who has built one of these or has enough experience with electronics to interpret davr's data into something I can turn into effective documentation.

1. I have a power supply. The diagram shows power going into the screw terminals, but my Arduino has a power plug on it. I feel like the pictures show the power going into the screw terminals and routed from there. Correct?

2. It looks like the Arduino and the project board are mated together using the pins for stability and convenience, and then the Arduino PWM pins (9,10, 11) are actually routed, first to the resistors, and then on to the transistors. Correct?

3. It looks like the resistor attaches to the base pin of the TIP120, and that the collector goes to the RGB pin header on the LED strip and the emitter gets ground connected. Correct?

4. It appears that the screw terminals provide power to the LED strip's +12v pin, and ground to both Arduino Pin #2 and the emitter pins of the three TIP 120s. Correct?

5. I plugged the Arduino into USB and the software was able to see it. I uploaded a sample 'blink' program and something started blinking. So that's good, right? When I tried to upload the 'DMXSerialRcv' example, it threw the error "'DMXSerial' was not declared in this scope". I'm feeling like I should have enabled a library or something. #include <dmxserial.h> is in the code, but I don't know if that .....never mind. I imported the .zip using "Sketch/Import Library/Add library..." and it sucked in all the library files it needed. It's compiling now.

OK. So, that's it for right now.

Thanks for any help!

Dirk
davr

Avatar / Picture

Registered:
Posts: 49
Reply with quote  #22 
1. The power supply for the lights is separate for the power supply for the arduino (the arduino gets its power over USB if connected to a PC, so doesnt need a separate power supply)

2. Yes, only 9,10,11 and Ground (GND) from the arduino are connected

3. Right

4. Right (technically it's not 'providing' ground to the arduino, I'm just connecting the ground pin of two separate power supplies together. if you don't do this, strange things can happen)

5. Hah, never knew that command, I was always installing the libraries manually (extract the zip contents to a folder of the same name as the main library file in Arduino/libraries install dir)

If there are any other questions I will try to help!
vfrdirk

Registered:
Posts: 129
Reply with quote  #23 
Good. Thanks for confirming and clarifying.

4. Interesting. So the USB power (5v?) and the 12v power can act funky without the shared/common ground connection?

5. (Isn't it amazing what a newbie can find by just poking around and clicking on stuff!) Once the code is in the editor, I need to change the Red, Green and Blue variable values to match the 9, 10 and 11 pins to which they're connected? The defaults in the sample code were all over the place, so maybe the PWM pins on other Arduino boards are different... Once uploaded into the Arduino, DMX commands sent to it should process correctly?

6. (New question!) Do I need to edit anything in the Artemis config files to make it work? Is it really just plug and play? How does the Arduino identify itself as a DMX device? 
davr

Avatar / Picture

Registered:
Posts: 49
Reply with quote  #24 
4. The problem is called a "ground loop", you can google it and probably find more info than you want, but basically yeah

5. Yeah, forgot to mention that, that's the only thing I think I had to change to get it to work right -- tell the code which color I had hooked up to which arduino pin

6. Yeah just plug and play. There is a DMXCommands.xml file which customizes the triggers, the default is a little sparse, but will work fine out of the box. Artemis just looks for a USB device using a FTDI USB-to-Serial chip, and assumes that it's a DMX adapter. It doesn't do any other kind of detection or identification. This is the reason you have to use the old arduino, since the newer ones use a different brand chip -- even though they both work fine as usb-to-serial, the Artemis code is hardcoded to only look for that one brand. It makes it less flexible, but it also means you don't have to configure anything

Here's another forum post where a guy shares some small additions  / modifications to the DMXCommands.xml:
http://artemis.forumchitchat.com/post/(Archive)-DMX-Fade-in-for-quotShields-Upquot-and-strobing-quotRed-Alertquot-6452270?highlight=dmxcommands
vfrdirk

Registered:
Posts: 129
Reply with quote  #25 
OK, that's all fantastic additional information. Thank you. I think that answers all my immediate questions except one. I see some people who have spent lots of time customizing (and generously posting) their DMXCommands.xml and, with the exception of systems that have more light strips (front and rear LED strips, for example), these modified files should work with anything that talks DMX like this Arduino rig, right? You also talked earlier about splitting off a segment of your LED strip to make a front and rear set. Can you describe what would be involved in making that work? (excluding the DMX file adjustments, as that exceeds the scope of this project ATM) Another Arduino board? Will other pins on the first Arduino be usable for a second set of lights? I was under the impression that the 9, 10 and 11 pins were PWM, and are printed as such on the board, and needed to be used for that reason.

Thanks again,

Dirk


davr

Avatar / Picture

Registered:
Posts: 49
Reply with quote  #26 
To make two strips, you'd need to:

1. Cut the strip between segments (down the middle of the series of 4 gold pads) like this: http://cdn.ecolightled.com/images/rgb_cut_tut.jpg
2. Solder wires onto the second strip
3. Put an additional 3 transistors wired up in the same way, but to pins 3,5,6 instead of 9,10,11. PWM works on all 6 of these pins (you can probably do more, using a "SoftPWM"
4. Copy and paste some of the arduino code so that it outputs to 6 channels instead of just 3
5. Update DMXCommands.xml to send commands to the separate channels depending on the event
vfrdirk

Registered:
Posts: 129
Reply with quote  #27 
Thanks!

Pins arrived! The damned screw terminals are the last ones I'm waiting for...
vfrdirk

Registered:
Posts: 129
Reply with quote  #28 
I have all my components together now and have been looking at the design. Initially, I was looking at what davr had put together and thinking I was going to have to just go on blind faith to make it work, but with everyone's help, I'm pretty sure I understand the circuit diagram and how it's all supposed to flow. Unsurprisingly, I have some more questions for the documentation:

1. In the world of Arduino, it sounds like the hardware that the board controls is called a 'shield'. Are we essentially making a DMX shield?

2. I did some research on working with prototyping boards and found that they are sometimes used to make circuit traces from component to component. I downloaded a PCB design tool and started mapping out the design of the circuit. I think I see why using wire to jump from component to component is more expedient. The position of the BCE pins on the transistor seems to make at least one 'hop' necessary. With some fancy layout, I could see making traces for everything but the ground connection. Am I stupidly wasting time or getting too big for my britches? This simple electronics project, so far, is frustratingly fun and educational...


MarkBell

Avatar / Picture

Administrator
Registered:
Posts: 1,867
Reply with quote  #29 
Welcome to electronics, my friend [smile]  If you're interested in exploring electronics, then go for it!  Pushing the boundaries of your experience is the only way to grow.

1) More specifically, you're making an RGB LED Power Amplifier shield - the Arduino board itself has the DMX hardware already on it (the FTDI chip) and the code is what translates it.  The board you're plugging in takes the signals from the Arduino and amplifies the power so you're not frying your microcontroller.

2) You could use a prototyping board for this (a la Radio Shack Special) or a copper clad board for hardcore trace etching.  As opposed to jumper wires (technical term), you could also bend a leg of the transistor to shift it to another trace - basically using the component leg as a jumper.  Might be tricky, though.

There are alternatives, of course.  2-sided boards make your life easy through "vias" - through holes that connect top-side traces to bottom-side traces.  They are pretty straightforward to design, especially using something like CadSoft Eagle (free for personal use, and a hobby license is pretty cheap for the full board size version).  With a 2-sided board, fancy layouts tend to reduce to very straightforward designs.  (Through hole components, like the transistors, can connect to both layers since they plug into basically enlarged vias.)

DorkBot PDX has started a hobbyist circuit board order service through OSHPark.com that I use all the time.  Relatively low cost, comes with 2-sided traces, solder mask, and labels.  Really simplified my life using anything beyond a RadioShack board.  

__________________
Note - this is in no way intended to be an official position of Thom or Artemis, as I am not an official representative of the creator or game.
vfrdirk

Registered:
Posts: 129
Reply with quote  #30 
OK!  I knew I had another question and you answered it as if by magic. My experience would be made easier by being able to rejigger the TIP120 pins into separate holes so I can trace them home. I didn't want to 'just do it' and hear the virtual gasps from the experts about how we just don't do that to the poor pins. Let's get bent!

I've seen the two sided stuff and thought it would make sense to be able to use both sides. I'm going to stick to Kindergarten level until I get this sorted out, but I'll try the Eagle tool since most of the PCB design stuff I've found is sort of clumsy.

Thanks,

Dirk
Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.