Display Temperature on Wiser 2

Discussion in 'C-Bus Wiser 2 Controller' started by chrisd4021, May 12, 2016.

  1. chrisd4021

    chrisd4021

    Joined:
    May 12, 2011
    Messages:
    44
    Likes Received:
    0
    Location:
    South Yorkshire
    Hi Guys,

    I have a bit of a problem using this, sorry i posted on the old thread originally...

    http://www.cbusforums.com/forums/showthread.php?t=10022

    I'm using the same code above to show temperature on a Wiser 2. I have 2 x 5104 DTSI (digital temp sensor input unit) and 3 x5100DTST (digital probe).. 2 probes on the first input and 1 probe on the second

    As a test the first device (254) with 2 probes the temperature is outputted perfectly on the wiser using


    {Global Variable}
    TempOutsideReal : real;
    TempOutsideString : string;

    {Initialisation}
    TempOutsideReal := 0;

    once (Second = 10) then // IMPORTANT - don't run this code every cycle - once a minute is ample
    begin
    TempOutsideReal := GetRealIBSystemIO("Measurement App Real Value", 254, 254, 1); {changing 254,1 to 254, 2 just for testing)
    Format(TempOutsideString, TempOutsideReal:0:1, 'C');
    SetStringSystemIO("TempOutside", TempOutsideString);
    end;

    On the second device (252) with 1 probe the output just flashes up on the wiser briefly then defaults back to 0.0C with the following line changed to reflect the device ID 252

    TempOutsideReal := GetRealIBSystemIO("Measurement App Real Value", 254, 252, 1);

    All 3 probes are added to Measurement Manager and are displaying correctly there and also on the PICED wiser testing page as a Level/system I/0/Key Function (Status)/System I/O Variable.



    Any thoughts?
    Thanks Guys...
    Attached Images
     

    Attached Files:

    chrisd4021, May 12, 2016
    #1
  2. chrisd4021

    Ashley

    Joined:
    Dec 1, 2005
    Messages:
    1,524
    Likes Received:
    173
    Location:
    Adelaide, Australia
    Since your logic is only running every minute it can only update the display once per minute. If it flashes up briefly correctly then straight away goes back to zero, something else in your logic must be updating the display.

    As an aside, if you only want something to run every minute just put a delay at the end of the module. Yours executes every 200mS to check the time, a delay pauses the module completely.
     
    Ashley, May 12, 2016
    #2
  3. chrisd4021

    chrisd4021

    Joined:
    May 12, 2011
    Messages:
    44
    Likes Received:
    0
    Location:
    South Yorkshire
    Hi Ashley,

    Thanks for the reply...

    In terms of the logic I don't understand why whilst testing on the Piced workspace(with logic running) page the user defined system IO shows the correct temperature and updates for ALL temperature probes.

    I was thinking, probably wrongly, that if the User defined IO is displaying on the Piced then it's good to go on the Wiser

    I've copied the same logic code, changing the global variable and initialisation accordingly and widget for the first device (254) and this displays fine on the wiser 2 but still not for the second device (100)(i've changed the device Id from 252 just to eliminate another thing)

    As part of the testing I've also put a 3rd probe onto the 3rd channel of device (252) and used the exact logic that doesn't work on device 100 and that works fine also.
    once (Second = 10) then // IMPORTANT - don't run this code every cycle - once a minute is ample
    begin
    TempOutsideReal := GetRealIBSystemIO("Measurement App Real Value", 254, 254, 3);
    Format(TempOutsideString, TempOutsideReal:0:1, 'C');
    SetStringSystemIO("TempOutsideString", TempOutsideString);
    end;

    All signs seem to pointing to the device (100) as when ever i connect to device 254 all works as expected, as soon as i implement the same code on device 100 i don't get anything on the wiser other than 0.0C

    once (Second = 10) then // IMPORTANT - don't run this code every cycle - once a minute is ample
    begin
    TempBathroomReal := GetRealIBSystemIO("Measurement App Real Value", 254, 100, 1);
    Format(TempBathroomString, TempBathroomReal:0:1, 'C');
    SetStringSystemIO("TempBathroomString", TempBathroomString);
    end;


    I don't have any other logic running that involves the outside temperature only logic bits for the bathroom temperature so i wouldn't imagine anything is involved.

    It's all a bit odd
     
    chrisd4021, May 13, 2016
    #3
  4. chrisd4021

    chrisd4021

    Joined:
    May 12, 2011
    Messages:
    44
    Likes Received:
    0
    Location:
    South Yorkshire
    Hi,

    So just an update:

    Loaded toolkit this morning with the intention of physically swapping the 2 temp devices locations, the scan found all the devices as normal but the the temp sensor i'm having issues with shows "secondary firmware version was not loaded" when i try to make changes. Tried powering down, reloading, and checked physical connections

    However it's still showing actual temperature reading when using Piced-testing page

    I'm starting to think maybe it's worth swapping for a new one?.

    Cheers
     

    Attached Files:

    chrisd4021, May 15, 2016
    #4
  5. chrisd4021

    chrisd4021

    Joined:
    May 12, 2011
    Messages:
    44
    Likes Received:
    0
    Location:
    South Yorkshire
    Ok Problem solved..

    I have swapped the 5104 DTSI (digital temp sensor input unit) and all working as expected using the same logic etc.

    for some reason the old one worked fine but just didn't broadcast to the wiser

    I'll leave that to the clever folks to figure out why...
     
    chrisd4021, May 19, 2016
    #5
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.