Time manager use

davegrovdavegrov Junior MemberPosts: 114
I am working on improving my programming skills and wanted to work with Displaying time on a TP. I'm using the !i-Time manager App and was wondering how to display the current date, time, sunset and sunrise on a TP.
Can anyone show me some sample code to get started.

Comments

  • youstrayoustra Junior Member Posts: 135
    I haven't used !-TimeManager yet, but you can get day & time on a tp by creating a button, go to Programming Tab, make address port '0-setup port', then make address code be whatever Date/Time you want.

    Look at "Advanced" under address code. Lots of stuff.

    -Bill
  • Chip MoodyChip Moody Junior Member Posts: 727
    I haven't looked at the timemanager module recently, but if there is a command that will get you back the sunrise & sunset times, and you have a need to display those on a touch panel, you can simply assign a free address code (variable text channel in TPD3) to a button, then do a SEND_COMMAND TP,"'@TXT',<channel number>,Sunrise_Variable" to get the text from the CHAR variable Sunrise_Variable onto the touch panel. On G4 panels, you can use '^TXT-' instead of '@TXT' - in fact, you need to for channels over 255...

    - Chip
  • Time Manager

    I highly recommend using the Time Manager module if your system has internet access. The only trick is that he NetLinx Master must have at least one DNS address defined.

    The module utilizes web time servers for reference based upon the latitude and longitude of the system location. You get sunrise and sunset information with daylight savings time support. The module synchronizes the time and date on the Master and all connected touch panels.

    Use it with confidence.
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    There is nothing special to be done on a G4 panel to display the time and date from i!-TimeManager. The setup port channels automatically take the time and date from the master to display. On G3's, you have to periodically use the "CLOCK" SEND_COMMAND (I forget the exact syntax, but it's pretty straightforward, it's in the Tech Notes somewhere). G3's clocks keep their time, but G4's restart on reboot, but update automatically from the master they are connected to.
  • francalangiafrancalangia Junior Member Posts: 13
    query

    how would you query the time manager to determine the sunset time before it actually occurs. say i want to automatically turn on some lights 30 mins before sunset, or turn on some sprinklers an hour before sunrise.
    get the time and put it in a string and go from there.
  • viningvining X Member Posts: 4,348
    There are several ways to go about this but this is what I currently use. This is the Data Event for the !Time_Manager, just add to as I did below.


    DATA_EVENT   [vdvTmEvents]
    {
      STRING:
      {
        local_var char strUpper[30]
        local_var char strTemp[30]
        local_var char strTrash[30]
        strUpper = UPPER_STRING(DATA.TEXT)
        strTemp = DATA.TEXT
        strTrash = REMOVE_STRING(strTemp,'-',1)
        
        SELECT
        {
          (* SUNRISE *)
          ACTIVE (FIND_STRING(strUpper,'SUNRISE-',1)):
    	{
            SEND_STRING 0,"'Sunrise Time=',strTemp"
    	cSunrise = strTemp
            cSunrise = mid_string(cSunrise,2,4)
    	//send_command dvTP,"'@TXT',1,'Sunrise is ',cSunrise,' AM'"
    	}
          (* SUNSET *)
          ACTIVE (FIND_STRING(strUpper,'SUNSET-',1)):
    	{
            SEND_STRING 0,"'Sunset Time=',strTemp"
    	cSunset = strTemp
    	cSunset = left_string (cSunset,5)
    	nSunsetHour = atoi (left_string(cSunset,2))
    	if (nSunsetHour >= 13)
    	    
    	    {
    	    //cTrash = remove_string (cSunset,"':'",1)
    	    nTimePM_flag = 1
    	    nSunsetHour = nSunsetHour - 12
    	   // send_command dvTP,"'@TXT',2,'Sunset is '"//,itoa (nSunsetHour),':',cSunset,' PM'"
    	    }
    	else
    	    {
    	    nTimePM_flag = 0
    	   // send_command dvTP,"'@TXT',2,'Sunset is ',itoa (nSunsetHour),' AM'"
    	    }
    	}
          (* TIME ZONE NAME *)
          ACTIVE (FIND_STRING(strUpper,'TIMEZONE-',1)):
            SEND_STRING 0,"'Timezone=',strTemp"
          (* TIME DESCRPTION *)
          ACTIVE (FIND_STRING(strUpper,'TIMEDESC-',1)):
            SEND_STRING 0,"'Time Description=',strTemp"
          (* LOCATION *)
          ACTIVE (FIND_STRING(strUpper,'LOCATION-',1)):
            SEND_STRING 0,"'Location=',strTemp"
        }
      }
    }
    
  • JustinCJustinC Junior Member Posts: 74
    vining wrote:
    There are several ways to go about this but this is what I currently use. This is the Data Event for the !Time_Manager, just add to as I did below.


    DATA_EVENT   [vdvTmEvents]
    {
      STRING:
      {
        local_var char strUpper[30]
        local_var char strTemp[30]
        local_var char strTrash[30]
        strUpper = UPPER_STRING(DATA.TEXT)
        strTemp = DATA.TEXT
        strTrash = REMOVE_STRING(strTemp,'-',1)
        
        SELECT
        {
          (* SUNRISE *)
          ACTIVE (FIND_STRING(strUpper,'SUNRISE-',1)):
    	{
            SEND_STRING 0,"'Sunrise Time=',strTemp"
    	cSunrise = strTemp
            cSunrise = mid_string(cSunrise,2,4)
    	//send_command dvTP,"'@TXT',1,'Sunrise is ',cSunrise,' AM'"
    	}
          (* SUNSET *)
          ACTIVE (FIND_STRING(strUpper,'SUNSET-',1)):
    	{
            SEND_STRING 0,"'Sunset Time=',strTemp"
    	cSunset = strTemp
    	cSunset = left_string (cSunset,5)
    	nSunsetHour = atoi (left_string(cSunset,2))
    	if (nSunsetHour >= 13)
    	    
    	    {
    	    //cTrash = remove_string (cSunset,"':'",1)
    	    nTimePM_flag = 1
    	    nSunsetHour = nSunsetHour - 12
    	   // send_command dvTP,"'@TXT',2,'Sunset is '"//,itoa (nSunsetHour),':',cSunset,' PM'"
    	    }
    	else
    	    {
    	    nTimePM_flag = 0
    	   // send_command dvTP,"'@TXT',2,'Sunset is ',itoa (nSunsetHour),' AM'"
    	    }
    	}
          (* TIME ZONE NAME *)
          ACTIVE (FIND_STRING(strUpper,'TIMEZONE-',1)):
            SEND_STRING 0,"'Timezone=',strTemp"
          (* TIME DESCRPTION *)
          ACTIVE (FIND_STRING(strUpper,'TIMEDESC-',1)):
            SEND_STRING 0,"'Time Description=',strTemp"
          (* LOCATION *)
          ACTIVE (FIND_STRING(strUpper,'LOCATION-',1)):
            SEND_STRING 0,"'Location=',strTemp"
        }
      }
    }
    


    Sorry for butting in here, but with this data_event, what do you do if you get more than one command at a time ? b/c you never strip the data out so if two commands come in on the same string event, it would give you the wrong data. Does this ever happen in !Time_Manager ?
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    JustinC wrote:
    Sorry for butting in here, but with this data_event, what do you do if you get more than one command at a time ? b/c you never strip the data out so if two commands come in on the same string event, it would give you the wrong data. Does this ever happen in !Time_Manager ?

    The way that NetLinx passes strings to and from a virtual, you are never going to get two commands in the same DATA_EVENT generated by a virtual device. You might have to add extra processing if it were coming from a serial device, or TCP, but not an in-system message. The NetLinx generates DATA_EVENT based on timing: a flow of data with a pause of a certain length (that value is unpublished, as is this entire process, I've come to it by observation and deduction) constitues a single event; after that pause, any new data creates an entirely new event. Since this is data flowing to and from a virtual device, which is managed entirely by the master anyway, there is no chance of sporatic timing causing events to "stack up" as you describe. A serial port or TCP connection might pause in the middle of a stream, or neglect to pause at the beginning of a new string, so that you would have to buffer and process further to make sure you won't have problems. But it's not generally an issue with a virtual device. I suppose there is a possibilty if the master is under heavy load or very busy that a string might get broken up prematurely, but there is little to no chance of you getting two in the same event.
  • viningvining X Member Posts: 4,348
    Originally Posted by JustinC
    Sorry for butting in here, but with this data_event, what do you do if you get more than one command at a time ? b/c you never strip the data out so if two commands come in on the same string event, it would give you the wrong data. Does this ever happen in !Time_Manager ?

    Most of what Dave said is over my head but to answer your question, no, I haven't had problems which is probably because of what Dave said. I have no idea how the comm module actually does anything but this has worked for me which may be due to dumb luck but I'll take it any way I can.
  • JustinCJustinC Junior Member Posts: 74
    Well its all good, I understand what Dave is saying. I just wanted to make sure. Its always nice to simplify programming and not test for every single itty bitty thing that could possibly go wrong.
  • francalangiafrancalangia Junior Member Posts: 13
    thanks for the reply

    thanks for the help, after playing around with time manager i realized its not really working. i set it to check every min while i work this out. i get a message that the time was updated, but its not the message that is predefinied in time manager.

    Line 26 :: TM NTP LI field indicates unsynchronized time; return DATE/Time: 08/10/2006 19:03:19 - 19:03:19
    the send sting to master is something like "the time was adjusted by the server, the new time is ---"

    so i know i'm connecting to something. could i possibly be connecting to a server that only has time information? i pretty much left the time manager code alone - i changed the time offset and long / latitude

    where can i find the time server list? and does the netlinx do a calc to determine the sunrise / sunset? or does it get that from the server? or both.
  • viningvining X Member Posts: 4,348
    I pulled everything I could find relating to the TimeManager from my currently working code. Make sure you have all the parts and make sure your DNS in the master is set to your Routers IP (gateway) which is typically your DNS server or the the device doing your NAT (network address translation).

    DEFINE_DEVICE
    
    dvTmTimeSync        = 0:3:0 
    vdvTmEvents         = 33001:1:0
    
    DEFINE_CONSTANTS
    
    //internet inside time manager
    (* Timeserver protocols *)
    nProtoNone        = 0
    nProtoDaytime     = 1
    nProtoTime        = 2
    nProtoSNTP        = 3
    nProtoSNTPBCast   = 4
    
    (* Channels *)
    nTmSunriseChannel     = 1
    nTmSunsetChannel      = 2
    nTmDstChannel         = 3
    nTmTimeChangeChannel  = 4
    
    (* Levels *)
    nTmGmtEffLevel        = 1
    nTmGmtLevel           = 2
    nTmLongLevel          = 3
    nTmLatLevel           = 4
    
    DEFINE_VARIABLE
    
    //internet inside time mamager
    (* Timezone *)
    CHAR    dTmTzName[100]
    CHAR    dTmTzDesc[10]
    DOUBLE  dTmTzGmtOffset
    CHAR    strTmTzDstRules[1000]
    
    (* Location *)
    CHAR    strTmLocName[100]
    DOUBLE  dTmLocLong
    DOUBLE  dTmLocLat
    
    (* Timeserver *)
    INTEGER nTmTsProtocol
    INTEGER nTmTsCheckTime
    CHAR    strTmTsServer[100]
    
    DEFINE_START
    
    (*********************************************)
    (*     internet inside time manager          *)
    (*********************************************)
    dTmTzName     = 'Eastern'
    dTmTzDesc     = 'E%sT'
    dTmTzGmtOffset = -5.0
    strTmTzDstRules = 'US'
    strTmLocName   = 'Norwalk'
    dTmLocLong = -73.73
    dTmLocLat = 41.73
    nTmTsProtocol   = nProtoSNTP
    nTmTsCheckTime  = 0
    strTmTsServer   = ''
    (*********************************************)
    (*********************************************)
    DEFINE_MODULE 'i!-TimeManagerMod' mdlTM(vdvTmEvents,
                                            dvTmTimeSync,
                                            (* Timezone *)
                                            dTmTzName,
                                            dTmTzDesc,
                                            dTmTzGmtOffset,
                                            strTmTzDstRules,
                                            (* Location *)
                                            strTmLocName,
                                            dTmLocLong,
                                            dTmLocLat,
                                            (* Timeserver *)
                                            nTmTsProtocol,
                                            nTmTsCheckTime,
                                            strTmTsServer)
    
    DEFINE_EVENTS
    
    LEVEL_EVENT  [vdvTmEvents,nTmGmtEffLevel]
    {
      SEND_STRING 0,"'Effective GMT Offset=',FTOA(LEVEL.VALUE)"
    }
    
    (***********************************************************)
    (* LEVEL_EVENT:  GMT Offset                                *)
    (* PURPOSE:      Level is sent whenever the GMT            *)
    (*               offset is changed.                        *)
    (***********************************************************)
    LEVEL_EVENT  [vdvTmEvents,nTmGmtLevel]
    {
      SEND_STRING 0,"'GMT Offset=',FTOA(LEVEL.VALUE)"
    }
    
    (***********************************************************)
    (* LEVEL_EVENT:  Longitude                                 *)
    (* PURPOSE:      Level is sent whenever the longitude is   *)
    (*               changed.                                  *)
    (***********************************************************)
    LEVEL_EVENT  [vdvTmEvents,nTmLongLevel]
    {
      SEND_STRING 0,"'Longitude=',FTOA(LEVEL.VALUE)"
    }
    
    (***********************************************************)
    (* LEVEL_EVENT:  Latitude                                  *)
    (* PURPOSE:      Level is sent whenever the Latitude is    *)
    (*               changed.                                  *)
    (***********************************************************)
    LEVEL_EVENT  [vdvTmEvents,nTmLatLevel]
    {
      SEND_STRING 0,"'Latitude=',FTOA(LEVEL.VALUE)"
    }
    
    (***********************************************************)
    (* DATA_EVENT:   Strings for Sunrise/Sunset                *)
    (* PURPOSE:      parse strings for sunrise and sunset      *)
    (***********************************************************)
    
    
    DATA_EVENT   [vdvTmEvents]
    {
      STRING:
      {
        local_var char strUpper[30]
        local_var char strTemp[30]
        local_var char strTrash[30]
    
    BUTTON_EVENT [vdvTmEvents,nTmSunriseChannel]
    {
      PUSH:
      {
        SEND_STRING 0,"'Sunrise occured at ',TIME"
       // send_command dvTP,"'@TXT',3,'Sunrise occured at ',TIME,' AM'"
        nDaytime = 1
      }
    }
    
    (***********************************************************)
    (* BUTTON_EVENT: Sunset Channel                            *)
    (* PURPOSE:      Channel is pushed (and turned on) when    *)
    (*               the Sunset occurs                         *)
    (***********************************************************)
    BUTTON_EVENT [vdvTmEvents,nTmSunsetChannel]
    {
      PUSH:
      {
       SEND_STRING 0,"'Sunset occured at ',TIME"
      // send_command dvTP,"'@TXT',3,'Sunset occured at ',TIME,' PM'" 
       nDaytime = 0
      }
    }
    
    (***********************************************************)
    (* BUTTON_EVENT: DST Activity Channel                      *)
    (* PURPOSE:      Channel is pushed (and turned on) when    *)
    (*               the DST rules affect a time change with   *)
    (*               a non-zero time offset (DST Active)       *)
    (*               Channel is release (and turned off) when  *)
    (*               the DST rules affect a time change with   *)
    (*               a zero time offset (DST Inactive)         *)
    (***********************************************************)
    BUTTON_EVENT [vdvTmEvents,nTmDstChannel]
    {
      PUSH:
      {
        SEND_STRING 0,"'DST is now active: ',TIME"
       // on [dvTP_Array,1]
      }
      RELEASE:
      {
        SEND_STRING 0,"'DST is now inactive: ',TIME"
       // off [dvTP_Array,1]
      }
    }
    
    (***********************************************************)
    (* BUTTON_EVENT: Time Change Channel                       *)
    (* PURPOSE:      Channel is pushed (and pulsed) when       *)
    (*               the Time is changed by a communication    *)
    (*               with a time server.                       *)
    (***********************************************************)
    BUTTON_EVENT [vdvTmEvents,nTmTimeChangeChannel]
    {
      PUSH:
      {
        SEND_STRING 0,"'Time adjusted by time server.  New Time is ',TIME"
      }
    }
    
    
        strUpper = UPPER_STRING(DATA.TEXT)
        strTemp = DATA.TEXT
        strTrash = REMOVE_STRING(strTemp,'-',1)
        
        SELECT
        {
          (* SUNRISE *)
          ACTIVE (FIND_STRING(strUpper,'SUNRISE-',1)):
    	{
            SEND_STRING 0,"'Sunrise Time=',strTemp"
    	cSunrise = strTemp
            cSunrise = mid_string(cSunrise,2,4)
    	//send_command dvTP,"'@TXT',1,'Sunrise is ',cSunrise,' AM'"
    	}
          (* SUNSET *)
          ACTIVE (FIND_STRING(strUpper,'SUNSET-',1)):
    	{
            SEND_STRING 0,"'Sunset Time=',strTemp"
    	cSunset = strTemp
    	cSunset = left_string (cSunset,5)
    	nSunsetHour = atoi (left_string(cSunset,2))
    	if (nSunsetHour >= 13)
    	    
    	    {
    	    //cTrash = remove_string (cSunset,"':'",1)
    	    nTimePM_flag = 1
    	    nSunsetHour = nSunsetHour - 12
    	   // send_command dvTP,"'@TXT',2,'Sunset is '"//,itoa (nSunsetHour),':',cSunset,' PM'"
    	    }
    	else
    	    {
    	    nTimePM_flag = 0
    	   // send_command dvTP,"'@TXT',2,'Sunset is ',itoa (nSunsetHour),' AM'"
    	    }
    	}
          (* TIME ZONE NAME *)
          ACTIVE (FIND_STRING(strUpper,'TIMEZONE-',1)):
            SEND_STRING 0,"'Timezone=',strTemp"
          (* TIME DESCRPTION *)
          ACTIVE (FIND_STRING(strUpper,'TIMEDESC-',1)):
            SEND_STRING 0,"'Time Description=',strTemp"
          (* LOCATION *)
          ACTIVE (FIND_STRING(strUpper,'LOCATION-',1)):
            SEND_STRING 0,"'Location=',strTemp"
        }
      }
    }
    
    
  • francalangiafrancalangia Junior Member Posts: 13
    thanks again

    the only data event i have running is the time manager. the only thing i see in the diagnostic window is that time has been updated. i was hoping the sunset / sunrise time.

    i checked dns the ip seems right. i put my routers ip in there too. - tested with email

    maybe i should force it to go to another time server, maybe the one im connecting to meerly has time.


    added:
    i let it run for some time, and it did come up with some sunrise/sunset info: i couldn't make much sence of it, but i noticed that i had +72.9 for the longitude. i noticed that you code was east coast/norwalk (i assume CT) and you put in -73, i think this may have something to do with it. what do you think? haha - i hope. i think i may have mis-read the setup for the east coast longitude.

    definetly bed time.
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    i let it run for some time, and it did come up with some sunrise/sunset info: i couldn't make much sence of it, but i noticed that i had +72.9 for the longitude. i noticed that you code was east coast/norwalk (i assume CT) and you put in -73, i think this may have something to do with it. what do you think? haha - i hope. i think i may have mis-read the setup for the east coast longitude.

    definetly bed time.
    Heh, that would definitely do it. IT thinks you are on the other side of the world ...

    I have long considered i!-TimeManager to be a necessary inclusion to any NetLinx system with an Internet connection. And, just so you know, i!-Schedule includes it. I have recently started using i!-Schedule instead, even if I don't plan on using the scheduler right away. Generaly, I use the engine-only version. It's just too handy a capability to ignore.
  • francalangiafrancalangia Junior Member Posts: 13
    still no good

    i just checked up on the panel and theres no info except that the time updates.

    yea, i'm not too sure whats goin on anymore. apparently my amx box is tellin me that the earth stopped revolving. haha joke.
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    Open up a telnet session to your master, type in "msg on" and then send_command <TM virtual>, "'RESET'", where <TM virtual> is the device number of the virtual device defined to communicate with i!-TimeManager. You should see some feedback showing it going out to the time server and getting your info. If something is wrong, you will see the connect errors instead. My guess is it's not getting through to your time server.

    A good connection should look something like this:
    Welcome to NetLinx v3.12.332 Copyright AMX Corp. 1999-2005
    >msg on
    Extended diagnostic information messages turned on.
    >send command 33011, "'RESET'"
    >(0073998058) TM Clearing Current DST Rule 'Cause Date Change != +1
    (0073998062) TM Look For DST Rule In Effect For 08/11/2006,12:48:42
    (0073998099) Timezone=Eastern
    (0073998102) Location=Woodbridge, NJ
    (0073998146) Time Description=EDT
    (0073998148) Sunrise Time=06:05:00
    (0073998150) Sunset Time=20:00:00
    (0073998151) CIpEvent::OnLine 0:4:1
    (0073998204) Memory Available = 12186244 <10432>
    (0073999946) Exiting UDP SNMP Read thread - closing this socket for local port 4
    (0073999952) CIpEvent::OffLine 0:4:1

    A bad connection would do something more like:
    Welcome to NetLinx v3.12.332 Copyright AMX Corp. 1999-2005
    >msg on
    Extended diagnostic information messages turned on.
    >send command 33011, "'RESET'"
    >(0000078207) TM Clearing Current DST Rule 'Cause Date Change != +1
    (0000078210) TM Look For DST Rule In Effect For 08/11/2006,12:57:14
    (0000078250) UNKNOWN HOST: utcnist.colorado.edu
    (0000078251) ClientOpen mxInetAddr or hostGetNyName error 0x0
    (0000078253) Timezone=Eastern
    (0000078255) Location=Woodbridge, NJ
    (0000078299) Time Description=EDT
    (0000078300) Sunrise Time=06:05:00
    (0000078302) Sunset Time=20:00:00
    (0000078303) CIpEvent::OnError 0:4:1
    (0000078305) CIpSocketMan::ProcessPLPacket - Socket Already Closed
    (0000078390) CIpEvent::OnError 0:4:1

    All I did to generate the "bad" data was manually set the DNS and gateway entries to something I knew was wrong. More than likely if you have a connection issue, that is your problem.
  • francalangiafrancalangia Junior Member Posts: 13
    woo hoo.

    i sent a RESET command to vdvTmEvents and it returned that the address was invalid.
    i sent a Reset command to 33001 and it returned with all the goodies, sunrise, sunset. i am very happy now. thank you everyone for you help. i dont know what i did different.

    i do know?


    the only thing different could be this:
    i got an error the last time i did a 'quick load' it couldnt find the .src file i just ignored the message and let it send empty.src, (i exported from my laptop then imported onto a different machine and loaded from there.) could that have had somethign to do with it?

    nevermind, it was a fresh install of netlinx and i didnt have include source option selected. newbie mistake.

    but after i reboot, i have to issue that RESET command to the dev # 33001 or this thing doesnt work. can i just put that in my define start? should i even have to do this? or is this module smart enough that it wont get the sunrise/sunset information unless the event occurs and it needs to get the next one, or what if i dynamically change the long/latitude?
  • flcusatflcusat Junior Member Posts: 309
    Quick question. To add the !TimeManager module. Should I copy and paste the content of the AXS file to your current code and add the TKO file to the module folder in the workspace? or Can I add both the AXS and the TKO to the module folder? I added both of them to the module folder and compiled and when I load the code to the master I'm getting this:
    Line    567 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    568 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    569 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    570 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    Line    571 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    Line    572 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    
    
  • viningvining X Member Posts: 4,348
    I just cut and paste the contents of the .axs file into the main file putting the section where the sections belong and put the tko on my working directory and then add it to my Module section of my work space.

    You could create an include (.axi) for the .axs contents if you want to be a little more organized and then just put to include under define_start.

    Then go into those sections in the main or the include (if applicable) where you need to set values for your location.
  • flcusatflcusat Junior Member Posts: 309
    vining wrote:
    I just cut and paste the contents of the .axs file into the main file putting the section where the sections belong and put the tko on my working directory and then add it to my Module section of my work space.

    You could create an include (.axi) for the .axs contents if you want to be a little more organized and then just put to include under define_start.

    Then go into those sections in the main or the include (if applicable) where you need to set values for your location.

    Thanks vining. I got the feeling that would be you the first one to answer on Saturday.
  • flcusatflcusat Junior Member Posts: 309
    By the way, the message I was getting before:
    Line    567 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    568 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    569 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:18
    Line    570 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    Line    571 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    Line    572 :: ICSPTCPRx32: Ignoring/closing connection from IP address 72.148.140.137 (Duplicate of Device=0:1:1) - 07:52:24
    
    

    was the result of a duplicated URL listing.
  • viningvining X Member Posts: 4,348
    That's only because I have no life!
  • DenisDenis Junior Member Posts: 163
    Newbie problem

    Some body can tell me how i can install i!Time manager module?

    I don't know why I can't egt succes with it....

    I get this error
    ERROR: C:\Documents and Settings\Denis\Mes documents\Data files\AMX Demo\AMX Program files Rev 2\Brosseau Demo,Rev 2.tko(0): L20222: i!-TimeManagerMod.tko is not a valid module
  • DenisDenis Junior Member Posts: 163
    DNS?
    B_Clements wrote: »
    I highly recommend using the Time Manager module if your system has internet access. The only trick is that he NetLinx Master must have at least one DNS address defined.

    Ok I found my errors, now NS compile the module with succes, but the module seem to dosen't works


    How I can set a DNS address if I don't have DNS server, I use a DI-604 as router with HDCP range 192.168.0.151 to .....199
  • kbeattyAMXkbeattyAMX Junior Member Posts: 358
    Before you go any further. Plug the ethernet connection being used for your controller into your laptop.
    See if it can surf the web on that connection. If it can, go to a command prompt and type IPCONFIG and get the DNS from there. If it could not reach the internet, put the address of the controller in your laptop with the current gateway. Now see if you can surf the internet. If you can't you need to talk to IT!
  • DenisDenis Junior Member Posts: 163
    Web acces

    Yes I can, when I get IP from prompt cmd, I get this and the IP address of Master is 192.168.0.130
    Microsoft Windows XP [version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:\Documents and Settings\Denis>ipconfig

    Configuration IP de Windows


    Carte Ethernet Connexion au r?seau local:

    Suffixe DNS propre ? la connexion :
    Adresse IP. . . . . . . . .*. . . : 192.168.0.151
    Masque de sous-r?seau . . .*. . . : 255.255.255.0
    Adresse IP. . . . . . . . .*. . . : fe80::20a:e4ff:fed0:69e2%4
    Passerelle par d?faut . . .*. . . : 192.168.0.1

    Carte Ethernet Connexion r?seau sans fil:

    Statut du m?dia . . . . . . . . . : M?dia d?connect?

    Carte Tunnel Teredo Tunneling Pseudo-Interface :

    Suffixe DNS propre ? la connexion :
    Adresse IP. . . . . . . . .*. . . : fe80::ffff:ffff:fffd%6
    Passerelle par d?faut . . .*. . . :

    Carte Tunnel Automatic Tunneling Pseudo-Interface :

    Suffixe DNS propre ? la connexion :
    Adresse IP. . . . . . . . .*. . . : fe80::5efe:192.168.0.151%2
    Passerelle par d?faut . . .*. . . :

    C:\Documents and Settings\Denis>
  • kbeattyAMXkbeattyAMX Junior Member Posts: 358
    Try 192.168.0.130 in your laptop... Maybe only 151 through 199 can reach the internet, Of course, unplug the master or there will be an IP conflict.
Sign In or Register to comment.