Arduino code uploaded success but nothing happens arduino uno

I am new in coding, i got problem that Arduino code uploaded success but coding is not working or nothing happens in arduino uno board.

The problem is :

  1. first I upload irremote decoding code, it was success. the code is:
t
#include <IRremote.hpp>
int IRpin = 4;
IRrecv IR(IRpin);
decode_results koderemoteku;
String kodeKu;
int relayPin = 7;


void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
IR.enableIRIn();
pinMode (relayPin,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  while (IR.decode(&koderemoteku)==0);
IR.resume();
if (koderemoteku.value==0xFF9867){
  kodeKu="NOL";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFFA25D){
  kodeKu="SATU";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF629D){
  kodeKu="DUA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE21D){
  kodeKu="TIGA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF22DD){
  kodeKu="EMPAT";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF02FD){
  kodeKu="LIMA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFC23D){
  kodeKu="ENAM";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE01F){
  kodeKu="TUJUH";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFA857){
  kodeKu="DELAPAN";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF906F){
  kodeKu="SEMBILAN";
  Serial.println(kodeKu);
 }
if (koderemoteku.value==0xff6897){
  kodeKu="BINTANG";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFFB04F){
  kodeKu="PAGAR";
  Serial.println(kodeKu);  
 }
if (koderemoteku.value==0xFF18E7){
  kodeKu="UP";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF4AB5){
  kodeKu="DOWN";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF5AA5){
  kodeKu="FORWARD";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF10EF){
  kodeKu="REWIND";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFF38C7){
  kodeKu="OK";
  Serial.println(kodeKu);
   digitalWrite(relayPin, LOW);// set relay to OFF at the begining
}
   else{
    digitalWrite(relayPin,HIGH);
   }
   
 }

then when i add next coding as below, it was not working at all.


#include <IRremote.h>
int IRpin = 4;
IRrecv IR(IRpin);
decode_results koderemoteku;
String kodeKu;

int relayPin = 7;

int motor1pin1 = 8; //in1 motor1
int motor1pin2 = 12; //in2 motor1
int motor1pin3 = 11; //enable motor1
int mSpeed1 = 50;

int motor2pin1 = A0; //in1 motor2
int motor2pin2 = A1; //in2 motor2
int motor2pin3 = 10; //enable motor2
int mSpeed2 = 50;

int motor3pin1 = A2; //in1 motor3
int motor3pin2 = A3; //in2 motor3
int motor3pin3 = 9; //enable motor3 
int mSpeed3 = 50;

int motor4pin1 = A4; //in1 motor4
int motor4pin2 = A5; //in2 motor4
int motor4pin3 = 6; //enable motor4
int mSpeed4 = 50;

void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
delay (200);
Serial.println ("setup()");
IR.enableIRIn();
  pinMode (IRpin,OUTPUT);
  
  pinMode (relayPin,OUTPUT);
  
  pinMode(motor1pin1, OUTPUT); //in1 pin motor1
  pinMode(motor1pin2, OUTPUT); //in2 pin motor1
  pinMode(motor1pin3, OUTPUT); //enable pin motor1
  
  pinMode(motor2pin1, OUTPUT); //in1 pin motor2
  pinMode(motor2pin2, OUTPUT); //in2 pin motor2
  pinMode(motor2pin3, OUTPUT); //enable pin motor2
  
  pinMode(motor3pin1, OUTPUT); //in1 pin motor3
  pinMode(motor3pin2, OUTPUT); //in2 pin motor3
  pinMode(motor3pin3, OUTPUT); //enable pin motor3
  
  pinMode(motor4pin1, OUTPUT); //in1 pin motor4
  pinMode(motor4pin2, OUTPUT); //in2 pin motor4
  pinMode(motor4pin3, OUTPUT); //enable pin motor4
}

void loop() {
  // put your main code here, to run repeatedly:
  while (IR.decode(&koderemoteku)==0);
  IR.resume();
   
if (koderemoteku.value==0xFF9867){
  kodeKu="NOL";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFFA25D){
  kodeKu="SATU";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF629D){
  kodeKu="DUA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE21D){
  kodeKu="TIGA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF22DD){
  kodeKu="EMPAT";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF02FD){
  kodeKu="LIMA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFC23D){
  kodeKu="ENAM";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE01F){
  kodeKu="TUJUH";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFA857){
  kodeKu="DELAPAN";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF906F){
  kodeKu="SEMBILAN";
  Serial.println(kodeKu);
 }
if (koderemoteku.value==0xff6897){
  kodeKu="BINTANG";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFFB04F){
  kodeKu="PAGAR";
  Serial.println(kodeKu);  
 }
if (koderemoteku.value==0xFF18E7){
  kodeKu="UP";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF4AB5){
  kodeKu="DOWN";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF5AA5){
  kodeKu="FORWARD";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF10EF){
  kodeKu="REWIND";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFF38C7){
  kodeKu="OK";
  Serial.println(kodeKu);
   }
 if (kodeKu=="OK"){
  digitalWrite(relayPin,LOW);
 } else  {
      digitalWrite(relayPin,HIGH);
  }
 if (kodeKu=="SATU"){
     digitalWrite (motor1pin1,HIGH);
     digitalWrite (motor1pin2,LOW);
     analogWrite (mSpeed1,50);
  }
  else
     {
      digitalWrite (motor1pin1,LOW);
      digitalWrite (motor1pin2,LOW);
      analogWrite (mSpeed1,0);
   }
   if (kodeKu=="FORWARD"){
   (mSpeed1 = mSpeed1+10);
    if (mSpeed1 > 255)
    mSpeed1 = 50;   
    analogWrite(motor1pin3, mSpeed1);
   }
if (kodeKu=="REWIND"){
   (mSpeed1 = mSpeed1-10);
    if (mSpeed1 < 0)
    mSpeed1 = 0;t
    analogWrite(motor1pin3, mSpeed1);
  }
 if (kodeKu=="DUA"){
     digitalWrite (motor2pin1,HIGH);
     digitalWrite (motor2pin2,LOW);
     analogWrite (mSpeed2,50);
  }
  else
     {
      digitalWrite (motor2pin1,LOW);
      digitalWrite (motor2pin2,LOW);
      analogWrite (mSpeed2,0);
     }
   if (kodeKu=="UP"){
   (mSpeed2 = mSpeed2+10);
    if (mSpeed2 > 255)
    mSpeed2 = 50;   
    analogWrite(motor2pin3, mSpeed2);
   }
if (kodeKu=="DOWN"){
   (mSpeed2 = mSpeed2-10);
    if (mSpeed2 < 0)
    mSpeed2 = 0;
    analogWrite(motor2pin3, mSpeed2);
  }
  if (kodeKu=="TIGA"){
     digitalWrite (motor3pin1,HIGH);
     digitalWrite (motor3pin2,LOW);
     analogWrite (mSpeed3,50);
  }
  else
     {
      digitalWrite (motor3pin1,LOW);
      digitalWrite (motor3pin2,HIGH);
      analogWrite (mSpeed3,50);
     }
   if (kodeKu=="PAGAR"){
   (mSpeed3 = mSpeed3+10);
    if (mSpeed3 > 255)
    mSpeed3 = 50;   
    analogWrite(motor3pin3, mSpeed3);
   }
if (kodeKu=="BINTANG"){
   (mSpeed3 = mSpeed3-10);
    if (mSpeed3 < 0)
    mSpeed3 = 0;
    analogWrite(motor3pin3, mSpeed3);
  }
  if (kodeKu=="NOL"){
     digitalWrite (motor3pin1,LOW);
     digitalWrite (motor3pin2,LOW);
     analogWrite (mSpeed3,0);
   }
  if (kodeKu=="EMPAT"){
     digitalWrite (motor4pin1,HIGH);
     digitalWrite (motor4pin2,LOW);
     analogWrite (mSpeed4,50);
  }
  else
     {
      digitalWrite (motor4pin1,LOW);
      digitalWrite (motor4pin2,HIGH);
      analogWrite (mSpeed4,50);
     }
   if (kodeKu=="SEMBILAN"){
   (mSpeed4 = mSpeed3+10);
    if (mSpeed4 > 255)
    mSpeed4 = 50;   
    analogWrite(motor4pin3, mSpeed4);
   }
if (kodeKu=="TUJUH"){
   (mSpeed4 = mSpeed4-10);
    if (mSpeed4 < 0)
    mSpeed4 = 0;
    analogWrite(motor4pin3, mSpeed4);
  }
  if (kodeKu=="DELAPAN"){
     digitalWrite (motor4pin1,LOW);
     digitalWrite (motor4pin2,LOW);
     analogWrite (mSpeed4,0);     
  }
}
  

coding uploade success but not working and nothing happens.

Since it was no error at all, i do not know what is going on. can any body help me what should I do next to make this code working. Thank you

Your post was MOVED to its current location as it is more suitable.

Please follow the advice given in the link below when posting code, in particular the section entitled 'Posting code and common code problems'

Use code tags (the </> icon above the compose window) to make it easier to read and copy for examination

You should post code by using code-tags
There is an automatic function for doing this in the Arduino-IDE
just three steps

  1. press Ctrl-T for autoformatting your code
  2. do a rightclick with the mouse and choose "copy for forum"
  3. paste clipboard into write-window of a posting

best regards Stefan

1 Like

So it no longer displays the names of the IR input values on Serial Monitor?

After Serial.begin(9600);, put delay(200); and Serial.println("setup()");. That way you should get at least one message, and another if the sketch resets because of a power problem.

1 Like

#include <IRremote.h>
int IRpin = 4;
IRrecv IR(IRpin);
decode_results koderemoteku;
String kodeKu;

int relayPin = 7;

int motor1pin1 = 8; //in1 motor1
int motor1pin2 = 12; //in2 motor1
int motor1pin3 = 11; //enable motor1
int mSpeed1 = 50;

int motor2pin1 = A0; //in1 motor2
int motor2pin2 = A1; //in2 motor2
int motor2pin3 = 10; //enable motor2
int mSpeed2 = 50;

int motor3pin1 = A2; //in1 motor3
int motor3pin2 = A3; //in2 motor3
int motor3pin3 = 9; //enable motor3 
int mSpeed3 = 50;

int motor4pin1 = A4; //in1 motor4
int motor4pin2 = A5; //in2 motor4
int motor4pin3 = 6; //enable motor4
int mSpeed4 = 50;

void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
IR.enableIRIn();
  pinMode (IRpin,OUTPUT);
  
  pinMode (relayPin,OUTPUT);
  
  pinMode(motor1pin1, OUTPUT); //in1 pin motor1
  pinMode(motor1pin2, OUTPUT); //in2 pin motor1
  pinMode(motor1pin3, OUTPUT); //enable pin motor1
  
  pinMode(motor2pin1, OUTPUT); //in1 pin motor2
  pinMode(motor2pin2, OUTPUT); //in2 pin motor2
  pinMode(motor2pin3, OUTPUT); //enable pin motor2
  
  pinMode(motor3pin1, OUTPUT); //in1 pin motor3
  pinMode(motor3pin2, OUTPUT); //in2 pin motor3
  pinMode(motor3pin3, OUTPUT); //enable pin motor3
  
  pinMode(motor4pin1, OUTPUT); //in1 pin motor4
  pinMode(motor4pin2, OUTPUT); //in2 pin motor4
  pinMode(motor4pin3, OUTPUT); //enable pin motor4
}

void loop() {
  // put your main code here, to run repeatedly:
  while (IR.decode(&koderemoteku)==0);
  IR.resume();
   
if (koderemoteku.value==0xFF9867){
  kodeKu="NOL";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFFA25D){
  kodeKu="SATU";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF629D){
  kodeKu="DUA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE21D){
  kodeKu="TIGA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF22DD){
  kodeKu="EMPAT";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF02FD){
  kodeKu="LIMA";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFC23D){
  kodeKu="ENAM";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFE01F){
  kodeKu="TUJUH";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFFA857){
  kodeKu="DELAPAN";
  Serial.println(kodeKu);
  }
 if (koderemoteku.value==0xFF906F){
  kodeKu="SEMBILAN";
  Serial.println(kodeKu);
 }
if (koderemoteku.value==0xff6897){
  kodeKu="BINTANG";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFFB04F){
  kodeKu="PAGAR";
  Serial.println(kodeKu);  
 }
if (koderemoteku.value==0xFF18E7){
  kodeKu="UP";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF4AB5){
  kodeKu="DOWN";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF5AA5){
  kodeKu="FORWARD";
  Serial.println(kodeKu);
}
if (koderemoteku.value==0xFF10EF){
  kodeKu="REWIND";
  Serial.println(kodeKu);
  }
if (koderemoteku.value==0xFF38C7){
  kodeKu="OK";
  Serial.println(kodeKu);
   }
 if (kodeKu=="OK"){
  digitalWrite(relayPin,LOW);
 } else  {
      digitalWrite(relayPin,HIGH);t
  }
 if (kodeKu=="SATU"){
     digitalWrite (motor1pin1,HIGH);
     digitalWrite (motor1pin2,LOW);
     analogWrite (mSpeed1,50);
  }
  else
     {
      digitalWrite (motor1pin1,LOW);
      digitalWrite (motor1pin2,LOW);
      analogWrite (mSpeed1,0);
   }
   if (kodeKu=="FORWARD"){
   (mSpeed1 = mSpeed1+10);
    if (mSpeed1 > 255)
    mSpeed1 = 50;   
    analogWrite(motor1pin3, mSpeed1);
   }
if (kodeKu=="REWIND"){
   (mSpeed1 = mSpeed1-10);
    if (mSpeed1 < 0)
    mSpeed1 = 0;
    analogWrite(motor1pin3, mSpeed1);
  }
 if (kodeKu=="DUA"){
     digitalWrite (motor2pin1,HIGH);
     digitalWrite (motor2pin2,LOW);
     analogWrite (mSpeed2,50);
  }
  else
     {
      digitalWrite (motor2pin1,LOW);
      digitalWrite (motor2pin2,LOW);
      analogWrite (mSpeed2,0);
     }
   if (kodeKu=="UP"){
   (mSpeed2 = mSpeed2+10);
    if (mSpeed2 > 255)
    mSpeed2 = 50;   
    analogWrite(motor2pin3, mSpeed2);
   }
if (kodeKu=="DOWN"){
   (mSpeed2 = mSpeed2-10);
    if (mSpeed2 < 0)
    mSpeed2 = 0;
    analogWrite(motor2pin3, mSpeed2);
  }
  if (kodeKu=="TIGA"){
     digitalWrite (motor3pin1,HIGH);
     digitalWrite (motor3pin2,LOW);
     analogWrite (mSpeed3,50);
  }
  else
     {
      digitalWrite (motor3pin1,LOW);
      digitalWrite (motor3pin2,HIGH);
      analogWrite (mSpeed3,50);
     }
   if (kodeKu=="PAGAR"){
   (mSpeed3 = mSpeed3+10);
    if (mSpeed3 > 255)
    mSpeed3 = 50;   
    analogWrite(motor3pin3, mSpeed3);
   }
if (kodeKu=="BINTANG"){
   (mSpeed3 = mSpeed3-10);
    if (mSpeed3 < 0)
    mSpeed3 = 0;
    analogWrite(motor3pin3, mSpeed3);
  }
  if (kodeKu=="NOL"){
     digitalWrite (motor3pin1,LOW);
     digitalWrite (motor3pin2,LOW);
     analogWrite (mSpeed3,0);
   }
  if (kodeKu=="EMPAT"){
     digitalWrite (motor4pin1,HIGH);
     digitalWrite (motor4pin2,LOW);
     analogWrite (mSpeed4,50);
  }
  else
     {
      digitalWrite (motor4pin1,LOW);
      digitalWrite (motor4pin2,HIGH);
      analogWrite (mSpeed4,50);
     }
   if (kodeKu=="SEMBILAN"){
   (mSpeed4 = mSpeed3+10);
    if (mSpeed4 > 255)
    mSpeed4 = 50;   
    analogWrite(motor4pin3, mSpeed4);
   }
if (kodeKu=="TUJUH"){
   (mSpeed4 = mSpeed4-10);
    if (mSpeed4 < 0)
    mSpeed4 = 0;
    analogWrite(motor4pin3, mSpeed4);
  }
  if (kodeKu=="DELAPAN"){
     digitalWrite (motor4pin1,LOW);
     digitalWrite (motor4pin2,LOW);
     analogWrite (mSpeed4,0);     
  }
}
  

thank you for the fast respons Yes nothing appearing in serial monitor screen. at the working one (only irremote decode file), it was normal, i got what i want as the remote code.

I try your suggesting, but nothing happen, same as before. only code for irremote decode was working.

What do your debug prints tell you?

Why (the parentheses)?

Try using the IDE's auto format tool to make your code's structure more obvious

thank you for your respons, during the compiling i got the message :

D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino: In function 'void loop()':
D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino:59:33: warning: 'bool IRrecv::decode(decode_results*)' is deprecated: Please use IrReceiver.decode() without a parameter and IrReceiver.decodedIRData. . [-Wdeprecated-declarations]
while (IR.decode(&koderemoteku) == 0);
^
In file included from C:\Users\Deli\Documents\Arduino\libraries\IRremote\src/IRremote.h:197:0,
from D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino:2:
C:\Users\Deli\Documents\Arduino\libraries\IRremote\src/IRReceive.hpp:1402:6: note: declared here
bool IRrecv::decode(decode_results *aResults) {
^~~~~~
Sketch uses 8882 bytes (27%) of program storage space. Maximum is 32256 bytes.
Global variables use 763 bytes (37%) of dynamic memory, leaving 1285 bytes for local variables. Maximum is 2048 bytes.

then after uploading i got message :

D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino: In function 'void loop()':
D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino:59:33: warning: 'bool IRrecv::decode(decode_results*)' is deprecated: Please use IrReceiver.decode() without a parameter and IrReceiver.decodedIRData. . [-Wdeprecated-declarations]
while (IR.decode(&koderemoteku) == 0);
^
In file included from C:\Users\Deli\Documents\Arduino\libraries\IRremote\src/IRremote.h:197:0,
from D:\Data C\Documents\Arduino\sketch\test_partnerpong\test_partnerpong.ino:2:
C:\Users\Deli\Documents\Arduino\libraries\IRremote\src/IRReceive.hpp:1402:6: note: declared here
bool IRrecv::decode(decode_results *aResults) {
^~~~~~
Sketch uses 8882 bytes (27%) of program storage space. Maximum is 32256 bytes.
Global variables use 763 bytes (37%) of dynamic memory, leaving 1285 bytes for local variables. Maximum is 2048 bytes.

I have tried auto format before, it need parentesis ().
I have tried on another board arduino uno, i got same problem.

No, what do the debug prints in your code tell you, when you run it?

No. Not in the cases I highlighted.

sorry, it tell "done uploading"

So, no prints in the serial monitor at all?

yes , no print at all in serial monitor. usually in working one, when i pressed remote button, there is a blink in board led. but not working one codin nothing also.

Please put a single print at the end of setup, just to say "hi!".
Maybe also one at the very top of loop.

And 9600 bps is sooo 1970s. Please increase it.

sorry, how to change br 9600 to 5000?

No, increase the bit rate.
115200 is a good start.

Done Uploading, but in serial monitor some thing like this appeared : y-+aTUSG,
then nothing happen

Try to put yourself in my place.

I don't know what you've done, or what you expect to see.

Now, back to you.

Switch the serial monitor to 115200 also.

thank you for your effort to help me.