Show Posts
Pages: [1] 2 3 ... 16
1  Community / Bar Sport / Re: How is arduino related to wiring? on: August 28, 2011, 03:21:01 am
Hey CB,

It's more up to you, but I think either here in Bar Sport, or in the General Category.

Plenty of people ask this question, and it would be nice to see it somewhere that people can get at it easily.

2  Community / Bar Sport / Re: How is arduino related to wiring? on: August 27, 2011, 04:26:54 am
It's time to clear up a few misconceptions.

I'm sure Hernando would agree with me.

Wiring was created in 2003 as the Masters degree thesis of Hernando Barragán of Colombia, while he was studying at the Interaction Design Institute Ivrea (IDII) in Italy.

Massimo Banzi (a "founder" of Arduino) was a supervisor for his thesis, along with Casey Reas (of Processing).

After graduating with distinction in 2004, Hernando continued development of Wiring and moved it over to the Universidad de Los Andes in Colombia.

In 2005, Massimo and David Cuartielles started Arduino in Italy using the Wiring software as a base.  They developed some cheaper hardware, and for the last 6 years, David Mellis has been regularly updating the Arduino source with the additions made to Wiring.

There is little to no recognition for Wiring by the Arduino team.  It's pretty sad really.  In fact, the new Arduino 1.0 (beta) version splash/about page has removed all mention of Wiring.  People are often confused what the relationship is between Arduino and Wiring.  It was only recently that people have spoken up that there should be recognition for Wiring and that's why you hear about it.

Some facts:
  • Hernando created Wiring as a thesis project in 2003, and has been developing it ever since.
  • Massimo, his advisor from IDII, independently started Arduino in 2005 and used Wiring as the starting point.
  • The Arduino hardware was cheaper, and that's partially why it gained its popularity.
  • Arduino is 100% about community.
  • People flock to Arduino because of the community, the cheap hardware, and the software and concepts that were originally developed by Hernando Barragan, Casey Reas and Ben Fry.

More info:

I hope that gives some insight into the difference between Arduino and Wiring.

With regard to the early boards, they were expensive, indeed.  But now Wiring has new boards available.  Have a look:

Even so, you don't need to have a Wiring board to use the Wiring IDE.  It supports other boards directly, and will be adding more soon.  So you can use your existing Arduino board with the Wiring IDE, if you wish.

Try it out!

P.S. Sure would be nice if this could be made a "sticky post"!
3  Using Arduino / Audio / Re: Ethernet MP3 Player on: August 25, 2011, 11:06:35 pm
Hey LB01,

I've been thinking this over, and I don't think that using the files will be the best way to go.  I've got a new idea (not really rocket science) to just add a direct serial stream to the decoder.  Should be pretty easy to do.  I'll update you when I get the coding done.

4  Using Arduino / LEDs and Multiplexing / Re: Custom matrix; dimming individual LEDs on: July 19, 2011, 08:42:36 pm
The SoftPWM library provides a way to synchronize the start of the PWM pulses with the column/row (whatever your fancy) scan, as I described above.

dmc: I'm thinking you just need to add the third "TRUE" parameter to each of the SoftPWMSet().  e.g.:

SoftPWMSet(rows[1], r, TRUE);


On the DLT, the end result is 60Hz refresh (over 5 columns), with just over 48 shades of brightness.  One could, of course, tweak the values and get a wider range of shades, but I stuck with 48 shades. e.g.: @ 30 Hz, you could get 96 shades, and so on.

So, while I am certainly nervous about arguing with Grumpy Mike  smiley-razz, I have to say that it is possible to achieve what you want to do with software.

Let me know if you have any questions about the DLT sketches/code, or about the SoftPWM library (that goes for you too, GM) smiley
5  Using Arduino / LEDs and Multiplexing / Re: Custom matrix; dimming individual LEDs on: July 19, 2011, 01:53:57 pm
You might want to look at my DLT project.  It does exactly what you're looking to do - except the DLT is only 5x5 (easy to expand to 8x8).

In the case of the DLT, I separated the LED control to one Wiring S board, and I'm using a second Wiring S board for controlling the rMP3 and input.

Please mind the mess on the wiki - I don't get much time to work on it, so I add to it when I can.  I'll put the current source code for the LED controller so that you can see what's going on.

The trick with the SoftPWM Library with an LED matrix is to use an "undocumented" feature of the SoftPWMSet function which makes SoftPWM begin it's pulses when the SoftPWMSet function is called (I call it "hard set").  It's a "hidden" third parameter to SoftPWMSet, which takes TRUE or FALSE (it defaults to FALSE).

Have a look at the code - it's a bit to wade through, but you should be able to find what you're looking for.
6  Using Arduino / Audio / Re: Ethernet MP3 Player on: May 02, 2011, 11:30:51 am
The only thing I can see is that you don't send the <CR> to complete the command.

Try this:
  rmp3.print("ST D3\r");
7  Using Arduino / Audio / Re: Ethernet MP3 Player on: April 26, 2011, 02:51:34 pm
If you use the hardware serial port, you won't need SoftwareSerial any more.

Just remember that you will have to remove the rMP3 (with power removed) each time you want to upload!  (This only applies when using the same hardware serial port that is used for uploading the sketch).


#include "RogueMP3.h"

RogueMP3 rmp3(Serial);

void setup(void)


8  Using Arduino / Audio / Re: Ethernet MP3 Player on: April 25, 2011, 12:10:34 pm
Since you're using the Duemilanove, you won't be able to get much better than 57600 bps on a SoftwareSerial port.  Can you try setting the rMP3 to 38400 bps?  (Setting: "D2")

See if that works.  If it does, you'll have to:

1) use Serial for your communications with the rMP3 (you will have to add jumpers from pins 6 and 7 to pins 0 and 1 - and you will have to remove the rMP3 each time you upload a sketch).

2) use another board which has an extra hardware serial port (e.g. LEDHead, Arduino Mega, etc...
9  Using Arduino / Audio / Re: Ethernet MP3 Player on: April 17, 2011, 11:21:15 am
@LB01: Which Arduino board are you using?  Can you post the code you used to connect to the rMP3?
10  Using Arduino / Programming Questions / Re: ***4 days to deadline*** (PWM & tone()function interference problem???) on: April 01, 2011, 01:08:52 pm
Oh sheesh...  I didn't know you were using only 100 Ohms.  Definitely needs to be more like 1K Ohm.

This is what I specify in the Tone library.

The diagram I use on the wiki page is from Tom Igoe's examples, and, ugh, is it wrong, for so many reasons.  I'm going to change it now.

Further to what CodingBadly has written - When you have the tone() set @ 0 Hz (i.e. the pin is either ON or OFF solid) - the MAXIMUM current will flow through the pin if it is set HIGH, so it will definite exceed the specifications and likely cause a latchup.

Finally - the code change I posted MUST be used, because you shouldn't send a frequency of 0 to tone() in Arduino 0022.

11  Using Arduino / Programming Questions / Re: ***4 days to deadline*** (PWM & tone()function interference problem???) on: April 01, 2011, 10:50:48 am

Oh right, I forgot we're using Arduino. smiley-wink

Try this in your code:

  int thisPitch = map(potvalforspeaker, 0, 1023, 0, 13);
  if (thisPitch > 0)
    tone(8, melody[thisPitch], 15);

12  Using Arduino / Programming Questions / Re: ***4 days to deadline*** (PWM & tone()function interference problem???) on: March 31, 2011, 11:01:31 pm

Strange this hasn't been asked yet, but what board are you using?  It will be helpful in tracking things down.  As well, what version of the IDE are you using?

Next, if I understand correctly, you're saying that the code goes wonky when the pot controlling the tone() values is moved to its extents repeatedly?  And you say that regardless of whether the PWM (analogWrite()) code is in place, that the code goes wonky - just the length of time to failure is different?

If the board you are using is a Duemilanove or an Uno, then retrolefty is correct, that there will be no "interference" between tone() and analogWrite().

I've tested the code on a rEDI board, and the sketch works fine.

As I think CodingBadly has asked - are you connecting the speaker directly to a pin?  If so, this can be seriously dangerous to the controller.  If you do not put a resistor (and preferably a flyback diode - although not strictly necessary as long as you use a high enough series resistor) in series with the speaker, you will have large voltages being sent back into the controller potentially causing latchup - i.e. causing the controller to stop working.

More references:

13  Using Arduino / Audio / Re: Tone Library and Digital Potentiometer - Weird results on: March 30, 2011, 11:38:21 pm
I know this is a little late for a reply, but there is a solution, as long as you only use 2 tones.

The first two tones created will use timers 2 and 1.  This means that Timer 0 is still configured such that you can use pins 5 & 6 as PWM outputs.

Change your Volume pins to 5 & 6 and you should be good to go.

14  Using Arduino / Storage / Re: Arduino Uno and ATMEL memory chip using SPI on: February 24, 2011, 05:54:35 pm
I haven't looked at any of the data sheets in a while, but if I remember correctly, when I was using the DataFlash AT45 parts way back when, there is a clock polarity issue - you will have to play around with the clock polarity/phase on the master SPI port to match.  So, if the AT25 parts use the same SPI hardware, you may face this as well.

Again, I'm not 100% certain of what's going on, but I thought I'd pass on my findings from a while back.

15  Using Arduino / Audio / Re: Ethernet MP3 Player on: February 24, 2011, 05:42:35 pm
Sorry guys - got a few things on my plate.

I've been wanting to write this streaming MP3 player, but I just don't have the time.

I'm pretty sure it can be done - with some limitations.  The MP3 bitrate will have to be pretty low (96 kbps or lower), but in most cases, that can still sound pretty good - especially mono (which you can do at 64 kbps and get pretty decent quality).

You will need to communicate with the rMP3 using a hardware serial port @ 115200 or better.  Some boards, like our LEDHead for example, have 2 or more hardware serial ports.  You can use the first serial port, but you won't have any feedback to the serial monitor, if that's your intention (and you may have to disconnect the USB cable, if your board has an on-board USB controller).

Furthermore, it will require buffering data to files, and switching on the fly as data is received.  I can get into more detail about this, if someone wants to take on the task of building the streaming MP3 player.

Pages: [1] 2 3 ... 16