···140140 builder.setSegmentLengthIdentifier(v.segLenId);
141141142142 if (v.idle) {
143143+ // setIdle() only sets FHP=0x7FE; data must still be filled.
144144+ // Fill with 0xFF (idle pattern per CCSDS 132.0-B-3).
143145 builder.setIdle();
146146+ int free = builder.getFreeUserDataLength();
147147+ byte[] idleData = new byte[free];
148148+ java.util.Arrays.fill(idleData, (byte) 0xFF);
149149+ builder.addData(idleData);
144150 } else {
145151 // Fill the data field completely — TM frames have fixed length
146152 int freeSpace = builder.getFreeUserDataLength();