Introduction:


This software is designed to allow a single system to run LCDHype and drive the LCD display whilst any number of systems communicate with LCDHype via TCP to pass the required environmental details. That is to say a user can monitor any number of remote systems from a single 'control centre'. Two pieces of software are required: LCDHype is the software that drives the LCD display and collects the data to be displayed from the remote systems.
The TCPMBM.EXE code serves two main purposes:

I consider the voltages shown as being monitored to be the most important but you might disagree. It is possible to display other voltages but the maximum that can be displayed is four. However, it would not be a trivial change as the 'form' is a graphic into which the names of the displayed items have been embedded. Obviously the graphic could be modified and, for example, Core 0 be changed to -12V. The user would then have to map the appropriate MBM Sensor to Core0 Voltage. Details of how this would be achieved are given in the Set Up section below.




















Installation:

There are two sets of software that have to be installed: The procedure for installing LCDHype is quite straightforward and not covered in detail here. Basically all that is required is to download the software from the LCDHype site (see menu item) and then unpack it into the required directory. You must then download TcpMbm_LCDHype.zip and extract it into the scripts directory set up by the LCDHype installation. LCDHype installation is then complete. For further details of LCDHype use the link to LCDHype from the menu and browse the English section of the board.

For TcpMBM there are two types of installation. The first is for users who already have VB6 runtime files installed - all these users have to do is to download the TCPMBM.ZIP file and extract it into the required directory/folder. A shortcut to that file should then be placed into the system's startup folder/directory. The second installation is for users who do not have VB6 runtime files installed, in this case installation is handled by downloading a zip file (TcpMbm.zip) which, when unzipped, will present the user with a standard installation wizard. Again the shortcut to the 'tcpmbm.exe' should be placed into the system startup folder/directory.

Set-Up Instructions:

The software examines the user's MBM set-up and establishes which of the 100 MBM sensor fields (0 to 99) are in use and then sets the names declared by the user into the MBM sensor drop-down list. In the example Sensor 1 (String 0 - the motherboard monitor temperature sensor) has been declared by the user to be MBo, sensor 1 to be the CPU temperature whilst the sensors 2 - 31 are not in use. Sensors 32 to 39 represent various voltages, sensors 48 and 49 are the CPU and motherboard fan speeds and sensor 64 equates to the CPU operating frequency and all other sensors are unused. For each sensor in use it will be seen that the returned value is shown after the "/", i.e. No. 0 is MBo / 33 which is the temperature detected by that sensor.

In order to match these fields to those required by the LCD Hype SD code all that is required is for the user to select the field name in the LCDHype Param drop-down list and then select the appropriate field in the MBM Sensor List drop-down. For example to map the CPU Fan: select the field CPUFan in the LCDHype param list and No. 49: CPU_Fan / 3214 in the MBM Sensor List drop-down as shown below.


















The user then clicks on the 'Link Sensor to Param' button and will be presented with a display similar to that shown below


















This has now linked the two field names and will present the speed 3214 (rpm) against the CPU Fan field in the LCDHype display.

The above sequence is repeated for the remaining entries in the LCDHype Param list. All of the other fields are generated automatically and no user intervention is required.

When all fields have been set the user should press the Save button followed by the Start button. The Save button saves the settings to an INI file (in the Windows directory e.g. 'C:\Windows\tcpmbm.ini') that can be used whenever the software is restarted. Each time the software is run the user will be asked if the saved file is to be used to set the operating conditions. The Start button undertakes a check to see if all the required fields are present and checks to see how many hard drives exist and if all is OK establishes the link with the remote LCDHype 'server'.

There is one other set-up requirement and that is to set the TCP/IP address to be used by the LCDHype script 'tcpmbm.sd'. Line 6 is defaulted to "%DefVar(IP='127.0.0.1')" and the '127.0.0.1' should be changed to the TCP/IP address for the system running the 'tcpmbm.exe', i.e. the system to be monitored. If more than one remote system is to be monitored then the script should be copied and renamed to, for example, 'tcpmbm1.sd' and again the TCP/IP address for the system to be monitored should be set to the required value. LCDHype should then be set to run both scripts.

I have not tested to see how many remote systems can be monitored but I suspect that it is almost limitless. The scripts are set to run for 20 seconds per system (line 52) with an update every 5 seconds (line 51) and under this condition the CPU load peaks at about 35-40% for a very short period whilst for the remainder of the time it is 2% or less. Obviously a more frequent update will use more CPU mill whilst a less frequent update will reduce the overall CPU loading. On the 'remote' system (the system running 'tcpmbm') the CPU load peaks at about 1% but for the greater part of the time runs at less than 1% and thus has little or no impact on the performance of that system.

Running the Software

When the software is run for the first time the user will be prompted 'Do you wish to used saved data to complete set-up' and as there will not be any saved data at that time the answer should be no. When the software has been run and the approriate settings made the user should press the 'Save' button and all of the settings will be saved. On each subsequent time that the software is run the answer to the prompt should be yes and the same setting that were saved will be re-established.



It just remains for me to say that I do not claim that all of the code has been written by me, some 'chunks' of the TCPMBM.EXE have been gleaned from code in the public domain, in particular thanks go to David Crowell, Christian Hofstaedlter and Paul Caton for their excellent code routines.

If you use this project and have any problems then I can be reached via the LCDHype board or, alternatively you can PM me via the board.

JohnH