Skip to content
View in the app

A better way to browse. Learn more.

Power Forum - Renewable Energy Discussion

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Warren

Members
  • Joined

  • Last visited

Everything posted by Warren

  1. The software I am writing will allow for calibration. As long as you have proven values tested with other devices like a multimeter and clamp amp meter on ac and dc you can calibrate the software to compensate. For example I noticed that the axpert watts currently used are about 30 watts less than the actual watts displayed on my efergy energy monitor. If you have 2 of the 3 values you can calculate the third value. For example with volts and amps you can calculate watts. I also noticed that the watchpower software and the inverter display also display some of the values incorrectly. I actually decompiled the watch power software and found even more protocols. The watchpower software was written in Java by sun micro systems. The watchpower software also has logic bugs so some of the values are incorrectly displayed. I also noticed that the watchpower displays the battery fully charged however the inverter displayed it was still charging so I need to see which one is correct. Hope this info helps others.
  2. I looked at it now. I do not believe the serial port control when dragged onto a form automatically creates an event handler. When you start your program it starts on one thread. The reply comes from the second thread. So yes you are getting a reply, however not on the same thread. That is why you need an eventhandler below. Remember your application text box is linked to the first thread and the response is on the second thread. Threads cannot write directly to each other. Rather use the SerialPort Class that comes with .net 4. I have not seen a coms control in a long time so I am sure te control is pretty old It looks like you are using VB 6 or you have downloaded a 3rd party coms ocx, dll or activex control. sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);//This allows you to write from one thread to another. Basically to populate a text boxdelegate void SetTextCallback(string text);public void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e) { string rx = null; SerialPort sp = (SerialPort)sender; while (sp.BytesToRead > 0) { rx += sp.ReadExisting().ToString(); } if (!string.IsNullOrEmpty(rx)) { SetText(rx); }
  3. Yes I am using watchpower but i am also monitoring it with software that I wrote to confirm the values. I am still in the progress of finishing the program. Why you asking?
  4. We use a kettle designed for gas stove and it is pretty quick. Dont over fill. Heat enough to make acuppa joe.
  5. Hi all Im quite excited to share this with you. So I connected all my house lights to my inverter. Yesterday afternoon I started my logging and then ran this report this morning Displays battery capacity and battery voltage overnight till this morning. Lowest battery capacity = 71 % but started recovering after everybody went to bed. See orange line. It recovered to about 89 % Battery voltage stayed pretty constant as per the blue line. By 9 am this morning my solar panels had already charged the batteries back to 100% capacity.
  6. So I am making progress with re-writing the watchpower application for the axpert with the RJ45 to serial option. I do still have one issue.There is a option to view data which is working great however the option for view event log does not seem to work. I cannot select the device ID. I have checked the the inverter and I have set option 25 to enable event logging but to no avail. Has anybody else had the same issue or an idea why it does not work? Can anybody else access there Event log and see data?
  7. Hi scottwday I got it to send the command and trigger the event handler. Now comes the fun part to extrapolate the data. Thanks for your help. It made a big difference. Your code snippet was very helpful public byte[] GetBytes(string Command, ushort Crc){ byte[] result = new byte[Command.Length + 3]; Encoding.ASCII.GetBytes(Command, 0, Command.Length, result, 0); result[result.Length - 3] = (byte)((Crc >> 8) & 0xFF); result[result.Length - 2] = (byte)((Crc >> 0) & 0xFF); result[result.Length - 1] = 0x0d; return result;}
  8. let me try that. Its wierd when I run it through waqtchpower it connects a 19200
  9. Hi Still not winning Still cannot get a response. Here is my code using System;using System.Collections.Generic;using System.IO.Ports;using System.Linq;using System.Text;using System.Threading.Tasks;using Microsoft.VisualBasic;using CrC;namespace ConsoleApp{ class Test1 { /// <summary> /// Test1 /// </summary> public void test1() { /// sp.Write(new byte[] { 0x51, 0x50, 0x49, 0x47, 0x53, 0xb7, 0xa9, 0x0d }, 0, 7); ///first command sent after port opened /// 0x51, 0x50, 0x49, 0xbe, 0xac, 0x0d SerialPort sp = new SerialPort(); sp.PortName = "COM3"; sp.BaudRate = 19200; sp.DataBits = 8; sp.Parity = Parity.None; sp.StopBits = StopBits.One; // sp.Open(); sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); sp.ErrorReceived += new SerialErrorReceivedEventHandler(DataErrorReceivedHandler); byte[] val = new byte[] { 0x51, 0x50, 0x49, 0xbe, 0xac, 0x0d }; ushort uShortValue = CRC16.Calculate(val); byte[] tx = GetBytes("QPI", uShortValue); sp.Write(tx, 0, tx.Length); } public byte[] GetBytes(string Command, ushort Crc) { byte[] result = new byte[Command.Length + 3]; Encoding.ASCII.GetBytes(Command, 0, Command.Length, result, 0); result[result.Length - 3] = (byte)((Crc >> 8) & 0xFF); result[result.Length - 2] = (byte)((Crc >> 0) & 0xFF); result[result.Length - 1] = 0x0d; return result; } public void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e) { // VALUES ARE RECEIVED IN HEX SerialPort sp = (SerialPort)sender; object indata = sp.ReadExisting(); Console.Write("RESPONSE : " + indata + Constants.vbCr); Console.ReadLine(); } public void DataErrorReceivedHandler(object sender, SerialErrorReceivedEventArgs e) { Console.Write(e.EventType); Console.ReadKey(); } }}
  10. Hi Charl If I understand you correctly. On the Axpert inverter it has a built in MPPT charge which allows you to charge your batteries from your incoming power eg Eskom if you do not have solar panels. It also allows you to go into Line mode which means the output of your inverter can draw power directly from eskom and feed it to the output of the inverter. Hope this helps
  11. 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 Hi Scottwday I am a c# devleoper but unfortunatley have not worked with serial ports that much. I have had an issue where I write to the port with a loop back serial tester and it triggers my event handler, however when the port is plugged into the inverter it does not trigger the event handler in c#. I can see through "serial port monitor 6 that it did write to the " port. I have downloaded the emulater from github site and I have even decompiled the watch power app which is written in java. For example C# SerialPort sp = new SerialPort(); I then set all the required port settings Then I write to the port for example sp.Write(new byte[] = ({hex, hex, hex}, 0,2); // This gives me the correct write status on my port sniffer ie exactly the same as when I sniff the port when watch power is running. Do you have a snippet of hwo the port is written to or an idea why it does not trigger my event handler. Thanks
  12. Hi supirdiy I spoke to an installer this morning. There opinion is as follows If you have dedicated red plugs that are only supplied from the the inverter output then you must bond neutral/earth on the inverter output and the earth must run to ground. E.G. earth spike. These dedicated plugs will also run of utility as when the Axpert inverter goes into in-line(E.G utility) mode they will be bonded too unless you choose the setting to suppply only from batteries and never from the utilities. It does not matter what state you inverter is in E.G. running from utility or batteries. He said the double bonding is not an issue, however if you are in battery state and you have not bonded you will have a floating voltage. If there is a direct short of any type of metal appliance and you are touching the applience death will occur. He also said that if you have not bonded the neutral/earth on the inverter output and you do not have a ground and you have an ELR on the inverter DB it will not trip if something goes wrong as it cannot measure the potential difference between the neutral and live as it is floating. Now point 1 kind of becomes a conundrum as Sans say you must have split neutral bars but this is for generators. Generators are usually earthed to there chassis. I dont think they have taken into consideration that inverters do not work the same as when a generator is wired directly to the DB board without an inverter you have to use a passover switch so that the utulity never ever comes in contact with the generator. As to your comment of connecting the inverter after the ELR on your utility board. Yes it will trip when your inverter is running in-line mode as both neutral/ earth and live feed directly through the inverter from the utility. The bonding will trip the ELR. I chose to run it between the double poll braker and the ELR on my main DB as I have an ELR on my inverters DB. As to the question about using a relay. The installer said there is no requirement for a relay to do dynamic bonding. Static bonding is fine as leakage voltage will alway choose the shorter of the 2. In other word on battery or utility power it will choose your neutral earth and will discharge to the ground you have added to your inverter. He is going to send me a diagram and some pictures of how they do there installations. I will then post them here. These guys do installations all the time and have been doing them for quote a few years so I do trust there judgement as they have not had any customer electrocute themselve. I would rather play it safe when it comes to my family than worry about a stupid sans regulation which can lead to my family members being electrocuted
  13. 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.
  14. 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
  15. 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.
  16. 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
  17. Tried what you recommended but did not work. I have a drop down on the left that says select device. But it's empty.
  18. 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
  19. I contacted an installer from the company that I purchased my kit from. To Quote him "The inverter must be bonded in a seperate box between the inverter and Inverter DB panel as per compliance for COC." He did not mention anything about a relay and I cannot get a reply from him. Will update again when I find out more.
  20. I will edit the post and see if I can get the images to work.
  21. Yeah. I realized only after my guy finished cutting the wall that I had to many bends. Lol you learn by your mistakes. I prefer the cables in the wall. I don't really like trunking. I chose to use the surface mount as it was the cheaper option and does the same job. There is no EL I still need to install it. What you see are circuit breakers. One for inverter AC in and one for inverter AC out so I can isolate each side. I struggled with the earths but finally got them in. The solar tracking system works well. The only reason I built such a strong frame as the panels are quite heavy. It actually pivots quite well. It runs off a 18vdc cordless drill motor with the gearbox. I have the solar tracking circuit which I still need to by the components. I will take a video and post the link.
  22. Okay I finally got my showcase posted but my images are linked to dropbox as the images are in a format this site does not like. http://powerforum.co.za/topic/262-my-system-installation-diy-almost-complete/#entry2009 I will also keep in touch as to when the supplier's installer has given me feedback. I will post my wiring diagram on the topic link above.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.