Hi Semiory,
Sorry for the late response.
I investigated about this, and the correct way of sending a packet without the length field in the header is to use the gGenfskRawPacket packet type in the GFSK configuration structure pktConfig. The disadvantage is that with this packet type we are limited to a maximum of 35 bytes of payload (31 bytes from LENGTH_ADJ and 4 bytes from H0 and H1), so this might be a limitation to your propietary protocol with a packet size of 46 bytes.
With the raw packet type the maxBufLengthBytes parameter in the GENFSK_StartRx() function sets the received packet size. All packets with different length will be rejected.
For more information on the GFSK packet types, you can refer to the chapter 6.1.5 Generic FSK Link Layer Send and Receive APIs from the "Generic FSK Link Layer Quick Start Guide.pdf" document located in <SDK path>\docs\wireless\GENFSK\.
Regards,
Gerardo