How can we know if a machine has vPro technology or not in the chipset in automatic mode, reading a registry entry, call a web service method, or similar?
Thanks in advance.
That is a very good question, Raul. There is no simple utility, that I know of to run and have itanswer your question. The first thing I would look for is the vPro sticker. If it doesn't have that then it probably doesn't have Intel AMT. In the past I have went into the Intel support site for chipsets and you can look for yours there - you should be able to find out then if your system has AMT and if so, which version. Note that the APIs for AMT won't work unless AMT has been enabled and if that were the case then you should see the privacy icon or you should see the MEI/LMS drivers installed on the system.
You could also boot the system and look through the bios settings and see if there is an option to enable AMT or to anable the CTRL P prompt - not being able to find this would probably mean that the system doesn't have AMT capability.
Forum Users: Any other ideas?
Thanks for your response.
We know how we can check if a PC is vPro or not.
But our problem now is: we have a platform for PC management with vPro and not vPro PCs.Now the administrator checks a PC as vPro or not, but we need an automatic mode for show the administrator only vProPCs.We don't want the administrator checks a PC as vPro, and then this equipment would not be vPro.
Now we are working in SMB mode (no enterprise mode).
In enterprise mode this issue is easier? And where is Discovery Sample application in SDK? We have manageability_developer_tool_kit_v0.54_source, but we don't view anything.
I is not in the developer toolkit, the sample is in SDK. Please download Intel AMT SDK.
Extract it and find out sample directory you will get the Discovery sample there.
Following is the linkfor SDK download
Thanks & Regards,
Ok - I think I misunderstood your question. You have an environment with vPro and non-vPro systems and when you do your discovery you want to be able to identify all of the systems out there that are vPro systems and therefore be able to manage them. In that case, you could use a general info API: GetCoreVersion() - See full description in the Network Interface Guide of the SDK. If this call does not succeed, then you cannot manage that system (either it doesn't have AMT or AMT is not enabled - these calls will work on an AMT system onlyif AMT is enabled and configured.) Then when you want to manage systems in your environment, it will be clear which ones you can manage and which ones you cannot manage.
returns version information about the device. If the operation succeeds, then Version contains version information about the device.
The format of the string is
The format of the string is
XX.YY.ZZZZ where XX is a Major version, YY is a Minor version and ZZZZ is a Micro version.
Please let us know if this helps.
OK, i use GetCoreVersion, but for this i need know vPro credentials: user and password.
And i need a way where i don't need know these credentials. For example, i would read a registry Windows or something like this, we are going to have the PC ON and with the operating system running for this issue.
I am looking for in the registry and i don't find anything... this solution would be excellent for me.
But now i am using user and password, no problem...
Thanks, no problem, i have a solution, i load user and password and then we called GetCoreVersion.
I don't think his core question was really answered and I have the same question:
Is there a means to discover systems with vPro integrated in the chipset but not necessarily enabled?
I know that I can search for vPro enabled systems but I would like to find out which systems have the capability but have it disabled.
Is their a means? Do I just need to script something through WMI to determine the motherboard resources or chipset ID?
If I need to determine the chipset ID are their any tools in the SDK for this?
The easiest way to programmatically determine if a machine has AMT available would be to look for the presence of the MEI device in the PCI config space. If the system has a device at Bus:0, Device:3, Func:0; then the system is a vPro system. If that device is all FFs, then the system is a non-vPro system. If you are looking for a way for the remote console to determine if a machine is a vPro machine, then run a SOAP command to :16992. You will not even get a unauthorized response unless the system is a vPro system, so if the system answers to the request in any way, then it is a vPro system. If the call times-out, then the system isn't a vPro system. I hope that this helps.
Thank you very much for sharing this info with us.
I just found this tool on the vPro Expert Center. It's called the AMT Scan tool. It can get AMT information regardless of whether or not AMT has been provisioned and then stores it in the registry so that you can then programatically retreive it later. I don't know if this will help or not, you can go here to check it out. I also blogged about it.
The easiest way to programmatically determine if a machine has AMT available would be to look for the presence of the MEI device in the PCI config space. If the system has a device at Bus:0, Device:3, Func:0; then the system is a vPro system. If that device is all FFs, then the system is a non-vPro system.
We have tried a similar approach, but it did not work for us. On the similar motherboards there might be still a MEI device containing Intel Quiet System Technology and ASF but not the AMT.
It would be very nice to have an easy way to check locally if the current PC is AMT capable or not without any user/password.
Thank you for the useful hint! It can be the right tool for us.
i am new to Intel AMT SDK but i trying to get hands on to it. Could you please let me know if i have to find all INtel AMT enabled devices in my network what all methods, APIs i have to use in my program from SDK for that task ?
even if you could provide me some sample program that would be brilliant. i am working with c#. i know their is a discovery sample in sdk but that is in c++ which is hard to understand.
and what is the best way to get hands on to SDK ? is there any quick start tutorial for that ?
one thing more, can i use chunck of code (discovery in this case) from manageability developer tool kit code given, for this purpose ? i mean to say is it okay to use that code for a application which is re-dributeable ?