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. Controllers
  3. PiDome
  4. Send color data to sensors

Send color data to sensors

Scheduled Pinned Locked Moved PiDome
controllercolor
22 Posts 8 Posters 15.8k Views 6 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.
  • H hek

    Using something like:

    string hexstring = "FF3Fa0";
    int number = (int) strtol( &hexstring, NULL, 16);
    int r = number >> 16;
    int g = number >> 8 & 0xFF;
    int b = number & 0xFF;
    
    J Offline
    J Offline
    John
    Plugin Developer
    wrote on last edited by
    #13

    @hek
    Understood, i meant how they want to receive the data. @BulldogLowell would like to receive a long instead of an hex string (if i understood it correctly).

    That's the part i'm interested in.

    My Domotica project: http://www.pidome.org

    B 1 Reply Last reply
    0
    • J John

      @hek
      Understood, i meant how they want to receive the data. @BulldogLowell would like to receive a long instead of an hex string (if i understood it correctly).

      That's the part i'm interested in.

      B Offline
      B Offline
      BulldogLowell
      Contest Winner
      wrote on last edited by
      #14

      @John

      The 3byte message works here.

      Like I mentioned, a little function to put a bow in it.

      1 Reply Last reply
      0
      • A Offline
        A Offline
        arendst
        wrote on last edited by arendst
        #15

        I agree on the 6 character hex text value. Who will implement this when in 1.4.2?
        I have build a RGB neopixel led strip actuator and I would like to control the colours with V_RGB.
        Thanks in advance. 😉

        J 1 Reply Last reply
        0
        • A arendst

          I agree on the 6 character hex text value. Who will implement this when in 1.4.2?
          I have build a RGB neopixel led strip actuator and I would like to control the colours with V_RGB.
          Thanks in advance. 😉

          J Offline
          J Offline
          John
          Plugin Developer
          wrote on last edited by John
          #16

          @arendst
          Together with an user this is implemented in the current PiDome version available on the build server. He has posted a little tutorial on how to do this. So if you are a PiDome user: http://forum.pidome.org/viewtopic.php?id=58

          It is only available in the serial version for testing purposes.

          If all goes well, it will be extended to the MQTT version.

          [EDIT]It sends hex values which can be extracted as posted above[/EDIT]

          My Domotica project: http://www.pidome.org

          1 Reply Last reply
          0
          • A Offline
            A Offline
            arendst
            wrote on last edited by
            #17

            @John
            Thanks for the response. I use Domoticz as controller which just started to support MySensors. It works great for V_Light and V_Dimmer but lacks RGB color support as the MySensors library lacks color support too.

            @hek
            Why not update the MySensors library with S_Color and V_RGB. That way Domoticz and other controllers can support color natively.

            H 1 Reply Last reply
            0
            • A arendst

              @John
              Thanks for the response. I use Domoticz as controller which just started to support MySensors. It works great for V_Light and V_Dimmer but lacks RGB color support as the MySensors library lacks color support too.

              @hek
              Why not update the MySensors library with S_Color and V_RGB. That way Domoticz and other controllers can support color natively.

              H Offline
              H Offline
              hek
              Admin
              wrote on last edited by
              #18

              @arendst said:

              Why not update the MySensors library with S_Color and V_RGB. That way Domoticz and other controllers can support color natively.

              Wanted to add this in the next major release. But if this drags out (time-wise) I might add it to the next minor as well.

              1 Reply Last reply
              0
              • D Offline
                D Offline
                davy39
                wrote on last edited by
                #19

                Hi guys,
                Any news about that ?
                Is it now possible to use domoticz's rgb module to control an rgb led strip through an arduino mysensor node ?
                Thanks for your help.

                1 Reply Last reply
                0
                • D Offline
                  D Offline
                  davy39
                  wrote on last edited by
                  #20

                  up !
                  Could anyone help me to configure domoticz & mysensors in order to control analog RGB led strip ?

                  D 1 Reply Last reply
                  0
                  • siklosiS Offline
                    siklosiS Offline
                    siklosi
                    wrote on last edited by siklosi
                    #21

                    @davy39
                    I just made RGB controller for domoticz. So if it's not to late...

                    
                    #include <MySensor.h>
                    #include <SPI.h>
                    
                    #define RED_PIN 3
                    #define GREEN_PIN 5
                    #define BLUE_PIN 6
                    
                    #define NODE_ID 2
                    #define CHILD_ID 0
                    #define SKETCH_NAME "RGB_STRIP"
                    #define SKETCH_VERSION "1.0.0"
                    #define NODE_REPEAT false
                    
                    MySensor gw;
                    
                    long RGB_values[3] = {0, 0, 0};
                    float dimmer;
                    
                    void setup() {
                    
                    
                      pinMode(RED_PIN, OUTPUT);
                      pinMode(GREEN_PIN, OUTPUT);
                      pinMode(BLUE_PIN, OUTPUT);
                    
                      gw.begin(incomingMessage, NODE_ID, NODE_REPEAT);
                      gw.sendSketchInfo(SKETCH_NAME, SKETCH_VERSION);
                      gw.present(CHILD_ID, S_RGB_LIGHT, "RGB Strip", false);
                      gw.request(CHILD_ID, V_RGB);
                    }
                    
                    void loop() {
                      gw.process();
                    }
                    
                    void incomingMessage(const MyMessage &message) {
                    
                      if (message.type == V_RGB) {
                    
                        String hexstring = message.getString();
                        long number = (long) strtol( &hexstring[0], NULL, 16);
                        RGB_values[0] = number >> 16;
                        RGB_values[1] = number >> 8 & 0xFF;
                        RGB_values[2] = number & 0xFF;
                      }
                      if (message.type == V_DIMMER) {
                        dimmer = message.getInt();
                        analogWrite(RED_PIN, int(RGB_values[0] * (dimmer / 100)));
                        analogWrite(GREEN_PIN, int(RGB_values[1] * (dimmer / 100)));
                        analogWrite(BLUE_PIN, int(RGB_values[2] * (dimmer / 100)));
                      }
                    
                      if (message.type == V_LIGHT) {
                        if (message.getInt() == 0) {
                          digitalWrite(RED_PIN, 0);
                          digitalWrite(GREEN_PIN, 0);
                          digitalWrite(BLUE_PIN, 0);
                    
                        }
                        if (message.getInt() == 1) {
                          analogWrite(RED_PIN, int(RGB_values[0] * (dimmer / 100)));
                          analogWrite(GREEN_PIN, int(RGB_values[1] * (dimmer / 100)));
                          analogWrite(BLUE_PIN, int(RGB_values[2] * (dimmer / 100)));
                        }
                      }
                    }
                    
                    
                    1 Reply Last reply
                    1
                    • D davy39

                      up !
                      Could anyone help me to configure domoticz & mysensors in order to control analog RGB led strip ?

                      D Offline
                      D Offline
                      Dylano
                      wrote on last edited by
                      #22

                      @davy39 said:

                      up !
                      Could anyone help me to configure domoticz & mysensors in order to control analog RGB led strip ?

                      Is this option working?
                      Or perhaps a RGBW strip...

                      Domoticz, with a lot of working hardware, include mysensors :-)
                      OpenPLI, RuneAudio, Solarmeter, etc......

                      Not a great builder of software and hardware, more a user...
                      Only i try to do my best :-(

                      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


                      24

                      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