Monitoring individual solar panels

Hey All,

I am looking for a way to first record in emoncms my individual panel data and then display it in the graphs, I am also hoping than an app in CMS can be created from this.

I am currently capturing the following information to a TXT file every 5 mins and 1 file per day.


This information is being stored on the SD card of the EmonPI, so it will be easy enough to parse and insert into EMonCMS, my only issue is I don’t particularity want a new node per panel “ID” it would be good to have a single node and then multiple ID’s within that node recording the Watts generated per panel (per ID). Also if we could get a solar widget that would be awesome.

If anyone can explain if possilbe right now how I can implement this ?

Thanks in advance

How are you capturing the data?

If you pass the data onto MQTT as a JSON, emoncms will pick it up automatically



Data as a JSON

{"Watts" :  192.7,  "V": 7.7}

The flag is more difficult as it needs to be a number.

Loading the older data is possible but more tricky.

thanks borpin,

The unit that monitors the panels is outputting to files on an sd, the company who manufactured these units and the micro-inverters no longer exists, and as such their website is down. This means I am no longer able to monitor my panels individually, I have installed a wireless SD card holder in this unit and am picking up the files daily. My next step was to parse the files and ship to emoncms.

The last step would be to graph the data. Most of the the vendors who have monitoring units have the ability to replay the day at X speed which will allow you to see the generation over a day, or a slide to slide to a specific time in the day.

But I had not though of the MQTT and will give that a go,

Ok that changes things.

Have you searched to see if anyone has hacked the API?

You probably will want the bulk API. Look at the inputs page on emoncms and in the top right is a link to Input API help. follow that.

@pb66 or @TrystanLea will be able to help with using the bulk API if you get stuck.

thanks again,

I have just finished looking at the looking at the MQTT but it does not look like it will accept date/time and so msq. received are time stamped on arrival time.
I have worked with the API and I think that’s probably going to be easier.
1 question is I submit the same data twice to the cms, does is create 2 data points or just over write the previous 1 ?

You can add a ‘time’ key to the JSON (as per the API docs). The processing of the data will use the time key if it is present.


But, this does not help you post data in bulk. MQTT data is overwritten, it is not buffered.