Navigation

    • Register
    • Login
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. Gokhan Tuncel
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Gokhan Tuncel

    @Gokhan Tuncel

    0
    Reputation
    1
    Posts
    147
    Profile views
    0
    Followers
    0
    Following
    Joined Last Online

    Gokhan Tuncel Follow

    Best posts made by Gokhan Tuncel

    This user hasn't posted anything yet.

    Latest posts made by Gokhan Tuncel

    • RE: Issue while interfacing NRF24L01 and RFID on same arduino

      @123cheatn I'm trying very similar project but could not achieve it 😞
      On master Arduino, RFID UID ID will be read and send to 4 other Arduinos; they will react regarding to UID ID (activate a relay, led etc.). Also those 4 Arduinos have MFRC522 but won't be sending RF UID ID's, just reacting depending on which UID ID read by their reader.
      I think I could not solve multiple SPI module code 😕 Here is my code;

      #include <SPI.h>
      #include <MFRC522.h>
      #include <RF24.h>
      #include <NRF24.h>
      #include <nRF24L01.h>
      NRF24 radio;
      
      unsigned long time_now = 0;
      int blinkled = 300;
      int value;
      int displace = 1000;
      unsigned long CountDownStarted = 0;
      
      int CountdownState = 0;
      
      int Set60State = 0;
      int Set90State = 0;
      int EngineState = 0;
      
      #define EnginePin 6
      #define StartPin 7
      #define Set90Pin 8
      #define Set60Pin 9
      #define TestLed 13
      
      String cardUID ;
      #define SS_RF 10
      #define RST 5
      #define SS_NRF 53
      MFRC522 mfrc522(SS_RF, RST);   // Create MFRC522 instance.
      
      
      void setup()
      { pinMode(EnginePin, OUTPUT);
        pinMode(StartPin, OUTPUT);
        pinMode(Set90Pin, OUTPUT);
        pinMode(Set60Pin, OUTPUT);
        Serial.begin(115200);   // Initiate a serial communication
        SPI.begin();      // Initiate  SPI bus
      
        radio.setAddress(0xD2);
        radio.begin(40, 53);
        radio.setChannel(124);
        radio.setRetries(0, 15);
        radio.setActive(true);
        pinMode(SS_RF, OUTPUT);
        pinMode(SS_NRF, OUTPUT);
        pinMode(TestLed, OUTPUT);
        digitalWrite(EnginePin, LOW);
        digitalWrite(StartPin, LOW);
        digitalWrite(Set90Pin, LOW);
        digitalWrite(Set60Pin, LOW);
        digitalWrite(TestLed, LOW);
      }
      void loop()
      {
        radio.startListening();
      
        if (CountdownState == 1) {
          CountDown();
        }
      
      
        // Look for new cards
        if ( ! mfrc522.PICC_IsNewCardPresent())
        {
          return;
        }
        // Select one of the cards
        if ( ! mfrc522.PICC_ReadCardSerial())
        {
          return;
        }
      
        //Show UID on serial monitor
        Serial.print("UID tag :");
        String content = "";
        byte letter;
        for (byte i = 0; i < mfrc522.uid.size; i++)
        {
          Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
          Serial.print(mfrc522.uid.uidByte[i], HEX);
          content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
          content.concat(String(mfrc522.uid.uidByte[i], HEX));
        }
        Serial.println();
        Serial.print("Message : ");
        content.toUpperCase();
      
      
        if (content.substring(1) == "E0 0A DD A4" || content.substring(1) == "C0 57 FE A7" || content.substring(1) == "B0 AB 9F A5" || content.substring(1) == "50 51 1B A4" )
        {
          if (EngineState == 0) {
            
            digitalWrite(EnginePin, HIGH);
            Serial.print(F("Sending Engine Code... "));
            bool sent = radio.send(0xD3, "E0 0A DD A4");
            bool sent2 = radio.send(0xD4, "E0 0A DD A4");
            bool sent3 = radio.send(0xD5, "E0 0A DD A4");
            bool sent4 = radio.send(0xD6, "E0 0A DD A4");
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            EngineState = 1;
            delay(50);
          }
      
          if (EngineState == 1) {
            bool sent = radio.send(0xD3, "E0 0A DD A4");
            bool sent2 = radio.send(0xD4, "E0 0A DD A4");
            bool sent3 = radio.send(0xD5, "E0 0A DD A4");
            bool sent4 = radio.send(0xD6, "E0 0A DD A4");
      
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            delay(100);
          }
        }
      
        if ((EngineState != 0) && (content.substring(1) == "CD 9E 08 75" || content.substring(1) == "7D A6 4F 75" || content.substring(1) == "8D 2B 55 75" || content.substring(1) == "DD D1 6C 3E" ))
        {
          if (CountdownState == 0) {
            Serial.println("Countdown Started");
            digitalWrite(StartPin, HIGH);
            delay(50);
            digitalWrite(StartPin, LOW);
            Serial.print(F("Sending Start Code... "));
            bool sent = radio.send(0xD3, "CD 9E 08 75");
            bool sent2 = radio.send(0xD4, "CD 9E 08 75");
            bool sent3 = radio.send(0xD5, "CD 9E 08 75");
            bool sent4 = radio.send(0xD6, "CD 9E 08 75");
      
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            CountdownState = 1;
          }
      
          if (CountdownState == 1) {
            Serial.print(F("Sending Start Code... "));
            bool sent = radio.send(0xD3, "CD 9E 08 75");
            bool sent2 = radio.send(0xD4, "CD 9E 08 75");
            bool sent3 = radio.send(0xD5, "CD 9E 08 75");
            bool sent4 = radio.send(0xD6, "CD 9E 08 75");
      
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            delay(100);
          }
      
        }
      
       
      
        if ((EngineState != 0) && (content.substring(1) == "7D 1C 65 5C" || content.substring(1) == "AD C2 5C 74"))
        {
          if (Set90State == 0) {
            
            digitalWrite(Set90Pin, HIGH);
            delay(50);
            digitalWrite(Set90Pin, LOW);
            Serial.print(F("Sending 90' Code... "));
            bool sent = radio.send(0xD3, "7D 1C 65 5C");
            bool sent2 = radio.send(0xD4, "7D 1C 65 5C");
            bool sent3 = radio.send(0xD5, "7D 1C 65 5C");
            bool sent4 = radio.send(0xD6, "7D 1C 65 5C");
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            Set90State = 1;
            delay(50);
      
          }
          else
          {
            
            bool sent = radio.send(0xD3, "7D 1C 65 5C");
            bool sent2 = radio.send(0xD4, "7D 1C 65 5C");
            bool sent3 = radio.send(0xD5, "7D 1C 65 5C");
            bool sent4 = radio.send(0xD6, "7D 1C 65 5C");
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            delay(100);
          }
        }
      
      
      
        if ((EngineState != 0) && (content.substring(1) == "20 C4 18 A4" || content.substring(1) == "1D AE 2C 75"))
        {
          if (Set60State == 0) {
            
            digitalWrite(Set60Pin, HIGH);
            delay(50);
            digitalWrite(Set60Pin, LOW);
           
            bool sent = radio.send(0xD3, "20 C4 18 A4");
            bool sent2 = radio.send(0xD4, "20 C4 18 A4");
            bool sent3 = radio.send(0xD5, "20 C4 18 A4");
            bool sent4 = radio.send(0xD6, "20 C4 18 A4");
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            Set60State = 1;
            delay(50);
      
          }
          else
          {
            
            bool sent = radio.send(0xD3, "20 C4 18 A4");
            bool sent2 = radio.send(0xD4, "20 C4 18 A4");
            bool sent3 = radio.send(0xD5, "20 C4 18 A4");
            bool sent4 = radio.send(0xD6, "20 C4 18 A4");
            Serial.println(sent ? "OK" : "failed");
            Serial.println(sent2 ? "OK" : "failed");
            Serial.println(sent3 ? "OK" : "failed");
            Serial.println(sent4 ? "OK" : "failed");
            delay(100);
          }
        }
      
      
        if (radio.available()) {
          char buf[32];
          uint8_t numBytes = radio.read(buf, sizeof(buf));
          Serial.print(F("Received: "));
          Serial.println(buf);
        }
      
      
      }
      
      
      void CountDown() {
        time_now = millis();
        value = 128 + 127 * cos(2 * PI / blinkled * time_now);
        analogWrite(TestLed, value);
        //Serial.println(value);
      }
      

      Do you have any idea to solve this?

      posted in Troubleshooting
      Gokhan Tuncel
      Gokhan Tuncel