• 05.02.2023, 12:40
  • Register
  • Login
  • You are not logged in.


Dear visitor, welcome to Aqua Computer Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Trying to import virtual sensor data from Aquasuite into HWINFO via Shared Memory

Friday, November 25th 2022, 2:08am

I am trying to export data from a virtual sensor in AQS and get it to appear in HWINFO. I have HWINFO running and Shared Memory Support enabled. Data from HWINFO is imported into AQS and HWINFO displays data from all of my Aquacomputer devices. This all works fine.

In the Data Log section, Automatic Data Exports, I set up a data export for this sensor and selected Shared Memory Export, hoping that this would make the item appear in HWINFO. It didn't. I also looked in the HWINFO Shared Memory Viewer but its not there either. The note for Shared Memory Export says, "Export data as XML content in a shared memory file. The content of the file is refreshed with the given interval" which I set to 1-min. I can type in a file name but the Path box is grayed out for Shared Memory Export. I don't know where the sensor data is exporting to, but HWINFO and the Shared Memory Viewer does not see it. Is what I am trying to do possible, and am I on the right track?

Thanks for any insights into how to do this.


Senior Member

Friday, November 25th 2022, 2:39pm

to see virtual sensors i have to add them to a device software sensor, and they appear under that device.
Note that sometimes you have to tweak a bit. To show the radiator's dissipated power, i have to multiply the power by 100 for HWinfo to display the right number :)
Might be just a little catch22 for watts readings

Friday, November 25th 2022, 9:14pm

Thanks Remayz. I set out to try what you suggested and ran into more issues. Note I am still on X.59 as I am waiting a bit before updating to X.60. I grabbed and labelled a bunch of screen shots that will make the following easier to understand. Here is a LINK to the screen shots.

In the playground, I have 7 virtual sensors set up. The virtual sensor I am trying to get into HWINFO is the 7th one (most recent). This virtual sensor subtracts Pump Pressure from LKS Pressure to get the "Pressure Margin" (more on this later). I tried to assign this to a soft sensor but discovered that for my Octo, D5N, HFN, and FW360, only the first 4 virtual sensors are available in Data Sources - Data from Aquacomputer Service - Virtual Software Sensors. Curiously, the LKS soft sensors can see and select any of the 7 Virtual Software Sensors, which is the expected behavior. I don't know why the LKS soft sensors can be tied to any of the 7 virtual sensors but the Octo, D5N, HFN, and FW360 only show the first 4 virtual sensors. I don't know if this is a bug or a limitation of AQS that I never noticed before. Do you see all virtual sensors as data sources for Octo, D5N, HFN, and FW360 (if you have these devices and more than 4 virtual sensors)?

Anyway, I assigned the 7th Virtual Software Sensor to a LKS soft sensor but sadly it does not show up in HWINFO. None of the LKS soft sensors show up in HWINFO. I looked closer and see that HWINFO reports all of the soft sensors for Octo and D5N but none of the soft sensors for HFN, LKS, or FW360. I don't know why. Maybe the author of HWINFO did not bother to poll all of the soft sensors for every AC device. The soft sensors are connected to things so there is data to report..

Why I am doing this - The Virtual Sensor I made is for "Pressure Margin" which is simply the LKS Pressure minus the Pump Pressure. I had "Use Adaptive Pressure" selected in my LKS set up. This caused AQS to use a set point of around 220mbar. Pump Pressure sits around 195mbar. Over time, LKS Pressure would slowly drop until it was only a few mbar higher than Pump Pressure. This caused the LKS to change from Protected to Unprotected, but it would not activate the vacuum pump to increase the LKS negative pressure. There was also no log entry for the mode change from Protected to Unprotected which I think there should be. I unchecked "Use Adaptive Pressure" which caused the LKS to use 425mbar as the set point. This made the Pressure Margin much higher. I let the system run all day. LKS pressure still slowly drops, and eventually the LKS will activate the vacuum pump, but it never changes from Protected to Unprotected. I am debating whether to leave Use Adaptive Pressure disabled. I like the idea of having the LKS calculate the optimal values and not holding a higher vacuum that is necessary, but I don't like that it changes from Protected to Unprotected, does nothing to correct the situation, and does not record the mode change in the log.

I am able to export the data for LKS Pressure, Pump Pressure, and Pressure Margin to a CSV file which I can import into Excel and graph. I want to get the Pressure Margin data into HWINFO because I can log it there and use Generic Log Viewer to produce graphs showing the trends of these 3 values over time. Since HWINFO already reports LKS Pressure and Pump Pressure, I can make a Custom Sensor in HWINFO and perform the subtraction in the Registry. If I can't get the Pressure Margin to show up in HWINFO by assigning Pressure Margin to a device Soft Sensor that HWINFO reports, and I can't figure out how to use the AQS Shared Memory Export, I will try making the Custom Sensor in HWINFO. There is very little explanation of where the exported data goes when Automatic Data Export is set to Shared Memory Export. AQS says it goes to a shared memory file but that's it. I am hoping an Aquacomputer dev will provide a more detailed explanation of where this data goes and how to access it.

Thanks in advance if you actually read all of this, and for any insights.


Senior Member

Friday, November 25th 2022, 10:03pm

Ah i can't see it either. I think it's something silly and simple; like the Octo can't accept a mBar sensor because it just never deals with pressures.
Try a virtual sensor that takes your input in mBar and turns it into a temperature (150° instead of 150mbar for example, same value), and add that to a software sensor. Now the octo will pick it up, then HWinfo too.
Then it's just a matter of changing the display unit in HWinfo (right click on the sensor > Customize value)

Got to be sneaky :)

Saturday, November 26th 2022, 2:55am

Hmmmm.. It appears you are correct. I went into the Playground and changed the units for the Pressure Margin from mbar to °C and now it appears as a data source for the Octo, D5N, HFN, and FW360. So for some reason, the units selected for a Playground output affects whether that output is available as a data source for a device soft sensor. I assigned Octo soft sensor #13 to the Pressure Margin output (now in °C). It appeared in HWINFO and I changed the units there to mbar. Thank you very much for suggesting this.

Now I have to wonder why the AQS devs decided that the units assigned to a virtual sensor output will determine whether that virtual sensor is available as a data source for a soft sensor. I cannot think of any reason to impose this restriction. Why would the units of a virtual sensor make any difference in whether that virtual sensor is available as a data source? This restriction reduces the flexibility of the soft sensors, and more generally, of AQS.

This is similar to another quirk I discovered early on which is that a device soft sensor cannot be assigned to a value from that device. Example - Data sources for the Octo do not include any data from the Octo. The Octo does not even appear in the list. This is true for all of the AC devices that I have. When I first set up AQS, I wanted to see all of my fan speeds in the Octo Sensors tab, but I could not assign Octo soft sensors to Octo fan speeds. So I assigned FW360 soft sensors to the Octo fan speeds then assigned the Octo soft sensors to the FW360 soft sensors. It works, but its rather circuitous, and it uses up a FW360 soft sensor. Another mystery is why do the Octo and FW360 have16 soft sensors but the LKS only has 12, and the D5N and HFN only have 8 soft sensors.

Regarding the reason I went down this rabbit hole - When the LKS has "Use Adaptive Pressure" enabled, why does it use a set point that is so close to the pump pressure that after some pressure is lost, the LKS changes from Protected state to Unprotected state, but does not activate the vacuum pump, so the LKS just sits there in an Unprotected state? There is no log entry and no Alarm condition for this state change. If you don't happen to look at the LKS main tab or Status tab, you would not know that the system is Unprotected. Disabling Use Adaptive Pressure solves this problem, but causes the LKS to set the set point to the maximum possible pressure for the selected pump, which is not considered "Optimal". IMO, if the LKS changes state from Protected to Unprotected because the LKS pressure is too close to the Pump Pressure, it should enter this state change into the log, activate an Alarm, and run the vacuum pump to get the LKS negative pressure back up to where there is a reasonable Pressure Margin, then return to the Protected state. Am I missing something?

Many thanks for your insights.



Monday, November 28th 2022, 10:09am

The software sensors are intended to be source values for controllers at the device. Due this it only makes sense to input temperature values that can be interpreted by the device.
That's why not any virtual sensor can be used as a software sensor.

Tuesday, November 29th 2022, 2:26am

The software sensors are intended to be source values for controllers at the device. Due this it only makes sense to input temperature values that can be interpreted by the device.
That's why not any virtual sensor can be used as a software sensor.
Thank you for clarifying that. I guess I tend to want to do unintended things with soft sensors, but at least now I understand the limitations.

The reason I wanted to set an Octo soft senor to a virtual sensor for Pressure Margin (mbar) is because I wanted to get this value into HWINFO. Exporting to Shared Memory did not accomplish this so I tried what Remayz suggested which was to assign it to a soft sensor, because HWINFO reports soft sensors. HWINFO does report soft sensors for the Octo and D5 Next but unfortunately not for the Leakshield, High Flow Next, and Farbwerk 360. AQS would not allow me to assign an Octo or D5N soft sensor to a virtual sensor with mbar units. To get around this, Remayz suggested changing the units of the virtual sensor to °C, which I could then assign to an Octo soft sensor. HWINFO reports this and I changed the units back to mbar in HWINFO. It's not optimal but it works (thanks Remayz!).

Could you please explain how the Shared Memory Export works? I understand exporting the data to an XML file but when its set to Export to Shared Memory, where does the data go and how do I access it? The manuals say it exports to RAM ("memory mapped file"). There is no explanation of exactly where the data goes or how to access it.


Senior Member

Tuesday, November 29th 2022, 12:42pm

i feel shared memory is more about the data HWinfo makes available to other programs, not the other way around.

HWinfo accesses the devices directly to read data if i'm correct.

Wednesday, November 30th 2022, 1:34am

i feel shared memory is more about the data HWinfo makes available to other programs, not the other way around.

HWinfo accesses the devices directly to read data if i'm correct.
Yeah you're right, and that is what the author of HWINFO told me when I asked about it on their forum. Here is a LINK to that thread if you are interested.

HWINFO's shared memory can make data available for AQS to import but it cannot accept data coming from AQS. He does not know what AQS is actually doing when Shared Memory Export is selected in the pull down. I searched this forum and found this POST from 2014 wherein someone wanted to push data from AQS to Rainmeter. I think I understand now. AQS is writing the XML data for each sample to an area of the paging file using the code described HERE. To read this XML data, code must be written to access it. I think a program like HWINFO or AIDA or SIV could add the code to access the XML data in the shared memory, but the authors have not been inclined to do so. I wonder if this is how HWINFO's Shared Memory works, just in the other direction.

Wednesday, November 30th 2022, 7:18am

you can access the shared memory in the same was as a file.
You open the file with the Name you can select. It is exact the same export as the xml file export.
This is only working when the aquasuite is running!


Junior Member

Factually Incorrect statement from Aqua Computer and them being lazy

Tuesday, January 24th 2023, 9:02am

The software sensors are intended to be source values for controllers at the device. Due this it only makes sense to input temperature values that can be interpreted by the device.
That's why not any virtual sensor can be used as a software sensor.

This is factually incorrect as with the OCTO then Temperatures + Fan Speeds + Percentages + Flow Rates + Powers + Conductivity can be used. Further with the LeakShield there are even more options including Pressures.

I reported this difference on 22-Sep-2021 @ 12:28 and on 26-Sep-2021 @ 10:55 was told "we will NOT support these values."

The LeakShield has different data structures for software sensors than earlier devices which is probably why they are different, but in both causes there is an 8-bit type code so it would be quite easy to make earlier devices support the same as LeakShield. I expect this would only need changes to Aquasuite.

Given with the LeakShield software sensors can be pressures then this not being possible for OCTOs is clearly be down to Aqua Computer being lazy!

Tuesday, January 24th 2023, 9:09am

Leakshield and OCTO are different products.

All configurations that make sense can be used in the leakshield as well as in the octo.
Everything beyond that you have to adjust with the Playground itself so that it works.