emonCMS CSV export not working correctly

I installed emonHP in March earlier this year to monitor my Daikin Heatpump. I’d like to download a CSV of all my data since then so I can do some analysis of the performance at various flow temperatures, however it is not working.

When I download a CSV of the data i it contains a number of PHP notices, and just 2 data null rows.

[This appears to be emoncms.org - not a local emonCMS (Moderator - RW)]

Steps to reproduce:

  1. Log in to EmonCMS and go to Feeds Emoncms - user login
  2. Select all feeds, then click the download button
  3. Select a date range, e.g. 1st October to 29th October, and change interval to 1 minute.

I think click export and it saves a file, however the file is full of PHP notices and contains just 2 rows, when the estimated download size was 6.23 MB.

Does anyone have any ideas how to fix this? Is it a problem with my configuration or emonCMS more generally?



Welcome, Paul, to the OEM forum.

First, a disclaimer - I’m not an emonCMS expert. I haven’t got any data stored at emoncms.org, so I can’t test your problem, but my first thought is, what is the Feed interval of all your feeds? And how often are you sending data to the feeds? If this is less than the Feed Interval (and the feeds are Fixed Interval), then you’ll have a lot of NULL values in the feed which might be the problem.

The way I explain how the Fixed Interval TimeSeries works is like this:

Think of the emonCMS FITS Feed as a line of boxes moving along a conveyor. The speed of the conveyor - the time it takes a box to go past a fixed point - is the “Feed Interval” If there’s a box going past every 10 s but data falls onto the conveyor every 30 s, two boxes out of three will move on empty, with no data in them (a NULL value). The device sending data to emonCMS needs to send it just slightly more frequently than the Feed interval you choose when you create the Feed. If there’s already data in the box and it hasn’t moved on, it will overlay the data already in there, which is lost. But you won’t have null values in the Feed.

The same applies to any Feed and any timebase - and the boxes move on the Internet minute, or multiples or sub-multiples thereof. i.e., a 10 s feed happens on the minute and at 10, 20 etc seconds past.

If you can always guarantee that the source will send the data in the middle of a time slot by Internet time, you can safely match the rates exactly.

Where the sender, the emonTx for example, depends on a crystal tolerance for its timebase, or there might be transmission delays, we set it to send every 9.96 seconds and use a 10 s feed interval. Similarly, the emonTH is set to send every 58 s approximately and uses a 60 s interval.

Hi Robert, thanks for your reply.

My emonHP device was pre-configured when it arrived to send data to EmonCMS and HeatPumpMonitor. It appears to only have 1 feed set up which is a “VIRTUAL” feed.

If I look at the inputs page, it seems the data is being refreshed every 10 seconds.

I presume the local box is just relaying all it’s data to the cloud emonCMS instance. The cloud version does have all the feeds listed, but I have had a look around both the local and cloud emonCMS dashboards but I can’t see where the interval is being set.

The interval at which data is sent will be set in the heatpump monitor itself. The Feed interval is set on the Inputs page when the Feed is created, it’s a Fixed Interval feed and it can never be changed, though you can see what it is by hovering your mouse over the name.
10 s (or a fraction under, for reasons I’ve explained) is pretty much our standard for this sort of thing.

If it came set up, then it’s probably not the interval that’s causing the problem, so I think - as it’s emoncms.org - you’ll need @TrystanLea who looks after the site to help you.

Hello @pmuk, sorry about this. I’ve improved the error response now, the issue is that you are requesting too many datapoints as part of a multi feed selection. If you select and download feeds individually it will work. Or if you download a shorter time period e.g 10 days with multiple feeds that will also work.

1 Like

Apologies for reviving an old thread but when searching, it seemed the most relevant place to ask. What Feed Interval would you recommend for emonHP please?

As pmuk noted the inputs appear to updated roughly every 10 seconds.

Is it worth reducing the interval for some inputs? Or is it best to configure them all with the same interval? I was thinking _Energy for example might only be worth setting at 30 minutes, but _Power at 20 or 30 seconds?


You can, but the storage is so efficient, it isn’t worth reducing it generally.

BTW, once created the interval cannot be changed.

1 Like

Realising that now. Would I be correct in thinking I could delete those feeds and recreate them to reduce the interval if I’m happy to lose the data captured up to that point?

Yes. Just create a new ‘Log to Feed’ process on the Input.

You could post process the existing data (first) but if a new setup probably not worth it.

However, I’d generally just go with what has been setup already if done by the shop.

Thank you.
In the local emoncms, there were only inputs, nothing in the feeds, apps, dashboards.
I’m also a little confused how it’s publishing to emoncms.org as in the local instance the sync page shows " Note: Data upload is not yet enabled on emoncms.org."

I’m not sure how the HP Bundle is setup by default. @Gwil would help there.

I suspect that the underlying emonhub sends the data both to the online and the local version of emoncms so the 2 sets of data are independent and not actually linked (or synced).

1 Like

I’ve jumped the gun, my installer advised this morning it’s setup on his account, but he’s happy for me to ask Glyn about having it on my own account.

By default the emonHP is pre provisioned to send data directly to emoncms.org with no local logging. The inputs there available locally if somone wants to setup local logging

1 Like