cycling 4 LEDs at varrying speeds

By changing the value of "interval"

Yes I can see how I can manually change the interval But I want to do it automatically.

Have your program do it for you. That's about as close to automatic as you're going to get.

 unsigned long currentMillis = millis();
 
  if(currentMillis - previousMillis > interval) {
    // save the last time you blinked the LED 
    previousMillis = currentMillis;   

    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW)
      ledState = HIGH;
    else
      ledState = LOW;

    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);
  }

Breaks down to:
Look at the time
Is it time to do something?
If so, do something

Where "do something" can include change the amount of time until I next have to do something.

But I want to do it automatically.

You have our permission. If you need help with that, you must define when/under what conditions to change the value, and how much to change it by.

I had to walk away from it right now I'm not at home so I will take a look at it when I get home thanks

The Arduino community isn't here to help you get your project done; we're here to help you understand how to build your project.

If you want to work under the get the project done now, I'll figure out how it actually works later model, then there is a Gigs and Collabaration section where you can get people to write code for you.

You say you understand things better when you can take something, modify it and see what happens. You're welcome to do that with any of the examples and I would encourage you to spend a lot of time doing that with the Blink without Delay example because it is such an important fundamental concept. If you're not willing/interested in putting the time into understanding how it works and figuring out how you can take it and apply it to your own projects, then the aforementioned section would be a better place to get help (at a price) in the form of working code to your specifications.

thanks for your input. it's not like I don't understand it, I just don't know how it would apply to what I'm doing.

I'm not sure if everybody woke up on the wrong side of the bed or if my impression of everyone being on their high horse is just my problem, but a "something for nothing" lecture isn't what I expect when I asked for help.

I'm trying real hard to understand your guys way of thinking, it occurred to me a long time ago that there are many different types of people and they all have different ways of understanding things. I'm sure I'm not the first person to come along that has a hard time understanding what you guys are saying, I'm sure those with thousands of posts have seen this many times my question is, do you run them off with banter such is this? or do you offer assistance? I for one think that a community such is this would be willing to help.

myself, being an expert in other things and also being part of a web forum sort of like this I definitely don't answer questions with, "figure it out yourself we're just here to give you our opinion on how the site is supposed to be ran" attitude.

I'm trying real hard to have an upbeat attitude with the type of replies that I have gotten, but this cloak and dagger, "here's a piece of the puzzle see how it fits" doesn't really sit right with me.

this code is such a small aspect of my project that I was hoping that it wouldn't be this difficult for someone to help me.

Do I have to use const int ledPin = 13 to define the pin OR is there a way to define using pins 2, 3, ,4, and 5 as constants? I am using the code from the Arduino playground, Blink Without Delay which starts with the constant using pin 13.

Is there a way to string multiple pins in the blink without delay code? OR is there a different code altogether that needs to be used in order to get all 4 LEDs working together with a millis (rather than a delay)?

JeffCoalfax:
thanks for your input. it's not like I don't understand it, I just don't know how it would apply to what I'm doing.

Which is something that you learn to figure out by actually playing with the devices. If you can't figure it out, then you truly don't understand it enough; it's that simple.

I'm trying real hard to understand your guys way of thinking, it occurred to me a long time ago that there are many different types of people and they all have different ways of understanding things. I'm sure I'm not the first person to come along that has a hard time understanding what you guys are saying, I'm sure those with thousands of posts have seen this many times my question is, do you run them off with banter such is this? or do you offer assistance? I for one think that a community such is this would be willing to help.

The responses certainly haven't been warm and friendly, but calling it banter is a bit of a stretch.

There are many people who come here and can't understand it after an explanation and that's understandable. The problem arises when there is an apparent lack of effort, which is why you see posts about how quickly you respond with "looked at it, still don't understand it" type responses.

myself, being an expert in other things and also being part of a web forum sort of like this I definitely don't answer questions with, "figure it out yourself we're just here to give you our opinion on how the site is supposed to be ran" attitude.

I'm trying real hard to have an upbeat attitude with the type of replies that I have gotten, but this cloak and dagger, "here's a piece of the puzzle see how it fits" doesn't really sit right with me.

Also a stretch. I think I characterized it pretty clearly when I said that we're not here to help you complete your project, we're here to teach you how to do it yourself. The overall forum philosophy is that people asking for help is akin to the student/teacher paradigm. If you're not comfortable with that type of help, then ignore it and wait to see if anyone with the knowledge you're looking for feels the same way that you do.

this code is such a small aspect of my project that I was hoping that it wouldn't be this difficult for someone to help me.

The difficulty isn't in helping you, it's on agreeing with what we define "help" as.

JeffCoalfax:
Do I have to use const int ledPin = 13 to define the pin OR is there a way to define using pins 2, 3, ,4, and 5 as constants? I am using the code from the Arduino playground, Blink Without Delay which starts with the constant using pin 13.

13 is convenient because most Arduino's already give you an LED connected to pin 13 through a series resistor, meaning you can upload the code to the board without adding any hardware. You're welcome to use whichever pin you like; you aren't tethered to pin 13.

Is there a way to string multiple pins in the blink without delay code?

Depends on what you mean by "string multiple pins together" ?

Do you mean one after another? All at the same time? Binary counter? Random? The answer is yes to all, but the implementation is different.

Which is something that you learn to figure out by actually playing with the devices. If you can't figure it out, then you truly don't understand it enough; it's that simple.

You're right, I played with it and got the LED to blink at different intervals. Maybe you're trying to teach me 5th grade algebra when I need to learn 1st grade addition. What's simple to you is not simple to me. and I'm sure if roles were reversed I'd bend over backwards to help you.

The responses certainly haven't been warm and friendly, but calling it banter is a bit of a stretch.

I don't think that's a stretch at all. All I asked for was help but what I got in return was you guys trying to teach me how to read Greek.

here are many people who come here and can't understand it after an explanation and that's understandable.

Again, what is understandable to you if far from understandable to me.

is an apparent lack of effort, which is why you see posts about how quickly you respond with "looked at it, still don't understand it" type responses.

LACK OF EFFORT? Maybe you missed it but I spent well over 24 hours reading and trying to understand HIGH, LOW, int, boolean, array, if's, delays, millis etc and to apply the same examples that everyone pasted. I'm not an idiot, I can search arduino and google just as well and anybody. my problem is that I don't understand your language.

also a stretch. I think I characterized it pretty clearly when I said that we're not here to help you complete your project,

Show me? You're not here to help, you're here to give me your interpretation of some unwritten rule that you're "here to help but you're not really here to help". (which makes no sense to me)

we're here to teach you how to do it yourself.

If this is teaching me how to do it myself, you lost me when you said you're helping, all you're doing is parading around like you're better than me for the simple fact that I have no clue how to write code nor do I understand it at its fundamental root.

The thing that gets me is that you and everyone else that has read this, know what and how to achieve what I'm asking. However, instead of helping, all you want to do is belittle my intelligence.

The brain power and time it took you to respond you could have channeled that into a positive that actually would have HELPED me. Instead you chose to continue with the, "you don't understand what this site is all about" banter.

Look, I got it. You don't want to help me, but there are others that are willing to so please if all you want to do is continue down this road, save yourself some time and don't respond at all.

13 is convenient because most Arduino's already give you an LED connected to pin 13 through a series resistor, meaning you can upload the code to the board without adding any hardware. You're welcome to use whichever pin you like; you aren't tethered to pin 13.

understood, I changed it to 2 but I need to understand how to get 3,4 and 5 in there as well. so that I can have them blink with this code. Everything that I try gives me an error.

Do you mean one after another? All at the same time? Binary counter? Random? The answer is yes to all, but the implementation is different

I mean, one after another

JeffCoalfax:
Look, I got it. You don't want to help me, but there are others that are willing to so please if all you want to do is continue down this road, save yourself some time and don't respond at all.

Fair enough, it looks like my type of help isn't what you're looking for and the way I post is apparently very aggravating to you, so I'll let you work it out (hopefully) with someone else.

Everything that I try gives me an error.

We can't see
a) what you have tried
b) what the errors were.

You're making it very hard to help you.

Blink without delay analogy:

A call to "delay ()" is like setting your alarm clock and going to sleep until it goes off - you can't get any work done, because you're busy sleeping.

Instead, think about the egg boiling analogy.
In fact, let's simplify it, and have a flashlight, which you have to flash, with an "on" time of 20 seconds (human, not microprocessor timescales here) and an "off" time of 30 seconds.

You have a wall-clock that has a seconds hand and a sheet of paper with a pencil.

Fairly quickly, you'll see that the actual action of switching the flashlight on or off takes virtually no time at all, and happens only every 20 or 30 seconds.
Most of the rest of the time, you're just looking at the clock, seeing if your 20 or 30 seconds are up, but the important thing is, you're not sleeping.

Now, in between times, you could be performing tasks that operate at different rates, like making a cup of tea, or boiling eggs to different levels of hardness, answering the phone, answering the front door...
The key is to break the sequence down into small lumps that won't interfere with the others.
Fill, kettle, plug kettle in, switch kettle on(is kettle boiling?), get cup(is kettle boiling?), get spoon(is kettle boiling?), get tea(is kettle boiling?), get milk (is kettle boiling?),...

Now, "loop()" provides you with a mechanism for repeatedly doing things, like looking at the "millis()" wallclock.

Wow! How did this thread escalate totally out of control? Halloween, I bet!

Beware of the zombies.

understood, I changed it to 2 but I need to understand how to get 3,4 and 5 in there as well. so that I can have them blink with this code. Everything that I try gives me an error.

What errror?

Maybe you're trying to teach me 5th grade algebra when I need to learn 1st grade addition. What's simple to you is not simple to me. and I'm sure if roles were reversed I'd bend over backwards to help you.

I think that where we are having difficulty is that we have no idea that you need help with 1st grade addition. So, we assume that its 5th grade algebra that you need help with, since that is what you are asking questions about.

If we answer the question(s) in ways that you don't understand, you bear some responsibility to let us know that. Berating people who are trying to help you isn't the best response.

If we know that your difficulty isn't with 5th grade algebra, but is more basic than that, we can back up and start with more basic answers.

If, on the other hand, we assume that, though the question was about 5th grade algebra, you don't even understand 1st grade addition, you'd be even more insulted, and rightly so.

Mr. Gammon,

now that looks like some information I can use. when I get to my laptop I will try to understand those codes that you have on your site. it seems like it's laid out in a way I can understand but when I start trying to apply it I will probably have lots if questions.

Thanks

PaulS:

Maybe you're trying to teach me 5th grade algebra when I need to learn 1st grade addition. What's simple to you is not simple to me. and I'm sure if roles were reversed I'd bend over backwards to help you.

I think that where we are having difficulty is that we have no idea that you need help with 1st grade addition. So, we assume that its 5th grade algebra that you need help with, since that is what you are asking questions about.

If we answer the question(s) in ways that you don't understand, you bear some responsibility to let us know that. Berating people who are trying to help you isn't the best response.

If we know that your difficulty isn't with 5th grade algebra, but is more basic than that, we can back up and start with more basic answers.

If, on the other hand, we assume that, though the question was about 5th grade algebra, you don't even understand 1st grade addition, you'd be even more insulted, and rightly so.

can you please help me now?