Aquaero / Aquasuite Plugin

Questions regarding plugin development and publish plugins

Aquaero / Aquasuite Plugin

Postby PyromaniacB » Mon Aug 25, 2014 6:10 am

Hi there!

I just set up my Aquaero 6 PRO. The Aquasuite software allows to setup logging of sensors plugged in to the Aquaero and exporting the information (including temperatures, fan speeds, flow rates etc.) to an xml file in a user configurable interval (e.g. 1 second).
I think it would be great if GOverlay could read this file and display the information. Writing such a plugin wouldn't probably be hard at all, but I don't think I have enough experience to get anything working out of it. Maybe someone could give a go at making a plugin?

Here's just an example of the xml file the Aquasuite generates. This is a simplified example with just two temperature readings (called Ambient Temperature and Water Temperature).

Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<LogDataExport xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <name>Aquaero Log</name>
  <exportTime>2014-08-25T08:46:56.4594025+03:00</exportTime>
  <logdata>
    <LogDataSet>
      <t>2014-08-25T08:46:55.858</t>
      <value>23.71</value>
      <name>Ambient Temperature</name>
      <unit>°C</unit>
      <valueType>Temperature</valueType>
      <device>aquaero</device>
    </LogDataSet>
    <LogDataSet>
      <t>2014-08-25T08:46:55.858</t>
      <value>31.23</value>
      <name>Water Temperature</name>
      <unit>°C</unit>
      <valueType>Temperature</valueType>
      <device>aquaero</device>
    </LogDataSet>
  </logdata>
</LogDataExport>

I'll be happy to provide additional information when and if it's needed if somebody is up to writing a plugin or helping me do it. There is also an SDK available for the Aquasuite here in case it's useful.
Thanks for reading and let me know if there is interest in something like this and how we should proceed with it.

PyromaniacB
 
Posts: 13
Joined: Mon Aug 25, 2014 5:31 am

Re: Aquaero / Aquasuite Plugin

Postby TheLaGmAn » Tue Aug 26, 2014 7:28 pm

The aquaero page seems to be all in german but from what i could gather the sdk is for a lcd they have or something like that, doesnt seem that the sdk is for gathering their sensors info.

is that xml the only way to have the sensors data? how often is that xml updated?
User avatar
TheLaGmAn
Site Admin
 
Posts: 967
Joined: Wed Feb 26, 2014 8:32 pm

Re: Aquaero / Aquasuite Plugin

Postby PyromaniacB » Tue Aug 26, 2014 7:55 pm

Thanks for the reply!

I haven't looked in to the SDK myself so it very well may be for just having extra information on the display.

The logging interval can be set by the user, it seems the most frequent update interval is 1 second. It seems you can also have the log exported to shared memory, possibly in the same format. That would probably be better so there wouldn't be unneccessary writing to HDD/SSD but I don't have any idea how to access the data in the memory. You probably have, though :D

PyromaniacB
 
Posts: 13
Joined: Mon Aug 25, 2014 5:31 am

Re: Aquaero / Aquasuite Plugin

Postby TheLaGmAn » Wed Aug 27, 2014 12:32 am

Yea, shared memory would be ideal, do you know if they have a sample application doing that? it will be easier to develop that way, we need the memory mapped name and the structure but there will probably be a VB or C# example we can look and see that.
Its hard for me to find info because its all mostly on german :/
User avatar
TheLaGmAn
Site Admin
 
Posts: 967
Joined: Wed Feb 26, 2014 8:32 pm

Re: Aquaero / Aquasuite Plugin

Postby PyromaniacB » Wed Aug 27, 2014 4:43 am

Unfortunately I can't read German either but I'll try if I can find some examples, I'm sure there must be a guide somewhere.

There actually seems to be a demo of some sort on github that seems to have a plugin for exporting to shared memory: plugin_sdk

PyromaniacB
 
Posts: 13
Joined: Mon Aug 25, 2014 5:31 am

Re: Aquaero / Aquasuite Plugin

Postby TheLaGmAn » Wed Aug 27, 2014 10:16 pm

I've been investigating a little bit.

That plugin sends the data to the shared memory but probably reads the file first because the output in the shared memory is still in xml state as plain text, so i made a plugin to actually read the .xml file since it might be faster than reading the shm that reads the xml file.

Give it a try, i didnt test it with aquasuite, only with the xml file you sent me, remember to set the xml file in the plugin options and check for issues on the goverlay log.

Also aquasuite does not report sensors id, so there is no way to know what sensor you set to use other than count from the 1st to the last sensor and have them by the ID of appearance, like 1 to X, but what if you remove a sensor or add new? most likely the IDs move since the sensor 5 will be sensor 4 if sensor 3 is removed, so the sensor you selected to use will most likely be wrong if aquasuite updated his sensors index.

viewtopic.php?f=4&t=40
User avatar
TheLaGmAn
Site Admin
 
Posts: 967
Joined: Wed Feb 26, 2014 8:32 pm

Re: Aquaero / Aquasuite Plugin

Postby PyromaniacB » Thu Aug 28, 2014 1:02 am

Thank you!

The xml log file is not generated when you choose the shared memory option. So it would seem that they use just the same xml format for whatever reason. The description for the Shared Memory Export function states:
Export data as XML content in a shared memory file.
The content of the file is refreshed with the given interval.

When you choose the Shared Memory Export instead of the XML File Export, it will still let you name the file but it will block out choosing the log location.

I'll see how it works and try and see how the Aquasuite handles the sensor IDs. Thanks again!

PyromaniacB
 
Posts: 13
Joined: Mon Aug 25, 2014 5:31 am


Return to Plugins Releases and Development



Who is online

Users browsing this forum: No registered users and 6 guests