Split/Join with change of type

Dear noderaiders,

I found a tricky one and I'd like to get your advise on this one.

I want to process a UDP stream, I receive a stream of bytes and I want to produce a payload object.

A UDP message consists of a set of 3 different sub-messages that I process separately.
I SPLIT the UDP message in 3 chunks of bytes and process them. For each submessage, its chunk of bytes becomes a payload property, a different property for each submessage.
At the end, I'd love to JOIN all 3 sub messages by merging their payload properties.

Somehow, JOIN always fails to join all 3 sub messages and always spits out 2 messages (it only joins the first 2.) I tried all possible JOIN options.

I wonder if the issue could be caused by the fact that SPLIT works on a certain type of object (split a buffer in 3) and JOIN works on another type of object (merge properties of 3 message payloads.)

Does someone see a workaround to this?

(To move forward, I made my own custom function, temporarily storing portions of the message until I get all 3 portions, then let the message flow. But I'm not satisfy with the workaround.)

I have a test case flow if necessary.

Thank you in advance.

Best regards.

P.