I deleted:
char tempSlaveChars[numCharsSlave]; // temporary array for use when parsing
char messageFromSlave[numCharsSlave] = {0};
And changed this:
strtokIndx = strtok(tempSlaveChars, "*"); // get the first part - the string
to this:
strtokIndx = strtok(receivedSlaveChars, "*"); // get the first part - the string
I believe this is what you suggested me.
This is what goes through now:
Rain sensor: 1
Sensor light: 2.22
Sensor humidity: 3.33
Sensor temperature: 4.44
API rain: 5.55
API temperature: 6.66
API temperature feels: 7.77
API humidity: 8
API wind: 123456789012345678901234567890123456789012345678901234
API weather: 12345678901234567890123456789
API Text tomorrow: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
API Text tomorrow night:
I am using Arduino Mega for the master. Woulnd't that have more SRAM than the Uno?
Also, when changing numCharsSlave to 600, I receive this:
Rain sensor: 1
Sensor light: 2.22
Sensor humidity: 3.33
Sensor temperature: 4.44
API rain: 5.55
API temperature: 6.66
API temperature feels: 7.77
API humidity: 8
API wind: 123456789012345678901234567890123456789012
API weather:
API Text tomorrow:
API Text tomorrow night: