MeshCommander - JavaScript IDER

By Ylian Saint-Hilaire, Published: 04/18/2019, Last Updated: 04/18/2019

In the 10 years that I have been making software for Intel® AMT, I have rebuilt pretty much everything. From coding a WSMAN stacks twice to my own Serial Terminal and KVM viewer. This was needed to make Intel AMT usable with web technologies and bring hardware manageability usages to modern standards. In all this time, I have not touched what I consider to be the most powerful feature of Intel AMT: IDE Redirect (IDE-R).

For people who don’t know, IDE redirect allows a trusted administrator to remotely mount disk images on an Intel AMT computer over the network. You can then reboot on this image to perform computer recovery, OS re-installation, virus scanning or more. IDE redirection can completely transform a remote computer in a way and speed that no other Intel AMT feature can. Problem is, performing this operation was limited by use of IMRSDK.dll, a native library that was difficult to deal with and did scale or not port. It was especially badly suited for web technologies and so, was difficult to integrate into MeshCommander and MeshCentral. To complicate things, this library impersonates disk drives by responding to SCSI commands (sector reads, etc.) This is a raw binary protocol that is not simple to understand. Well…

About 3 weeks ago, I started trying to write a full disk emulation module in JavaScript. After many hours outside work, I finally got it to working and yesterday, MeshCommander 0.7.5 and MeshCentral 0.3.2-p where both released with the new JavaScript IDE-R module. I don’t think this has ever been done in JavaScript. Better yet, the new IDE-R module adds only about 5k to the MeshCommander firmware edition, the version that can be loaded directly into Intel AMT – Making a console that fits within Intel AMT flash (66k) capable of WSMAN, KVM, SOL and IDER!

As shown in the pictures below the Firmware, Web and MeshCentral editions of MeshCommander have been updated. For the first time, IDER is now fully portable across platforms. Since this is still experimental, the Standalone Windows Edition of MeshCommander will stick with IMRSDK.dll for now, but I do expect to switch once the community gets a chance to test to new IDER solution.

As usual, feedback appreciated.

Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804