Skip to main content
Visitor II
April 21, 2026
Question

stm32f7 ethernet packet disable PAD and CRC Invalid

  • April 21, 2026
  • 1 reply
  • 102 views

Hi all.

I wish disable auto PAD disable CRC append.

  Send packet use low_level_output(), before call HAL_ETH_Transmit_IT()

I set 

TxConfig.ChecksumCtrl = ETH_CHECKSUM_DISABLE;
TxConfig.CRCPadCtrl = ETH_CRC_PAD_DISABLE;

but packet allways pad to 60byte,

if use TxConfig.CRCPadCtrl = ETH_CRC_PAD_DISABLE;, no packet output

if use TxConfig.CRCPadCtrl = ETH_CRC_INSERT;  output fine but have 4byte crcr append.

How to do , NO-PAD NO-CRC send packet?

1 reply

Technical Moderator
April 23, 2026

Hello @mings_chihs, and Welcome to ST Community!

With the STM32F7 Ethernet MAC, a normal Ethernet transmission is expected to include padding to 60 bytes and a 4-byte CRC/FCS. A frame with both NO-PAD and NO-CRC is generally invalid on Ethernet. Therefore, if the frame is shorter than the Ethernet minimum length, the MAC or network will not treat it as a valid packet.

Best regards,

To improve visibility of answered topics, please click 'Accept as Solution' on the reply that resolved your issue or answered your question.