2025-02-12 04:42 PM
Hello,
I started a new project using the H743, ethernet, LAN8742 and NetXDuo (on one of our custom boards). Its a very simple project that initializes the hardware, initializes AzRtos, ThreadX, and NetXDuo, and starts TCP, UDP, and ICMP. This project is just a base (Starting point) for much bigger projects. When connected to the network, i can ping the board, it can either use a static IP or the DHCP client.
The strange part is that the software works when the clock configuration is set to 400MHz. If I try to set it to 480MHz, NetXDuo doesn't receive any packets from the network. At 480MHz, the phy is working properly and it detects (prints a line) stating the status of the ethernet cable (plugged in / unplugged). The phy is sending a 50mhz clock to the H743, so I don't understand why the MCU works at 400 but not 480. Anyway, I've been pulling my hair out trying to figure out why it doesn't work. Everything in the Clock Configuration looks ok and CubeIDE does not complain about any of the values entered. Does anyone have any clue or suggestions as to why it doesn't work at 480MHz?
Thanks
Matthew
2025-02-13 06:57 AM
Hi @SofLit
It seems to run a simple GPIO blink and talk to an i2c device at 480mhz...
2025-02-13 07:13 AM
@matt-crc wrote:Hi @SofLit
It seems to run a simple GPIO blink and talk to an i2c device at 480mhz...
1- I tried running the simple net app on the 16 prototypes that we built, and all the results were the same.
at 360mhz, board works
at 400mhz, board works
at 420mhz, board fails (loses all packets) but the blinking light still works as well as ITM
at 480mhz, board fails (loses all packets) but the blinking light still works as well as ITM
2- I disable D-Cache - same result
3- I disable I-Cache as well, - same result
2025-02-13 07:29 AM
Do you have NUCLEO-H743 or NUCLEO-H753 boards on which there is a LAN8742 RMII PHY? is that possible to run the test on it at 480Mhz?
2025-02-13 07:38 AM
I stripped all logic out of the code and now I'm just trying to run ST generated code from the CubeIDE. The code is configured to load AzRtos, ThreadX, NetxDuo. There are no user threads defined, and it just uses the threads that AzRtos setup. It works at 400MHz (packets received)
at 480Mhz, no packets get through, only ARP packets
very strange....
2025-02-13 07:39 AM
I was going to try that, but Distribution and ST say the boards are obsolete and cannot be ordered.
2025-02-13 07:50 AM
@matt-crc wrote:
I was going to try that, but Distribution and ST say the boards are obsolete and cannot be ordered.
Maybe because you tried to order NUCLEO-H743 which is indeed obsolete:
While NUCLEO-H753 still active:
The two chips are compatible. H753 has just the cryptography feature. So you can run any example on STM32H753 generated for STM32H743.
2025-02-13 08:03 AM
Hi @SofLit
1- If there is an issue with the h743 MCU, is it wise to use a h753 MCU?
2- Distribution has 0 stock for any of the NUCLEO-H7[4-5]x
3- ST says they have limited stock, but to order from ST will take 4-6 weeks to arrive.
2025-02-13 08:05 AM
1- No. They are the same die. The crypto engine is disabled on STM32H743.
2025-02-13 08:17 AM
I can't find any stock... ST said it had 17 pcs in stock, when I go to the ST store, it says:
2025-02-13 08:33 AM - edited 2025-02-13 08:38 AM
Emm I see .. it still active but out of stock contrarily to H743.
What about STM32H750B-DK (with LAN8740)? Same die but with less flash size (128kB).