Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Introducing : Remote Sensor Monitor - A RESTful Web Server
#1
Folks,

I wish to introduce Remote Sensor Monitor (a small freeware Windows console application (requires .NET 4.0) that I have been developing over the last week or so) for your feedback / bug reports.


v2.1.0:
Release Notes:
1. Added support for AIDA64 sensor / data reporting
2. Removed external DLL dependency for GPU-Z shared memory access

Link: http://www.hwinfo.com/files/RemoteSensor....2.1.0.zip

v2.0.1:
Release Notes:
1. Fixed bug related to certain sensors being reported multiple times in Hyper-V enabled machines

Link: http://www.hwinfo.com/files/RemoteSensor....2.0.1.zip

v2.0.0:
Release Notes:
1. Initial public release

Link: http://www.hwinfo.com/files/RemoteSensor....2.0.0.zip


Remote Sensor Monitor 2.1.0.0
Copyright © 2013 Ganesh T S

Remote Sensor Monitor is a Windows console application designed to present various hardware sensor parameters reported by HWiNFO / GPU-Z / AIDA64 / Open Hardware Monitor as a JSON string and make it available over the network. Enabling GPU-Z, HWiNFO and AIDA64 requires the programs to be running the background. The minimum supported versions are: GPU-Z: 0.7.4, HWiNFO: 4.30, AIDA64: 4.00.2706. Open Hardware Monitor sensors can be reported only if OpenHardwareMonitorLib.dll is present in the same folder as that of the application. Once the web server starts up, the JSON string is available at http://<IP>:<PORT> ; The reported parameters can be filtered / configured via the web interface at http://<IP>:<PORT>/config ; The program requires administrative privileges in order to open and close the applicable port in the firewall when necessary.

Command Line Options:

Quote: p, port : (Default: 55555) Port number to use
hwinfo : (Default: 1) Enable (1) / Disable (0) sending out sensor readings from HWiNFO
gpuz : (Default: 1) Enable (1) / Disable (0) sending out sensor readings from GPU-Z
aida64 : (Default: 1) Enable (1) / Disable (0) sending out sensor readings from AIDA64
ohm : (Default: 1) Enable (1) / Disable (0) sending out sensor readings from OpenHardwareMonitor
h, help : Display the help screen.


Usage:
Quote: "Remote Sensor Monitor.exe" [-p=<port_number>] [--hwinfo=<0|1>] [--gpuz=<0|1>] [--aida64=<0|1>] [--ohm=<0|1>]


With the JSON output, it is easy to develop client applications for various purposes. For example, the script hosted here: https://code.google.com/p/sensor-mon-htt...ent_CLI.pl : can be used to record various sensor parameters of a remote machine on which this program is running into a CSV file.

The code itself is based heavily on SensorMonHTTP, a open source GPU-Z / Open Hardware Monitor C# .NET application that I had developed earlier. It is hosted here: http://code.google.com/p/sensor-mon-http...sorMonHTTP ; I have added HWiNFO support, thanks to the shared memory details provided by Martin. I would have loved to open source this effort too, but Martin prefers that the shared memory specifications remain private. Therefore, this fork of SensorMonHTTP will have to remain closed-source.

Edit: It would be great is someone could contribute an icon / display graphic for the program.
Reply
#2
Thank you for this useful tool !
Reply
#3
(12-15-2013, 11:29 PM)Martin Wrote: Thank you for this useful tool !

Doesn't work for me...

Please wait for the web server to start.................
Unhandled Exception: System.ArgumentException: An item with the same key has alr
eady been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boo
lean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at RemoteSensorMonitor.GlobalOptions.InitializeEnabledStatus()
at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
at RemoteSensorMonitor.Program.Main(String[] args)
Reply
#4
(12-30-2013, 11:44 PM)cyphrmedic Wrote:
(12-15-2013, 11:29 PM)Martin Wrote: Thank you for this useful tool !

Doesn't work for me...

Please wait for the web server to start.................
Unhandled Exception: System.ArgumentException: An item with the same key has alr
eady been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boo
lean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at RemoteSensorMonitor.GlobalOptions.InitializeEnabledStatus()
at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
at RemoteSensorMonitor.Program.Main(String[] args)

Thanks for the feedback. I encountered this bug while testing and fixed it for that particular m/c in v2.1.0. Can you confirm you are using that version? You can check by running the program with the -h option in the command line.

If you are using v2.1.0, can you let me know what sensor monitoring programs are enabled? If you could narrow it down to one sensor monitoring program, that would be a good pointer. Secondly, if it is HWiNFO causing the problem, can you upgrade it to the latest beta and do a 'Restore Original Order' in the configuration settings and then restart the program before starting the RemoteSensorMonitor executable ?

If none of these work, I can upload a debug build next week and we can take it forward from there.
Reply
#5
(01-03-2014, 01:06 AM)Ganesh_AT Wrote:
(12-30-2013, 11:44 PM)cyphrmedic Wrote:
(12-15-2013, 11:29 PM)Martin Wrote: Thank you for this useful tool !

Doesn't work for me...

Please wait for the web server to start.................
Unhandled Exception: System.ArgumentException: An item with the same key has alr
eady been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boo
lean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at RemoteSensorMonitor.GlobalOptions.InitializeEnabledStatus()
at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
at RemoteSensorMonitor.Program.Main(String[] args)

Thanks for the feedback. I encountered this bug while testing and fixed it for that particular m/c in v2.1.0. Can you confirm you are using that version? You can check by running the program with the -h option in the command line.

If you are using v2.1.0, can you let me know what sensor monitoring programs are enabled? If you could narrow it down to one sensor monitoring program, that would be a good pointer. Secondly, if it is HWiNFO causing the problem, can you upgrade it to the latest beta and do a 'Restore Original Order' in the configuration settings and then restart the program before starting the RemoteSensorMonitor executable ?

If none of these work, I can upload a debug build next week and we can take it forward from there.

I have the same problem when runing remote server

Code:
D:\Users\User\Downloads\Remote.Sensor.Monitor.v.2.1.0>"Remote Sensor Monitor.exe
"

Starting Remote Sensor Monitor on port 55555...

HWiNFO process found! Enabling HWiNFO...

GPU-Z process found! Enabling GPU-Z...

AIDA64 enabled, but AIDA64 process not found! Disabling AIDA64...

Open Hardware Monitor DLL found! Enabling Open Hardware Monitor...

Please wait for the web server to start............
Unhandled Exception: System.ArgumentException: An item with the same key has alr
eady been added.
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boo
lean add)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at RemoteSensorMonitor.GlobalOptions.InitializeEnabledStatus()
   at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
   at RemoteSensorMonitor.Program.Main(String[] args)

D:\Users\User\Downloads\Remote.Sensor.Monitor.v.2.1.0>

and the version of the server is 2.1.0.0

Code:
D:\Users\User\Downloads\Remote.Sensor.Monitor.v.2.1.0>"Remote Sensor Monitor.exe
" -h

Remote Sensor Monitor 2.1.0.0
Copyright (C) 2013 Ganesh T S

Remote Sensor Monitor is a Windows console application designed to present
various hardware sensor parameters reported by HWiNFO / GPU-Z / AIDA64 / Open
Hardware Monitor as a JSON string and make it available over the network.
Enabling GPU-Z, HWiNFO and AIDA64 requires the programs to be running the
background. The minimum supported versions are: GPU-Z: 0.7.4, HWiNFO: 4.30,
AIDA64: 4.00.2706. Open Hardware Monitor sensors can be reported only if
OpenHardwareMonitorLib.dll is present in the same folder as that of the
application. Once the web server starts up, the JSON string is available at
http://<IP>:<PORT> ; The reported parameters can be filtered / configured via
the web interface at http://<IP>:<PORT>/config ; The program requires
administrative privileges in order to open and close the applicable port in the
firewall when necessary.

Command Line Options:

  p, port    (Default: 55555) Port number to use
  hwinfo     (Default: 1) Enable (1) / Disable (0) sending out sensor readings
             from HWiNFO
  gpuz       (Default: 1) Enable (1) / Disable (0) sending out sensor readings
             from GPU-Z
  aida64     (Default: 1) Enable (1) / Disable (0) sending out sensor readings
             from AIDA64
  ohm        (Default: 1) Enable (1) / Disable (0) sending out sensor readings
             from OpenHardwareMonitor
  h, help    Display this help screen.


Usage:
        "Remote Sensor Monitor.exe" [-p=<port_number>] [--hwinfo=<0|1>]
[--gpuz=<0|1>] [--aida64=<0|1>] [--ohm=<0|1>]


D:\Users\User\Downloads\Remote.Sensor.Monitor.v.2.1.0>
Reply
#6
I got exactly the same error when trying to run it with hwinfo. But I got it to start when i explicitly told it to run only with hwinfo with the following command in a .bat file.

"remote Sensor Monitor.exe" --hwinfo=1 --gpuz=0 --aida64=0 --ohm=0
pause

Best regards
Conny


(12-30-2013, 11:44 PM)cyphrmedic Wrote:
(12-15-2013, 11:29 PM)Martin Wrote: Thank you for this useful tool !

Doesn't work for me...

Please wait for the web server to start.................
Unhandled Exception: System.ArgumentException: An item with the same key has alr
eady been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boo
lean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at RemoteSensorMonitor.GlobalOptions.InitializeEnabledStatus()
at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
at RemoteSensorMonitor.Program.Main(String[] args)
Reply
#7
Hello,
i tried Remote Sensor Monitor with two Systems (first is the mainsystem / second is a virtual mashine on the mainsystem)

In the virtual mashine (virtual box software), your tool is working fine!
In the main mashine, your tool is crashing the same way, the others reported.

I already tried --hwinfo=0, --gpz=0 --aida64=0 and ohm=1 (both systems use ohm)

Do you have a gess, what the problem is?

thanks alot
Reply
#8
Is there anyone that can recommend a good software for IOS that I could use with RSM to show relevant info on my iPad?

Conny
Reply
#9
The web interface doesn't seem to be loading the skin. I get this error in the console:

Quote:Please wait for the web server to start................Creating an instance of t
he COM component with CLSID {304CE942-6E39-40D8-943A-B913C40C9CD4} from the ICla
ssFactory failed due to the following error: 800706d9 There are no more endpoint
s available from the endpoint mapper. (Exception from HRESULT: 0x800706D9).
Creating an instance of the COM component with CLSID {304CE942-6E39-40D8-943A-B9
13C40C9CD4} from the IClassFactory failed due to the following error: 800706d9 T
here are no more endpoints available from the endpoint mapper. (Exception from H
RESULT: 0x800706D9).
Object reference not set to an instance of an object.
..Web server running

Press [ENTER] to quit

and in the web interface I get the raw data like this:

Quote:[
{
"SensorApp": "AIDA64",
"SensorClass": "sys",
"SensorName": "Date (SDATE)",
"SensorValue": "11/10/2014",
"SensorUnit": "NA",
"SensorUpdateTime": 0
},
{
"SensorApp": "AIDA64",
"SensorClass": "sys",
"SensorName": "Time (STIME)",
"SensorValue": "19:17:09",
"SensorUnit": "NA",
"SensorUpdateTime": 0
},
{
"SensorApp": "AIDA64",
"SensorClass": "sys",
"SensorName": "UpTime (SUPTIME)",
"SensorValue": "00:31:23",
"SensorUnit": "NA",
"SensorUpdateTime": 0
},
Reply
#10
Hi, author ! Thanks for this cool software!
I have 2 questions:
1. It is possible to start this nice program as service? Can you add this feature in the future?
2. If one of program (hwinfo or openhardwaremonitor) closing or crashing - Remote Sensor Monitor stops responding... Sad
Reply
#11
Is anybody using this tool? I find that the program will randomly stop and there is no way to know the state of the program. Its unclear what failed, why and what corrective action is required.
Reply
#12
(01-05-2016, 09:13 PM)Dajudge Wrote: Is anybody using this tool? I find that the program will randomly stop and there is no way to know the state of the program. Its unclear what failed, why and what corrective action is required.

I know I feel late to the party. I had it working fine for a while but then it just stopped working. Maybe it isn't supported any more so it needs updating. Shame but thanks anyway Ganesh_AT.
Reply
#13
Code:
Starting Remote Sensor Monitor on port 55555...

HWiNFO process found! Enabling HWiNFO...

GPU-Z process found! Enabling GPU-Z...

AIDA64 enabled, but AIDA64 process not found! Disabling AIDA64...

Open Hardware Monitor DLL found! Enabling Open Hardware Monitor...

Please wait for the web server to start.............Creating an instance of the COM component with CLSID {304CE942-6E39-40D8-943A-B913C40C9CD4} from the IClassFactory failed due to the following error: 800706d9 There are no more endpoints available from the endpoint mapper. (Exception from HRESULT: 0x800706D9).
Creating an instance of the COM component with CLSID {304CE942-6E39-40D8-943A-B913C40C9CD4} from the IClassFactory failed due to the following error: 800706d9 There are no more endpoints available from the endpoint mapper. (Exception from HRESULT: 0x800706D9).
Object reference not set to an instance of an object.
..Web server running

Press [ENTER] to quit

Creating an instance of the COM component with CLSID {304CE942-6E39-40D8-943A-B913C40C9CD4} from the IClassFactory failed due to the following error: 800706d9 There are no more endpoints available from the endpoint mapper. (Exception from HRESULT: 0x800706D9).

It starts, but it's very buggy. It gives a lot of Internal Server errors, that I expect originate from those errors in starting. Also, if I try to run with the port flag...
Code:
> "Remote Sensor Monitor.exe" -p=47505
Unhandled Exception: System.FormatException: Input string was not in a correct format.
  at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
  at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
  at System.Convert.ToInt32(String value)
  at RemoteSensorMonitor.GlobalOptions.ProcessStartupOptions(String[] args)
  at RemoteSensorMonitor.Program.Main(String[] args)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)