This project has moved and is read-only. For the latest updates, please go here.

Multiple inverters in one system

Topics: 5. Support
Oct 7, 2014 at 11:58 PM
Hi,

Just trying to configure the upload daemon. I have a 2 inverter setup, trying to go to the one system on PVOutput.org. Currently (since updating from 2.x to 3.x) it's only showing data from one of the inverters.

My PVoutput_SID configuration is as follows:
  • PVoutput_SID=2001900854:10084,2001900861:10084
Is there a way to combine both inverters with the same SID that'll work?

Also, for some reason since upgrading, the total kWh generated isn't showing. Only the instantaneous. Any tips there would be greatly appreciated too :)
Oct 8, 2014 at 3:52 PM
Edited Oct 9, 2014 at 7:44 AM
No, PVoutput_SID configuration will not work like this.
Never tested this, but you should change the vwPvoData view to something like this:
       SELECT dd.Timestamp,
              dd.Name,
              dd.Type,
              12345678 As Serial,
              SUM(dd.TotalYield) AS V1,
              SUM(dd.Power) AS V2,
              cons.EnergyUsed AS V3,
              cons.PowerUsed AS V4,
              NULL AS V5,
              NULL AS V6,
              NULL AS V7,
              NULL AS V8,
              NULL AS V9,
              NULL AS V10,
              NULL AS V11,
              NULL AS V12,
              dd.PVoutput
         FROM vwDayData AS dd
              LEFT JOIN vwAvgSpotData AS spot
                     ON dd.Serial = spot.Serial AND dd.Timestamp = spot.Nearest5min
              LEFT JOIN vwAvgConsumption AS cons
                     ON dd.Timestamp = cons.Nearest5min
         GROUP BY dd.Timestamp
        ORDER BY dd.Timestamp DESC;
This creates also a fake serial nr 12345678 to use in your config:
PVoutput_SID=12345678:10084
Like I said, It's just an idea, didn't test it
Oct 8, 2014 at 11:08 PM
Edited Oct 8, 2014 at 11:09 PM
Thanks, that seems to almost work. It's uploading the combined data, but (I'm assuming) because the serial nr is different to what's in DayData, it's not updating DayData to say the data has been uploaded to PVOutput, so it is just trying to re-upload the same data over and over again, not actually moving on to the next data points that aren't yet in PVO.

In SMAspot I used to have 2 config files - one for each inverter, and both set to the same PVoutput_SID, and that seemed to work.
Oct 9, 2014 at 7:54 AM
What if you change the fake serial with 1 of the real ones?
       SELECT dd.Timestamp,
              dd.Name,
              dd.Type,
              2001900854 As Serial,
              SUM(dd.TotalYield) AS V1,
              SUM(dd.Power) AS V2,
              ....
PVoutput_SID=2001900854:10084
It's only a workaround... I'll see how to manage this in code
Oct 9, 2014 at 10:55 PM
Edited Oct 9, 2014 at 11:09 PM
Yes, that works :)

I was thinking about it last night and came up with the same solution. Just tried it and data is now going in correctly. The chart in pvoutput matches my own charting that I've created using the DayData table.
Oct 10, 2014 at 12:39 AM
Edited Oct 10, 2014 at 12:45 AM
Hmm...it seems to have gotten stuck...

Everything in vwDayData looks right, but looking in vwPvoData at the timestamp where it's stopped (2014-10-09 07:10:00):
  • The Name field doesn't match the Serial field (it's showing the name of the other inverter instead)
  • - Before that point it was right
  • The PVOutput field is NULL.
mysql> SELECT TimeStamp,Name,Type,Serial,PVoutput FROM `vwDayData` WHERE `TimeStamp` > '2014-10-08 19:00:00' AND TimeStamp < '2014-10-09 07:20:00' ORDER BY TimeStamp;
--------------------------------------------------------------------------
| TimeStamp           | Name           | Type    | Serial     | PVOutput |
--------------------------------------------------------------------------
| 2014-10-08 19:05:00 | SN: 2001900861 | SB 1700 | 2001900861 |     NULL |
| 2014-10-08 19:05:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-08 19:10:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-08 19:10:00 | SN: 2001900861 | SB 1700 | 2001900861 |     NULL |
| 2014-10-09 07:10:00 | SN: 2001900861 | SB 1700 | 2001900861 |     NULL |
| 2014-10-09 07:10:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-09 07:15:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-09 07:15:00 | SN: 2001900861 | SB 1700 | 2001900861 |     NULL |
--------------------------------------------------------------------------


mysql> SELECT TimeStamp,Name,Type,Serial,PVoutput FROM `vwPvoData` WHERE `TimeStamp` > '2014-10-08 19:00:00' AND TimeStamp < '2014-10-09 07:20:00' ORDER BY TimeStamp;
--------------------------------------------------------------------------
| TimeStamp           | Name           | Type    | Serial     | PVoutput |
--------------------------------------------------------------------------
| 2014-10-08 19:05:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-08 19:10:00 | SN: 2001900854 | SB 1700 | 2001900854 |        1 |
| 2014-10-09 07:10:00 | SN: 2001900861 | SB 1700 | 2001900854 |     NULL |
| 2014-10-09 07:15:00 | SN: 2001900861 | SB 1700 | 2001900854 |     NULL |
--------------------------------------------------------------------------
Probably need to add something to the vwPvoData to ensure it is using the right serial when getting the PVOutput column from vwDayData since sometimes the inverters start one before the other resulting in the records not being simply alternating.

Any suggestions?
Oct 10, 2014 at 8:21 AM
You can try this, but it will lead you into the problem of not setting the pvoutput flag I'm afraid
       SELECT dd.Timestamp,
              dd.Name,
              dd.Type,
        ===>  MAX(Serial) As Serial,
              SUM(dd.TotalYield) AS V1,
              SUM(dd.Power) AS V2,
              ....
Jan 22, 2015 at 8:05 AM
SBF wrote:
You can try this, but it will lead you into the problem of not setting the pvoutput flag I'm afraid
       SELECT dd.Timestamp,
              dd.Name,
              dd.Type,
        ===>  MAX(Serial) As Serial,
              SUM(dd.TotalYield) AS V1,
              SUM(dd.Power) AS V2,
              ....
Hello, i have the same problem, 2 inverters. Where is the place for this code? In the sources? Sorry i need help, im a beginner. Thanks
Jan 23, 2015 at 8:07 AM
It's about changing the vwPVoutput view in the DB, but when you have 2 inverters, I recommend upload to 2 pvo systems.
Jan 23, 2015 at 10:27 AM
TBR wrote:
SBF wrote:
You can try this, but it will lead you into the problem of not setting the pvoutput flag I'm afraid
       SELECT dd.Timestamp,
              dd.Name,
              dd.Type,
        ===>  MAX(Serial) As Serial,
              SUM(dd.TotalYield) AS V1,
              SUM(dd.Power) AS V2,
              ....
Hello, i have the same problem, 2 inverters. Where is the place for this code? In the sources? Sorry i need help, im a beginner. Thanks
Where must be edited? With "sudo nano /home/pi/smadata/SBFspot.db" ?
Jan 23, 2015 at 12:23 PM
TBR wrote:
Where must be edited? With "sudo nano /home/pi/smadata/SBFspot.db" ?
Absolutely NOT!!!
This topic is covered in the documentation
Jan 23, 2015 at 4:36 PM
SBF wrote:
TBR wrote:
Where must be edited? With "sudo nano /home/pi/smadata/SBFspot.db" ?
Absolutely NOT!!!
This topic is covered in the documentation
Do you mean the document: SBFspot V3 Quick Reference Linux EN 1.0? Which side is the description?
Jan 24, 2015 at 5:53 PM
Yes, that document... see "Tweaking"
But again: instead of doing this, I strongly recommend to upload to 2 different systems on PVO