Navigation

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

    Posts made by Christian Rogne

    • RE: Help to send string as payload

      I have tried different things, the thing I have changed, is the type of value who would be send from the sensor.
      The default :
      send(msg.setSensor(i).set(temperature,1));

      gives me the following error in Control 4 :

      number 1
      string UPDATE
      parent 26
      room 1
      subcategory 0
      [string "Lua Code"]:120: bad argument #1 to 'SetVariable' (strValue should be a string) (ReceivedFromProxy)
      altid 5;0
      id 40
      temperature 23.5

      I tried to add the lines :

      char charVal[6]; //temporarily holds data from vals
      dtostrf(temperature,6,1,charVal);

      and changed the send to :

      send(msg.setSensor(i).set(charVal));

      But the same happens

      If I cast the temperature to int I got the it, but without decimals

      If I try with :

      String  string = "24,8";
      send(msg.setSensor(i).set(string));
      
      No error in Control4, but the sent temperature is 1
      posted in Development
      Christian Rogne
      Christian Rogne
    • RE: Help to send string as payload

      Maybe normally not. The Vera Controller reads the value nicely whatever which type this is. But the Vera are connected to a Control4 controller, this wants the value to be a string or int. I have managed the value to be an int, but then I do not have any decimals. So it would be nice if I could have it to be a string

      posted in Development
      Christian Rogne
      Christian Rogne
    • Help to send string as payload

      I am pretty new to programming and Arduino. I have made a temp sensor, and all are OK, but I need to send the value to the controller as a string, or a char. How can I convert the float to a string.

      I have tried with :

      char charVal[6];
      dtostrf(temperature,6,1,charVal);
      send (msg.setSensor(i).set(charVal));

      It converts right, but when I got the readings in the controller I got 20, if the temp actually are 23.

      Please help

      posted in Development
      Christian Rogne
      Christian Rogne