WC8 boards rebooting.

Hello, just an update to my boards rebooting. In post 12 on Jan 7th I set up a spare board running my code. There were no ttl inputs or temp sensor inputs used. In the middle of the night, 7 days after startup, I received an email that the spare board rebooted. There are no transmitters or power cords/wires anywhere near the board. It is sitting in the middle of a shelf.
 
This seems to point to something in my code but for the life of me I have not been able to put my finger on what is causing the reboots. They seem to occur between 3-7 days on all of the boards that are in service.
 
Any help would greatly be appreciated.
 
Thanks,
Tm
 
 
This code was copied directly from the spare wc8.
START    
    SET VAR1 0  
    SET VAR2 0  
    SET VAR3 0  
    SET VAR4 0  
    SET VAR5 0  
    SET VAR6 0  
    SET VAR7 0  
    SET VAR8 0  
    SET RAM1 0  
    SET RAM2 0  
    SET RAM3 0  
    SET RAM4 0  
    SET RAM5 0  
    SET RAM6 0  
    SET RAM7 0  
    SET RAM8 0  
    DELAY 7000   
    CALLSUB AIP   
    DELAY 1000   
    CALLSUB TEMP1   
    DELAY 1000   
    CALLSUB IO   
    DELAY 1000   
    CALLSUB HB   
    DELAY 1000   
    EMAIL EM1   
LOOP:
    TSTEQ IP8 1  
    CALLSUB DELON   
    TSTEQ IP8 0  
    CALLSUB DELOFF   
    TSTEQ VAR7 OP5  
    CALLSUB TVOFF   
    TSTEQ IP8 1  
    CALLSUB PCHPWR   
    TSTEQ OP6 1  
    CALLSUB PCHSTART   
    TSTEQ IP1 1  
    CALLSUB PCHRUN   
    TSTEQ IPINV8[10000] 1  
    CALLSUB PCHDWN   
    TSTEQ VAR7 1  
    CALLSUB PCHDWN   
    TSTEQ VAR7 2  
    CALLSUB PCHDWN   
    TSTEQ VAR7 1  
    CALLSUB RST   
    TSTEQ VAR7 2  
    CALLSUB RST   
    TSTEQ VAR7 3  
    CALLSUB RST   
    TSTEQ VAR8 1  
    CALLSUB RESTART   
    TSTEQ VAR8 2  
    GOTO LOOP   
    SET RAM1 0  
    DIV CTS 2 RAM1
    SUB RAM8 RAM1 RAM3
    TSTNE RAM3 1  
    CALLSUB TIMER   
    ANDB RAM6 1024  
    CZ  AIP  
    ANDB RAM6 512  
    CZ  IO  
    ANDB RAM6 2048  
    CZ  HB  
    ANDB RAM6 4096  
    CZ  TEMP1  
    GOTO LOOP   
    END    

TIMER:
    SET RAM8 RAM1  
    INC RAM8   
    ADD RAM7 1 RAM7
    ANDB RAM6 -513 RAM6
    TSTEQ RAM7 7  
    ANDB RAM6 -1025 RAM6
    TSTEQ RAM7 14  
    ANDB RAM6 -1025 RAM6
    TSTEQ RAM7 21  
    ANDB RAM6 -1025 RAM6
    TSTEQ RAM7 28  
    ANDB RAM6 -1025 RAM6
    TSTEQ RAM7 15  
    ANDB RAM6 -2049 RAM6
    TSTEQ RAM7 30  
    ANDB RAM6 -14337 RAM6
    TSTEQ RAM7 30  
    CALLSUB MINUTES   
    TSTGE RAM7 30  
    SET RAM7 0  
    RET    

MINUTES:
    SET RAM1 0  
    DIV RAM6 32 RAM1
    ANDB RAM1 15 RAM1
    ADD RAM1 1 RAM1
    TSTEQ RAM1 10  
    CALLSUB REFRESH   
    MUL RAM1 32 RAM1
    ANDB RAM6 -481 RAM6
    ORB RAM6 RAM1 RAM6
    RET    

IO:
    ORB RAM6 512 RAM6
    SET RAM1 0  
    ORB RAM1 ALLOUTS RAM1
    MUL RAM1 256 RAM1
    ORB RAM1 ALLINS RAM1
    ANDB RAM1 -33488897 RAM1
    ORB RAM1 RAM2 RAM1
    ORB RAM1 VAR2 RAM1
    TSTEQ VAR1 RAM1  
    RET    

    WEBSET URL1 RAM1  
    SET VAR1 RAM1  
    RET    

AIP:
    ORB RAM6 1024 RAM6
    SET RAM1 1  
    SET RAM2 0  
    TSTGE AIP1 3  
    ADD 1 RAM1 RAM1
    TSTGE AIP1 130  
    ADD 1 RAM1 RAM1
    TSTGE AIP1 142  
    ADD 1 RAM1 RAM1
    TSTGE AIP1 185  
    ADD 1 RAM1 RAM1
    MUL RAM1 65536 RAM2
    SET RAM1 1  
    TSTGE AIP3 75  
    ADD 1 RAM1 RAM1
    TSTGE AIP3 107  
    ADD 1 RAM1 RAM1
    TSTGE AIP3 129  
    ADD 1 RAM1 RAM1
    MUL RAM1 4194304 RAM1
    ORB RAM2 RAM1 RAM2
    TSTEQ OP8 0  
    RET    

    SET VAR2 1  
    TSTGE AIP2 50  
    ADD 1 VAR2 VAR2
    TSTGE AIP2 59  
    ADD 1 VAR2 VAR2
    TSTGE AIP2 80  
    ADD 1 VAR2 VAR2
    MUL VAR2 524288 VAR2
    RET    

HB:
    ORB RAM6 2048 RAM6
    SET RAM1 0  
    DIV RAM6 268435456 RAM1
    ANDB RAM1 7 RAM1
    ADD RAM1 1 RAM1
    TSTEQ RAM1 7  
    SET RAM1 2  
    WEBSET URL4 RAM1  
    MUL RAM1 268435456 RAM1
    ANDB RAM6 -1879048193 RAM6
    ORB RAM6 RAM1 RAM6
    RET    

TEMP1:
    ORB RAM6 4096 RAM6
    SET RAM1 0  
    SET RAM3 0  
    ADD T1 5 RAM1
    DIV RAM1 10 RAM1
    TSTGE RAM1 100  
    ORB RAM3 134217728 RAM3
    TSTGE RAM1 100  
    SUB RAM1 100 RAM1
    ADD RAM1 RAM3 RAM3
    ADD T2 5 RAM1
    DIV RAM1 10 RAM1
    TSTGE RAM1 100  
    ORB RAM3 268435456 RAM3
    TSTGE RAM1 100  
    SUB RAM1 100 RAM1
    MUL RAM1 100 RAM1
    ADD RAM1 RAM3 RAM3
    ADD 11 5 RAM1
    DIV RAM1 10 RAM1
    TSTGE RAM1 100  
    ORB RAM3 536870912 RAM3
    TSTGE RAM1 100  
    SUB RAM1 100 RAM1
    MUL RAM1 10000 RAM1
    ADD RAM1 RAM3 RAM3
    ADD 11 5 RAM1
    DIV RAM1 10 RAM1
    TSTGE RAM1 100  
    ORB RAM3 1073741824 RAM3
    TSTGE RAM1 100  
    SUB RAM1 100 RAM1
    MUL RAM1 1000000 RAM1
    ADD RAM1 RAM3 RAM3
    TSTEQ VAR3 RAM3  
    RET    

    WEBSET URL2 RAM3  
    SET VAR3 RAM3  
    RET    

REFRESH:
    SET RAM1 0  
    ANDB RAM6 -1879064545 RAM6
    SET RAM2 0  
    SET VAR1 0  
    SET VAR3 0  
    SET VAR4 0  
    RET    

RESTART:
    SET VAR1 0  
    SET VAR2 0  
    SET VAR3 0  
    SET VAR4 0  
    SET VAR5 0  
    SET VAR6 0  
    SET VAR8 0  
    SET RAM1 0  
    SET RAM2 0  
    SET RAM3 0  
    SET RAM4 0  
    SET RAM5 0  
    SET RAM6 0  
    SET RAM7 0  
    SET RAM8 0  
    DELAY 1000   
    CALLSUB AIP   
    DELAY 1000   
    CALLSUB TEMP1   
    DELAY 1000   
    CALLSUB IO   
    DELAY 1000   
    CALLSUB HB   
    DELAY 1000   
    RET    

DELON:
    TSTEQ VAR7 1  
    RET    

    TSTEQ IP8[2000] 1  
    SET OP5 1  
    RET    

DELOFF:
    TSTEQ IPINV8[10000] 1  
    SET OP5 0  
    RET    

TVOFF:
    TSTEQ VAR7[300000] 1  
    SET OP5 0  
    RET    

PCHPWR:
    TSTEQ IP8 0  
    RET    

    TSTEQ VAR7 1  
    RET    

    TSTEQ VAR7 2  
    RET    

    TSTEQ VAR7 3  
    RET    

    TSTEQ OP6 1  
    RET    

    TSTEQ IP8[30000] 1  
    SET OP6 1  
    RET    

PCHSTART:
    TSTEQ IP8 0  
    RET    

    TSTEQ VAR7 1  
    RET    

    TSTEQ VAR7 2  
    RET    

    TSTEQ VAR7 3  
    RET    

    TSTEQ IP1 1  
    RET    

    TSTEQ IP2 0  
    RET    

    TSTEQ IP2[5000] 1  
    SET OP1 1  
    RET    

PCHRUN:
    TSTEQ IP8 0  
    RET    

    TSTEQ VAR7 1  
    RET    

    TSTEQ VAR7 2  
    RET    

    TSTEQ VAR7 3  
    RET    

    TSTEQ OP1 0  
    RET    

    TSTEQ OP1 1  
    SET OP1 0  
    SET VAR7 3  
    RET    

PCHDWN:
    TSTEQ OP6 0  
    RET    

    TSTEQ IP1 1  
    SET OP1 1  
    TSTEQ IP2 1  
    SET OP1 0  
    TSTEQ IP2[5000] 1  
    SET OP6 0  
    RET    

RST:
    TSTEQ IP8 1  
    RET    

    TSTEQ IP8 0  
    SET VAR7 0  
    RET    
 
 
If you could please let us know which version you are running on this spare board, we can setup one in our office to test out for you.
 
The spare board is v03.02.17f with a build date of Oct 15th 2013.
 
The other 3 boards in service which are also rebooting are v03.02.17f build date Jan 8th 2014.
 
Thanks,
Tim
 
Okay, we will get a board load up with your software to test for you. Your testing is that when EM1 is sent, then it considered reboot, right?
 
Thanks!  Having been running for two days now.  Haven't seen the problem yet. We will keep it running.
Since we don't have the ISY, we removed WEBSET command from the PLC program.  When we powered on the board, the start part did send one email.
Do you have rough time the problem happen, like  or always at certain hour, or certain IO happened?  Our test board has one temp sensor, but no IO connection on the AUX port at all.
 
My spare board rebooted after one week. The other boards reboot two days to a week. No set times just randomly. My spare board has no temp or io connections, just running the code and web setting to the isy every 5minutes I think it is. I wish I could give you more.

Thanks.
Tim
 
Hi TJF1960,
I had similar problem of random reboot.  After using shielded cable for 1-wire sensor, problem largely went away.  See my post on 11-24-2013.   
Niandong
 
The testing board we setup still working fine since 16th, it did not send any email after its first time powered on.  We will keep running that board to see if we can reproduce the problem.  We will keep tracking this problem, will not let it go without doing our best efforts. 
 
Thanks ndliu for your report of problem going away.  A lot of the problem is caused by environment noise, shield controller board and certain cables will make it working reliable.
 
Hi ndliu,
 
Thank you for your post. The spare board I have hooked up doesn't have any 1 wire sensors nor any ttl in/out hooked up. It is just running code and webset calls and it is rebooting every 5 to 7 days.
 
CAI,
 
if your board doesn't reboot by friday I am thinking it may have something to do with the webset calls since that would be the only difference between our setups.
 
What do you think?
 
Hi Tom,
 
There are others also running WEBSET but not rebooting. If you don't have any I/O, would it be possible to have noise going through power line to cause issue?  We will keep that testing board running to see if that board ever reboot.
 
TJF1960
 
Could this be a power issue?  What power supply do you have?  Is it possible  the building is losing power for a short time and the board is dropping out?  Possible the regulator is getting to hot and dropping out?
 
Hi CallRET, Thanks for the suggestions.
The power supplies on 2 of the 3 boards in service have been replaced to test the power supply theory. They are wal-wort style 9v regulated and filtered power supplies.
The spare board running code with no i/o or temp sensors attached is sitting in the open on a shelf, the nearest power cord is 1 foot away from it and the regulator is running cool.
These are in my house and I have not noticed any AC Mains issues, the voltages is pretty well regulated at 120-121Vrms all the time. I do have some other non related equipment which would malfunction if my ac mains were to fluctuate to much or momentarily drop out.
 
The boards rebooting all started to occur after starting to use my new code, well, and after swapping out the boards with the new bootloader installed. If its not anything to do with webset calls then there is something in my code causing an issue.
 
Thanks,
Tim
 
Back
Top