Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. My Project
  3. Dooya DC1802 sniffing and repeat

Dooya DC1802 sniffing and repeat

Scheduled Pinned Locked Moved My Project
2 Posts 2 Posters 977 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    Peter Gonczy
    wrote on last edited by
    #1

    I really get stucked at it and need some help.
    My main goal is to control my shutters with my arduino uno. I have this dooya dc1802 remote.
    What i can achive now is that:

    • list itemIm using this sketch https://github.com/sui77/SimpleRcScanner to receive the timings.

    • Then paste the timings here https://test.sui.li/oszi/
      and what i get is this:0_1553813721928_cf35f7d7-a976-4a25-9521-26fdac3b356f-image.png
      0_1553813761267_0deae841-f80c-4529-a752-ed463e8fa508-image.png

    And this is where i get stucket and don't know what to di whit this data. I already tried using the modified rc-switch lib with timing arrays without success, or simply put these High low changes manually lie this

    
    
    int TRANS = 10;
    
    
    void setup() {
      Serial.begin(9600);
      Serial.println("Ready...");
      pinMode(TRANS, OUTPUT);
    }
    
    void loop() {
      Serial.println("Start...");
      
      for(int i = 0; i<4; i++){
        digitalWrite(TRANS, LOW);
        delayMicroseconds(7800);      
        digitalWrite(TRANS, HIGH);
        delayMicroseconds(4660);
        digitalWrite(TRANS, LOW);    
        delayMicroseconds(1510);
        sendData();
      }
      Serial.println("Stop...");
      delay(5000);
      
      //stop
      
      
    }
    
    void sendData(){  
      for (const char* p = "0101110000110100110001111010010100111100"; *p; p++) {
        
        if (*p != '0'){
          digitalWrite(TRANS, HIGH);
          delayMicroseconds(660);
          digitalWrite(TRANS, LOW);
          delayMicroseconds(410);
        }else{
          digitalWrite(TRANS, HIGH);
          delayMicroseconds(310);
          digitalWrite(TRANS, LOW);
          delayMicroseconds(760);
        }
      }
      
    }
    

    But nothing works.

    HomerH 1 Reply Last reply
    0
    • P Peter Gonczy

      I really get stucked at it and need some help.
      My main goal is to control my shutters with my arduino uno. I have this dooya dc1802 remote.
      What i can achive now is that:

      • list itemIm using this sketch https://github.com/sui77/SimpleRcScanner to receive the timings.

      • Then paste the timings here https://test.sui.li/oszi/
        and what i get is this:0_1553813721928_cf35f7d7-a976-4a25-9521-26fdac3b356f-image.png
        0_1553813761267_0deae841-f80c-4529-a752-ed463e8fa508-image.png

      And this is where i get stucket and don't know what to di whit this data. I already tried using the modified rc-switch lib with timing arrays without success, or simply put these High low changes manually lie this

      
      
      int TRANS = 10;
      
      
      void setup() {
        Serial.begin(9600);
        Serial.println("Ready...");
        pinMode(TRANS, OUTPUT);
      }
      
      void loop() {
        Serial.println("Start...");
        
        for(int i = 0; i<4; i++){
          digitalWrite(TRANS, LOW);
          delayMicroseconds(7800);      
          digitalWrite(TRANS, HIGH);
          delayMicroseconds(4660);
          digitalWrite(TRANS, LOW);    
          delayMicroseconds(1510);
          sendData();
        }
        Serial.println("Stop...");
        delay(5000);
        
        //stop
        
        
      }
      
      void sendData(){  
        for (const char* p = "0101110000110100110001111010010100111100"; *p; p++) {
          
          if (*p != '0'){
            digitalWrite(TRANS, HIGH);
            delayMicroseconds(660);
            digitalWrite(TRANS, LOW);
            delayMicroseconds(410);
          }else{
            digitalWrite(TRANS, HIGH);
            delayMicroseconds(310);
            digitalWrite(TRANS, LOW);
            delayMicroseconds(760);
          }
        }
        
      }
      

      But nothing works.

      HomerH Offline
      HomerH Offline
      Homer
      wrote on last edited by
      #2

      @peter-gonczy I'm only a noob, but is that the whole sketch? Doesn't it need to be setup so it talks to the gateway?

      1 Reply Last reply
      0

      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

      With your input, this post could be even better 💗

      Register Login
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      28

      Online

      12.0k

      Users

      11.2k

      Topics

      113.4k

      Posts


      Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
      • Login

      • Don't have an account? Register

      • Login or register to search.
      • First post
        Last post
      0
      • MySensors
      • OpenHardware.io
      • Categories
      • Recent
      • Tags
      • Popular