Photon Functions - Max Argument Length

I have an application that involves calling a custom function inside the Photon, and which requires two serial numbers which are both about 40 chars long be passed to the custom function as a String argument. So what happens is my function gets called, but since my argument was (quite a bit) longer than the 63 char maximum, the argument is passed in as null.

It seems to me that the maximum event publication length is now larger (?) for Photons than for the Core; are there any plans to increase the function argument length? This is very limiting issue for me. I am already compressing my device instructions as much as possible, but there is no way I can hash these serial numbers down.

@msolters, yup, the next release of the Photon firmware will increase the publish value length to 255. :smile:

1 Like

I’ll discuss this with the team to be sure, but I do believe we will increase function argument length also to 255 to match the publish length although it’s not been done yet.

2 Likes

Doesn’t seem like this has occurred. We’re still at 63 characters for function arguments.

Any chance this will be upped some time in the future? Guessing not. Time to break out base64!

1 Like

Are there any plans to get function arguments bigger than 63 chars? Even using MessagePack, we can’t get the amount of data down onto the controller. Are there some other methods of getting config data down onto the controller without passing it through a function call?

Open to suggestions!

Thanks.

Upgrading to system firmware 0.8.0-rc.4 or later (current version is rc.10) will increase the function parameter size limit from 63 bytes to 622 bytes.

1 Like

By the way, I tested sending large function parameters and publishing large data from the API (Particle CLI) and the cloud-side support is live, so it really works end-to-end now when the device is running 0.8.0-rc! I tested with 0.8.0-rc.8.

3 Likes

Fantastic! As ever, thanks Rickkas, you’re yet again a real help. This makes our lives SO much easier now, alot of development effort would have been spent trying to get round this limitation.