HA!
Having a Boris Grishenko moment.
(Massive HT to @borpin for all the help).
So, by changing the change node - it works! I dropped the Powerwall group and set it to msg instead of string.
Flow below:
[{"id":"6f4bec9.6832c94","type":"tab","label":"Flow 2"},{"id":"fbb0563f.73c548","type":"split","z":"6f4bec9.6832c94","name":"","splt":"\\n","x":436,"y":151,"wires":[["a7db7a95.7f59f"]]},{"id":"2aa0a68.a63aeda","type":"http request","z":"6f4bec9.6832c94","name":"aggregates","method":"GET","ret":"obj","url":"https://192.168.1.220/api/meters/aggregates","tls":"2ef5995c.70f58e","x":278,"y":88,"wires":[["fbb0563f.73c548"]]},{"id":"9daec9b2.76ac4","type":"emoncms","z":"6f4bec9.6832c94","name":"emoncms","emonServer":"5243d6fc.b657f","nodegroup":"","datatype":"fulljson","x":813,"y":174,"wires":[]},{"id":"a7db7a95.7f59f","type":"change","z":"6f4bec9.6832c94","name":"","rules":[{"t":"move","p":"payload.last_communication_time","pt":"msg","to":"time","tot":"msg"},{"t":"set","p":"nodegroup","pt":"msg","to":"parts.key","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":638,"y":94,"wires":[["9daec9b2.76ac4"]]},{"id":"53d70381.4a29a4","type":"inject","z":"6f4bec9.6832c94","name":"","topic":"","payload":"","payloadType":"date","repeat":"10","crontab":"","once":false,"x":105,"y":35,"wires":[["2aa0a68.a63aeda"]]},{"id":"2ef5995c.70f58e","type":"tls-config","z":"","name":"","cert":"","key":"","ca":"./data/powerwall.pem","verifyservercert":false},{"id":"5243d6fc.b657f","type":"emoncms-server","z":"","server":"http://192.168.1.161/emoncms","name":"emonpi"}]
Now I can log my use, powerwall and solar without needing to fit CT clips inside my breaker box (thanks installers for hiding all the single core wiring - in their defence I didn’t ask them to leave any out for me).