Home AMX User Forum NetLinx Studio

DEVICE_ID

Is there a list of what is returned for each device type?

Comments

  • ericmedleyericmedley Posts: 4,177
    jjames wrote: »
    Is there a list of what is returned for each device type?

    hmmm...

    please elaborate.
  • jjamesjjames Posts: 2,908
    Well, I thought DEVICE_ID returns a number that is specific to what type of device it is. Per the AMX iPort UI module, an R4 is 322, a virtual is 65534, etc. So what I'm looking for is documentation as to what an 8400 is, an 8400i, an MVP-5200 is, etc.

    I know I could do DEVICE_ID and track it all myself for the ones we use most often, but I was just wondering if there's any documentation that already has this laid out.

    Or am I not understanding what DEVICE_ID is? I've never used it and never seen it until I took a gander in the iPort UI module; seems like it could be very useful.
  • viningvining Posts: 4,368
    I've seen these number in the iPort module and just the other week I asked myself the same question. Where's the reference to these numbers. Of course I didn't actually try to find them or ask the question.

    I do like the way it's used in this module and it would make code more plug n play than what I currently do based on dev.number which obviously changes job to job.
    IF(DEVICE_ID(iTP) < 256) //Is it a G3 Panel in the array?
    	  {
    	  SEND_COMMAND iTP, "'TEXT',ITOA(nCHAN),'-',strMSG"        //G3 Panels without Unicode Support
    	  fnIPort_Debug("'Running fnSEND_VTEXT() for G3 DEV-,',fnDEV_TO_STRING(iTP),', ',strSTRING2,'. Line-<',ITOA(__LINE__),'>'") ;
    	  }                                                      		//NOTE: Unicode not supported on G3 panels
         ELSE //It must be a Modero Panel and not a G3 panel
    	  {
    	  IF(DEVICE_ID(iTP) == 322) //Is it an R4 Remote in the array?
    	       {
    	       fnIPort_Debug("'Running fnSEND_VTEXT() for R4 DEV-,',fnDEV_TO_STRING(iTP),', ',strSTRING2,'. Line-<',ITOA(__LINE__),'>'") ;
    	       //Send Nothing - Use Virtual R4 in Main.axs in DEV array for iPort UI devices
    	       }
    	  ELSE
    	       {
    	       SEND_COMMAND iTP, "'^UNI-',ITOA(nCHAN),',0,',strSTRING2"   //Unicode Modero Panels
    	       fnIPort_Debug("'Running fnSEND_VTEXT() for G4 DEV-,',fnDEV_TO_STRING(iTP),', ',strSTRING2,'. Line-<',ITOA(__LINE__),'>'") ;
    	       //SEND_COMMAND dvTP,"'^TXT-',ITOA(nCHAN),',1&2,',strMSG"      // G4 panels without Unicode
    	       }
    	  }
    
  • I know the RMSCommon file has some listed for AXB devices and NI devices but I don't see any for touch panels though.
  • AMX-PI contains a list of device IDs: http://www.amx.com/techdocs/HelpFiles/AMX-ProductInformation/Public-FlashHelp/Welcome_to_AMX-PI.htm

    You'll find it in "AMX Supplemental Product Documentation" -> Device ID Information
  • jjamesjjames Posts: 2,908

    Marc, thanks! I looked everywhere except there. I'll have to dig around in there.

    And also . . . I want the "Private version" - not the public. :D (j/k)
  • jjames wrote: »
    Marc, thanks! I looked everywhere except there. I'll have to dig around in there.

    And also . . . I want the "Private version" - not the public. :D (j/k)

    Maybe better NOT to know them?!?! :rolleyes:(j/k)
  • mushmush Posts: 287
    jjames wrote: »
    Is there a list of what is returned for each device type?

    G'day Jeremiah,

    Have you tried DEVICE_INFO, or more specifically DEVICE_ID_STRING?
    An NXD-CV5 returns 'NX-CV5' using DEVICE_ID_STRING.
    Some older devices don't report fully but everything new that I've checked does.

    Cheers

    Mush
  • viningvining Posts: 4,368
    any body know the device id's for Metreau keypads?
  • roognationroognation Posts: 138
    Controller IDs - Detect Central Controller

    I am working on a module and was wondering if it was possible to figure out whether the module was defined for use on a NI-700 or a NI-3100 or a NI-4000. From the above, the DEVICE_IDs for the master controllers are all a bit too similar (e.g. NI-2100, -3100, and -4100 are all the same).

    When using an IR output (e.g. port 9 on a NI-3100 and port 5 on an NI-2100) for serial control, I need to send additional setup info (set mode data); knowing which controller the device was attached to would help me determine in the module which setup info to send.

    Am I making it too hard?

    Thx in advance!
  • PhreaKPhreaK Posts: 966
    You can use DEVICE_INFO() to populate a DEV_INFO_STRUCT then the DEVICE_ID_STRING will contain what you need.
  • roognationroognation Posts: 138
    Controller Device Info

    Here is what I get from (see attached).
    NI4000
    NI2000
    NI700

    They all have the same DEVICE_ID_STRING and there is no difference between the NI2000 and the NI4000 for the DEVICE_ID. Any other ways to allow my code to determine what kind of controller it is on?

    PS MANUFACTURER string: interesting to note that AMX is no longer a Corporation and is now an LLC.

    Thanks!
  • viningvining Posts: 4,368
    Well I supose the next step would be to telnet into the master via code and "show device 5001" and parse out the name.
    >show device 5001
    Show Device
    -----------
    
    Local devices for system #1 (This System)
    ----------------------------------------------------------------------------
    Device (ID)Model                 (ID)Mfg                    FWID  Version
    05001  (00286)NI-3100            (00001)AMX LLC             00383 v1.20.7
           (PID=0:OID=0) Serial='N/A',0,0,0,0,0,0,0,0,0,        Failed Pings=0
           Physical Address=Internal Connection
    >
    
    It lists the correct name here so I don't know why dev_id_string says all 3 unless that command just uses the dev_id to determine the string/s and doesn't just get the string itself directly from the master which it also knows. Makes no sense. And why don't we have dev_id's for the new devices published yet in the newest version of PI.
  • PhreaKPhreaK Posts: 966
    @ roognation
    You need to pass the device controller (5001 by default) rather than the master (device 0) to DEVICE_INFO() in order to get the master type. It's really annoying and illogical.

    I assume that at some point the firmware used to report master type for device 0 as well as this is what RMS uses - when you look at master types they all appear as 'NI Master', which is completely useless.
  • roognationroognation Posts: 138
    Success!

    @Phreak: thanks for the tip! Used 5001:1:0 for the controllers; see new output below.

    Again, the forums prove very helpful. Thanks!
  • Joe HebertJoe Hebert Posts: 2,159
    PhreaK wrote:
    @ roognation
    You need to pass the device controller (5001 by default) rather than the master (device 0) to DEVICE_INFO() in order to get the master type. It's really annoying and illogical.
    You don?t get the master type in return; you get the device controller type, which is the thing you?re really looking for here.

    The NI series is an integration of a master and a device controller. If you look at an online tree you?ll see each part, 00000 Master and 05001 NI-xxx. Each has their own firmware. If you expand the 05001 node you?ll see the ports for that device that represent the RS-232 ports, IR ports, etc.

    The 5001 device is really what differentiates the NI series not the master.

    Less annoying and logical now? :)
  • PhreaKPhreaK Posts: 966
    I beg to differ. There is a (very big) difference between the master in a NI-x00, NI-x000 and NI-x100, all of which report as 'NI Master'.
  • Joe HebertJoe Hebert Posts: 2,159
    PhreaK wrote:
    I beg to differ. There is a (very big) difference between the master in a NI-x00, NI-x000 and NI-x100, all of which report as 'NI Master'.
    Beg to differ with what? I agree.

    If you?re talking about when I said this:
    me wrote:
    The 5001 device is really what differentiates the NI series not the master.

    It was in reference to the original problem which was this:
    roognation wrote:
    the DEVICE_IDs for the master controllers are all a bit too similar (e.g. NI-2100, -3100, and -4100 are all the same).

    When using an IR output (e.g. port 9 on a NI-3100 and port 5 on an NI-2100) for serial control, I need...
    Knowing what type of master is of no use in this case. You need the 5001 device info. That?s all I was trying to say even if I did so badly.

    Has anyone been able to get 5001 DEVICE_INFO for a system other than the one the code is running in?
    As shown in the attached snapshot I can get master (device 0) info from a system in the URL list but not 5001.

    Here is the code:
    DEFINE_DEVICE
    
    dvThisMaster	= 0:1:0		//an old NI-700 - less memory and slower processor
    dvThatMaster	= 0:1:10	//a new NI-700 - more memory and faster processor
    
    dvThis5001	= 5001:1:0
    dvThat5001	= 5001:1:10
    
    DEFINE_VARIABLE
    
    DEV_INFO_STRUCT This_Old_Master
    DEV_INFO_STRUCT That_New_Master
    
    DEV_INFO_STRUCT This_Old_5001
    DEV_INFO_STRUCT That_New_5001
    
    DEFINE_START
    
    DEVICE_INFO(dvThisMaster,This_Old_Master)
    DEVICE_INFO(dvThatMaster,That_New_Master)
    
    DEVICE_INFO(dvThis5001,This_Old_5001)
    DEVICE_INFO(dvThat5001,That_New_5001)
    
  • PhreaKPhreaK Posts: 966
    Joe Hebert wrote: »
    Beg to differ with what? I agree.

    My bad, teaches me for coming in half way through a thread.

    When I think different masters the main factor that comes to mind is processing power and memory available for use (/abuse), device controller and connectivity guff is all done through dynamic devices and abstracted from underlying device controller types. So with that in mind RMS's master type reporting is still uterly useless.
  • Spire_JeffSpire_Jeff Posts: 1,917
    I found this thread looking for DEVICE_ID, but I was just perusing the PI DEVICE_ID.txt and I found a couple of interesting IDs. Anyone know what these refer to?

    0x0110 Broadband Music Player

    0x0125 ADA Suite16 - Does this unit connect directly to a processor for easy control?

    Jeff
  • yuriyuri Posts: 861
    0x0110 Broadband Music Player

    maybe this is the i! pclink mediaplayer application?

    EDIT:
    Nope, just checked it, PCLink mediaplayer is 0x111

    08001 (00001)i!-PCLinkMediaPlaye(00001)AMX Corp. 00279 v1.0.13
    (PID=0:OID=0) Serial=IIPMP00000000001 Failed Pings=0
    Physical Address=IP 172.16.200.26
    (00273)i!-PCLinkPlus (00001) 00279 v1.10
    (PID=0:OID=1) Serial=0000000000000000

    EDIT2:

    w00h! check this out:
    http://www.smarttvandsound.com/article/8270/

    :D

    Too bad the www.mypanja.com domain is not working anymore...
  • Is the info still under this link?...
    AMX-PI contains a list of device IDs: http://www.amx.com/techdocs/HelpFiles/AMX-ProductInformation/Public-FlashHelp/Welcome_to_AMX-PI.htm

    You'll find it in "AMX Supplemental Product Documentation" -> Device ID Information

    I can't seem to find "Device ID Information" under "AMX Supplemental Product Documentation" in AMX-PI ? All I see listed under "AMX Supplemental Product Documentation" is "AXPOWER Power Consumption List"

    If they have removed it, anyone have an archived copy of AMX-PI & would care to post the old list?

    JL

    PS It's been a long year, so I could easily be missing the obvious.
  • viningvining Posts: 4,368
    I don't see it in the version of PI I'm running either but here's the ID numbers I have:

    They're weren't all listed in the older vresion of PI either.
    [code]
    DEFINE_CONSTANT //DEVICE ID's

    #DEFINE DEV_ID_CONSTANTS

    /////////////////////////////////KEYPADS NO TEXT SUPPORT

    DEV_ID_METKP_BEGIN = 169 ;
    DEV_ID_MET6N = 169 ;
    DEV_ID_MET7 = 170 ;
    DEV_ID_MET13 = 171 ;
    DEV_ID_METKP_END = 171 ;

    /////////////////////////////////KEYPADS MIO DMS TEXT & UNI SUPPORT

    DEV_ID_MIO_DMS_BEGIN = 304 ;
    DEV_ID_MIO_DMS1 = 304 ; //Mio-DMS Keypad (non-color, non-touch display with buttons)
    DEV_ID_MIO_DMS2 = 305 ; //Mio-DMS Keypad (non-color display with touch and slider)
    DEV_ID_MIO_DMS3 = 306 ; //Mio-DMS Keypad (color display with touch and slider)
    DEV_ID_MIO_DMS4 = 307 ; //Mio-DMS Keypad (color display with touch, slider, and intercom)
    DEV_ID_MIO_DMS_END = 307 ;

    /////////////////////////////////G3 PANELS

    DEV_ID_G3_END = 256 ;

    /////////////////////////////////G4 PANELS

    DEV_ID_CA15 = 281 ; //NXx-CA15
    DEV_ID_CV15 = 282 ; //NXx-CV15
    DEV_ID_CA17 = 283 ; //NXx-CA17
    DEV_ID_CV17 = 284 ; //NXx-CV17

    DEV_ID_7500 = 288 ; //MVP-7500
    DEV_ID_8400 = 289 ; //MVP-8400
    DEV_ID_CV7 = 290 ; //NXx-CV7
    DEV_ID_CV10 = 291 ; //NXx-CV10

    DEV_ID_1200 = 294 ; //NXx-1200
    DEV_ID_12VG = 295 ; //NXx-1200VG
    DEV_ID_15VG = 296 ; //NXx-1500VG
    DEV_ID_17VG = 297 ; //NXx-1700VG

    DEV_ID_CV5 = 313 ; //NXD-CV5
    DEV_ID_7500TC = 314 ; //MVP-7500 with Touch Controller
    DEV_ID_8400TC = 315 ; //MVP-8400 with Touch Controller
    DEV_ID_CV7TC = 316 ; //NXx-CV7 with Touch Controller
    DEV_ID_CV10TC = 317 ; //NXx-CV10 with Touch Controller
    DEV_ID_12TC = 318 ; //NXx-1200 with Touch Controller
    DEV_ID_12VGTC = 319 ; //NXx-1200VG with Touch Controller
    DEV_ID_15VGTC = 320 ; //NXx-1500VG with Touch Controller
    DEV_ID_17VGTC = 321 ; //NXx-1700VG with Touch Controller

    /////////////////////////////////R4

    DEV_ID_R4 = 322 ;

    /////////////////////////////////CONT G4 PANELS

    DEV_ID_8400i = 323 ; //MVP-8400i
    DEV_ID_CV7iTC = 324 ; //NXx-CV7i with Touch Controller
    DEV_ID_CV10iTC = 325 ; //NXx-CV10i with Touch Controller

    DEV_ID_5200i = 329 ;
    DEV_ID_5150 = 329 ;
    DEV_ID_5100 = 329 ;
    DEV_ID_500i = 331 ;
    DEV_ID_9000i = 343 ;
    DEV_ID_iPHONE = 347 ;
    DEV_ID_iPAD = 348 ;
    DEV_ID_iTOUCH = 349 ;

    DEV_ID_430 = $6500 ; //presently unknown
    DEV_ID_435 = $6501 ; //presently unknown
    DEV_ID_435P = $6502 ; //presently unknown

    /////////////////////////////////NI MASTERS

    DEV_ID_NI2_3_4000_M = 285 ; //NI-2000/3000/4000 (Master)
    DEV_ID_NI2_3_4000_D = 286 ; //NI-2000/3000/4000 (Device)


    DEV_ID_NI700 = 298 ; //NI-700
    DEV_ID_NI2_3_4000 = 299 ; //NI-2000/3000/4000
    DEV_ID_NI900 = 312 ; //NI-900


    /////////////////////////////////ENT VST - C

    DEV_ID_ENVVSTC = $E5 ;

    DEV_ID_VIRTUAL = 65534 ;
  • jjamesjjames Posts: 2,908
    You guys do realize that by looking at a specific product, it usually lists the device ID, right?


    Sent from my iPad using Tapatalk
Sign In or Register to comment.