Jump to content

Axpert 5KVA Watchpower monitoring software


Warren

Recommended Posts

Hi all

So I am finally at a point where i can play with the software that came with my inverter. So I hooked it all up with a USB to RS232 converter. Everything seems to work. I can even hear the relay when I switch output source priority from utility to SBU.

The issue I have is on the data logging I cannot select the device in the droplist. Its just not there. It does show the device ID on the main screen on the left

Has anybody else experianced this :(

Link to comment
Share on other sites

Hi all

So I am finally at a point where i can play with the software that came with my inverter. So I hooked it all up with a USB to RS232 converter. Everything seems to work. I can even hear the relay when I switch output source priority from utility to SBU.

The issue I have is on the data logging I cannot select the device in the droplist. Its just not there. It does show the device ID on the main screen on the left

Has anybody else experianced this :(

 

Hi all

So I am finally at a point where i can play with the software that came with my inverter. So I hooked it all up with a USB to RS232 converter. Everything seems to work. I can even hear the relay when I switch output source priority from utility to SBU.

The issue I have is on the data logging I cannot select the device in the droplist. Its just not there. It does show the device ID on the main screen on the left

Has anybody else experianced this :(

You have the older inverter, the new ones have USB plug and play. The data/charts icon shows Device Mode, the dropdown list seems to be only for selecting unticked functions (others are ticked and greyed out).

Select date then click on 'Browse' to see data or charts.

Link to comment
Share on other sites

You have the older inverter, the new ones have USB plug and play. The data/charts icon shows Device Mode, the dropdown list seems to be only for selecting unticked functions (others are ticked and greyed out).

Select date then click on 'Browse' to see data or charts.

Tried what you recommended but did not work. I have a drop down on the left that says select device. But it's empty.
Link to comment
Share on other sites

Where did you install Watchpower? Some security policies in Windows prevent writing to folders located in Program Files and other protected system directories. In order for data logging to work Windows needs a writeable directory. Reinstall Watchpower in C drive or another directory you know your normal user account can write to. Alternatively close Watchpower from system tray, right click the icon while holding shift and select 'Run as Administrator' which may overwrite the security policy blocking writing to the disk.

Link to comment
Share on other sites

Where did you install Watchpower? Some security policies in Windows prevent writing to folders located in Program Files and other protected system directories. In order for data logging to work Windows needs a writeable directory. Reinstall Watchpower in C drive or another directory you know your normal user account can write to. Alternatively close Watchpower from system tray, right click the icon while holding shift and select 'Run as Administrator' which may overwrite the security policy blocking writing to the disk.

I tried the run as admin. Did not work. I will re install quickly on c:

I do have full admin rights but you never know with win 8

Link to comment
Share on other sites

I'm a programmer so I am trying to find a RS 232 packet sniffer. I will then get all the requests and responses and map them. I will then write my own app for windows and for web including a way to calibrate all settings.

 

 

.....and then you going distribute to your mates  :) and forumites. I can see the data on my setup and can download it as a pdf but cannot convert it to something useful (A csv file would have been good).

Link to comment
Share on other sites

Do not know what I did but it started working. The only difference I can see is that the first time I started it up it showed my computer name and below the device I'd. Now it shows my IP address instead off the counter name. Weird. So now if I select the drop box for the device it allows me to select the device.

I am still going to write my own app. Thanks for the help guys. :)

PS:I will sell it to you. Joking I will make it opensource license so you guys can play with it too :)

Link to comment
Share on other sites

Do not know what I did but it started working. The only difference I can see is that the first time I started it up it showed my computer name and below the device I'd. Now it shows my IP address instead off the counter name. Weird. So now if I select the drop box for the device it allows me to select the device.

I am still going to write my own app. Thanks for the help guys. :)

PS:I will sell it to you. Joking I will make it opensource license so you guys can play with it too :)

I was just about to post a pic with the IP address and Device USBxxxxxxxxx number below.

Link to comment
Share on other sites

@ Warren check my broadband there is a ruby script with all the commands and a pdf is available on the Australian electric car forum with all the commands

The ruby script is for connecting a device called a Rasberry PI to other devices for monitoring. It can also be used as a mini router for streaming movies in your house with an application called Plex. In other words a DLNA server.

Link to comment
Share on other sites

Oh I thought it was a serial library, written for ruby, should be cross platform?

require 'serialport'

require 'axpert_rs232'

# => Set your serial port location, ls /dev/ and search for something that makes sense

serial = SerialPort.new('/dev/tty.usbserial', 2400, 8, 1, SerialPort::NONE)

# => Show available commands

AxpertCommands.constants

# => Some current device status info

AxpertCommands::DEVICE_STATUS.issue_command(serial)

# => Some current device rating info

AxpertCommands::DEVICE_RATING.issue_command(serial)

# => Set battery type to user agm

AxpertCommands::SET_BATTERY_TYPE.issue_command(serial, :agm)

Anyway there is still the pdf on the forum

Link to comment
Share on other sites

The USB port is a simple USB -> Serial converter which does not have very good support.

 

I couldn't get it to work in any OS other than Windows.

 

Would highly recommend going with this instead: http://www.takealot.com/trendnet-usb-to-serial-converter/PLID29271821

 

It works on Mac, Linux, Raspberry Pi (without any extra drivers or setup) and Windows.

Link to comment
Share on other sites

  • 2 weeks later...

Hi Everyone

 

i am new to your forum and glad to see so many people with experience in the Axpert series. I have the 5K and installed it around April 15. So far so good no problems. But I am glad to see someone is not happy with the software and would like to communicate with the unit utilising its own protocol commands. has anyone furthered this. thanks

Link to comment
Share on other sites

I wrote a library in Ruby which simplifies the whole communication.

 

Ruby is cross platform (eg. Windows, Linux, Mac) and you would only need to install:

 

Ruby

Ruby-gems

 

Then install the following gems:

 

serialport

axpert_rs232

 

Both are documented and supported on ALL OSs (Worked for me on both my Mac and Raspberry Pi)

 

I'm super busy at work so I haven't been able to finish my application which would give you a web front-end for that library.

 

I tested it using a USB -> Serial converter and I'm still using it.

 

At this point what I have is:

I wrote an application that dumps the Axpert current device status every 2 seconds into a file.

This file keeps being updated and rotate every hour.

Then I used a simple web-application that polls that file for changes and makes it available.

Lastly I used a simple AJAX call with a static HTML page and chart.js to draw some data.

 

All of it is very hacky at this point so I don't want to release it yet.

 

But when I'm done hopefully you can get a web interface of your power usage over time. When you were on battery and when on grid power.

How much is being used by what.

What are the temperatures

Emails when you go on grid/off grid/loss of grid.

 

Nice pretty graphs for everything.

 

The HTML part takes a really long time to be honest and it bogs me down :(

 

On my Raspberry Pi I installed it as follows:

sudo apt-get install ruby-dev

sudo gem install serialport

sudo gem install axpert_rs232

 

After that everything was working.

 

On my Mac I didn't need to do anything except install serialport and axpert_rs232.

 

Haven't tested on Windows (honestly I'm lazy, I hardly use Windows anymore)

Link to comment
Share on other sites

Hi Gnome

 

Thanks for the reply. what is bogging me down is the CRC part. Dont kill yourself laughing but I use Visual basic 2012. I can communicate with the inverter except i cannot get it write to send the correct CRC commands with the Q commands etc But I will look into Ruby. maybe time for changes

Link to comment
Share on other sites

Hi Gnome

 

Thanks for the reply. what is bogging me down is the CRC part. Dont kill yourself laughing but I use Visual basic 2012. I can communicate with the inverter except i cannot get it write to send the correct CRC commands with the Q commands etc But I will look into Ruby. maybe time for changes

 

I fed my C# CRC code through an automatic code converter... Who knows, maybe it'll work :)

Imports System.Collections.GenericImports System.LinqImports System.TextImports System.Threading.TasksNamespace InverterEmulator	''' <summary>	''' Calculates the CRC for the inverter	''' </summary>	Public Class CRC16		''' <summary>		''' Ported from crc.c: http://forums.aeva.asn.au/forums/pip4048ms-inverter_topic4332_page2.html		''' </summary>		Public Shared Function Calculate(pin As Byte()) As UShort			Dim crc As UShort			Dim da As Byte			'INT8U far *ptr;			Dim ptr As Byte			Dim bCRCHign As Byte			Dim bCRCLow As Byte			Dim len As Integer = pin.Length			Dim crc_ta As UShort() = New UShort() {&H0, &H1021, &H2042, &H3063, &H4084, &H50a5, _				&H60c6, &H70e7, &H8108, &H9129, &Ha14a, &Hb16b, _				&Hc18c, &Hd1ad, &He1ce, &Hf1ef}			crc = 0			For index As Integer = 0 To len - 1				ptr = pin(index)				da = CByte(CByte(crc >> 8) >> 4)				crc <<= 4				crc = crc Xor crc_ta(da Xor (ptr >> 4))				da = CByte(CByte(crc >> 8) >> 4)				crc <<= 4				crc = crc Xor crc_ta(da Xor (ptr And &Hf))			Next			'Escape CR,LF,'H' characters			bCRCLow = CByte(crc And &Hff)			bCRCHign = CByte(crc >> 8)			If bCRCLow = &H28 OrElse bCRCLow = &Hd OrElse bCRCLow = &Ha Then				bCRCLow += 1			End If			If bCRCHign = &H28 OrElse bCRCHign = &Hd OrElse bCRCHign = &Ha Then				bCRCHign += 1			End If			crc = CUShort(CUShort(bCRCHign) << 8)			crc = crc Or bCRCLow			Return crc		End Function	End ClassEnd Namespace

Although, if you just want to request messages you could hard code the CRC into the request.

 

Here's a capture of the traffic between WatchPower and the inverter, just copy/paste in the request strings and you should be good to go.

https://github.com/scottwday/InverterEmulator/blob/master/doc/Capture.txt?raw=true

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...