It’s a limit intended to keep folks from shooting themselves in the foot. The protocol for uploading data to emoncms is positional. If you were to define an output 01 and an output 99 with nothing else, each interval uploaded would need to upload an array of 99 entries where 97 are null. Given that IoTaWatt has 15 inputs, the 30 output limit has been fine.
As a practical matter, I could debate the value of uploading excessive metrics, but folks just seem to want to do it. You need to keep in mind that the IoTaWatt is an IOT device with limited resources. I don’t impose many limits on folks and leave it to them to recognize when the thing gets overloaded. Sometimes it does not fail gracefully.
To change the limit, locate this code in the config app using the File Manager (currently at line 2298):
var scriptEdit = {
table : EbyId("serverOutputs"),
set : config[emoncmsAlias].outputs,
units : ["Watts", "Volts", "Amps", "Hz", "PF", "VA", "Wh", "kWh", "VAR", "VARh"],
namePrompt : "Name is Emoncms Input Key 1-29",
namePattern : "^[1-9]{1}$|^[1-2]{1}[0-9]{1}$",
title : "Emoncms input"
};
and using the Ace editor, change it to this to limit to 39, or whatever you would like:
var scriptEdit = {
table : EbyId("serverOutputs"),
set : config[emoncmsAlias].outputs,
units : ["Watts", "Volts", "Amps", "Hz", "PF", "VA", "Wh", "kWh", "VAR", "VARh"],
namePrompt : "Name is Emoncms Input Key 1-39",
namePattern : "^[1-9]{1}$|^[1-3]{1}[0-9]{1}$",
title : "Emoncms input"
};