This should have been pretty straightforward. You could have used the clockport as a template so here is data simple port of byte connected to data_i, using the hdl_path and the same for the other two ports. So fairly straightforward, and at the bottom here we have our packets to send, a list of packet struct and I'm using a soft constraint to set the size. soft constraints can be overwritten by other hard constraints so you don't get a conflict. And this makes it a perfect candidate to, to set a default size for this packet list.