S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi NXP Team, I'm working with the S32K3-T-BOX (S32K344, schematic SCH-50735 Rev C) and trying to get Ethernet working with the S32K344 lwIP example Example_S32K344_EMAC_lwIP_Baremetal_S32K344_v1_0_S32DS36_RTD700. What I did Moved the project from the S32K3X4EVB-T172 setup to the T-Box: package S32K344_172HDQFP, 40 MHz external crystal, RMII. Re-routed the EMAC pins to match the T-Box schematic: TXD0 PTC2, TXD1 PTD7, TX_EN PTD12, TX_CLK/REF_CLK PTD11 (input), RXD0 PTC0, RXD1 PTC1, RX_DV PTC17, RX_ER PTC14. The project builds with 0 errors. I flashed it with the S32 Debug Probe on the S32K344 header. The firmware runs through main() → device_init() → Eth_43_GMAC_Init() and stays in the main loop until the example's test timeout. Problem The RJ45 LINK/activity LEDs never turn on, and Windows shows the adapter as "Disconnected". The same PC port and cable link normally with other devices. Board checks Power LEDs (PF5020 rails) are on. J51, J53 and J55 are on 1-2. S1 is OFF/OFF (boot from SJA1110 flash). U36 (SJA1110 status LED) does not blink green, so I suspect the SJA1110B has no firmware or configuration. Questions The example's description.txt lists only the S32K3X4EVB-T172. Is it intended to work on the S32K3-T-BOX, or only on the EVB? Does the SJA1110B need its own firmware or configuration (for example S32K3_T_BOX_LWIP_for_SJA1110) before the RJ45 link comes up? If so, what is the recommended procedure and debugger for the SJA1110 debug header (J57)? Is a prebuilt image available? Is any SJA1110B-side setting needed so the RMII link to the S32K344 EMAC works (RMII mode, 50 MHz REF_CLK direction)? Thanks! Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
Please find the answers to your questions below.
1. The example is intended for the S32K3X4EVB-T172 and will not run on the S32K3-T-BOX without board-specific modifications.
Please refer to slide 15 of the https://www.nxp.com/webapp/Download?colCode=TP-S32K3-T-BOX-LWIP-GUIDE In particular:
The S32K3-T-BOX uses a 40 MHz external crystal, while the EVB uses a 16 MHz crystal. The clock configuration must therefore be updated accordingly.
The RMII reference clock for the S32K344 EMAC is provided by the SJA1110. A short delay should be added before the S32K344 clock initialization to allow the SJA1110 to start and provide the RMII reference clock.
The external PHY initialization in device_init() is not required because the Ethernet PHY and switch initialization is handled by the SJA1110 firmware.
2. Yes, the SJA1110B requires its own firmware and switch configuration. Without running SJA1110 firmware, the RJ45 port and the RMII connection to the S32K344 will not be initialized.
I have prepared examples for several SJA1110-based boards, including the S32K3-T-BOX. Please refer to Ethernet Switch SJA1110 Examples. The examples initialize and test the relevant ports and provide LED indication. A prebuilt flash_image.bin is included, so rebuilding the project is not required.
Due to distribution restrictions, the complete SJA1110 example projects cannot be attached directly to the Community article. The example may be provided upon request through NXP Technical Support and may require an NDA. Please submit a support case through NXP Technical Support and reference the required S32K3-T-BOX SJA1110 example.
3. Connect a debugger that supports the SJA1110 device to the SJA1110 debug header J57 and program the provided flash image. I use either a PEmicro Multilink debugger or Lauterbach TRACE32. A prebuilt image is available as described in answer 2.
4. Yes. The SJA1110 firmware must configure the switch port connected to the S32K344 for RMII operation and provide the 50 MHz RMII reference clock to the S32K344 EMAC. This is handled by the S32K3-T-BOX-specific SJA1110 example.
The inactive U36 LED is therefore a strong indication that the SJA1110 firmware is not currently running or that the device did not boot correctly.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, Thank you for the detailed answers. They confirmed the cause for us. Our status: The SJA1110 is powered (jumpers J51, J53, J55 on 1-2, PF5020 rails on) and S1 is OFF/OFF, but U36 stays dark. We built the public S32K3_T_BOX_LWIP_for_SJA1110 project to app_flash.elf. On the S32K344 side we have applied your three points: the 40 MHz clock configuration, a delay before the clock initialization, and removal of the PHY initialization from device_init(). Two questions: The article "Example SJA1110 FreeRTOS lwIP S32K3-T-BOX" only attaches Example_Availability.txt and no flash_image.bin. Could you share the prebuilt image directly, or tell us which support case to open (and whether an NDA is needed)? In the meantime, is the public S32K3_T_BOX_LWIP_for_SJA1110 project suitable for the T-BOX? Does its switch configuration forward frames between the RJ45 port (P1) and the S32K344 RMII port (P2)? We'd also like to confirm that a PEmicro Multilink is the right probe for J57. Best regards, Divya Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
Your DIP switches are inline with my board.
Please, check signal level of DEVICE_CFG_N connected to PTA13. If switch accepts the configuration, DEVICE_CFG_N should be low.
ad 1. Yes, due to distribution restrictions, the complete SJA1110 example projects cannot be attached directly to the Community article. The example may be provided upon request through NXP Technical Support and may require an NDA. Please submit a support case through NXP Technical Support and reference the required S32K3-T-BOX SJA1110 example.
The main reason is that Automotive Ethernet belongs to export policy control and additional approvals might be required.
ad 2. Yes, S32K3_T_BOX_LWIP_for_SJA1110 project is dedicated for the T-BOX. Yes, L2 Forwarding table has default settings - forward to all ports except to source port. Yes, I used PE micro multilink FX.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, Thank you for the clarification. I am working with the Example_S32K344_EMAC_lwIP_Baremetal_S32K344_v1_0_S32DS36_RTD700 example and have modified the EMAC pin configuration to match the S32K3-T-BOX hardware. Could you please confirm whether the pin configuration shown in the attached S32DS ConfigTools screenshot is correct for the T-Box, or if any changes are required? Best regards Divya Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
Your pins appear to be correct. MDIO and MDC are not required.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, We have successfully built the SJA1110 lwIP example, but we need clarification on a few points. 1. SJA1110 .mex file fails to open We imported and built the S32K3_T_BOX_LWIP_for_SJA1110 example using S32 Design Studio 3.4.3 and RTD 2.0.0. The project builds successfully with 0 errors, but opening sja1110_t_box.mex produces the following error: Processor SJA1110, s32sdk_sja1110_rtm_100 version is not supported by current version of the tool. Could you please confirm which SJA1110 SDK or Configuration Tools package is required to open this .mex file? Is there a compatible package for S32DS 3.4.3, or do we need to use a different S32DS version? 2. Which firmware image should be programmed onto the SJA1110? After building the S32K3_T_BOX_LWIP_for_SJA1110 example, we obtained the following files: app_flash.elf sja1110_t_box.elf flash_image.bin flash_image_single_bank.bin sja1110_t_box.bin Could you please confirm which file, if any, should be programmed onto the SJA1110 on the T-Box board? Can we use a prebuilt SJA1110 firmware image directly without opening or modifying the .mex file? If so, could you provide the correct image and the recommended programming procedure using a PEmicro Multilink FX debugger through J57? 3. Debugger initialization script for the SJA1110 example We would also like to clarify the debugger configuration for this example. Should we use the following initialization script? ${S32DS_INITIALIZATION_SCRIPTS_DIR}/s32k3xx/s32k3xx_generic_bareboard.py Or is a different initialization script or debugger configuration required for the SJA1110? Please clarify the recommended procedure for programming and debugging the relevant target. 4. TCP/IP middleware is missing from the MCAL configuration For the Example_S32K344_EMAC_lwIP_Baremetal_S32K344_v1_0_S32DS36_RTD700 example, we opened lwip_baremetal_s32k344.mex but could not find the Middleware TCP/IP Stack component in the MCAL configuration tools. Is the TCP/IP stack expected to be configured through the MCAL Configuration Tools, or is lwIP integrated and configured separately at the application level? If additional software or configuration packages are required, could you please specify which ones and how to install them? 5. Recommended procedure for Ethernet bring-up on the T-Box Our T-Box RJ45 link LED remains off. Could you please confirm the recommended sequence for initializing the SJA1110 switch, establishing the RMII connection with the S32K344, and bringing up Ethernet using the T-Box lwIP example? We would appreciate any relevant documentation, compatible software packages, prebuilt firmware images, or example projects that could help us complete this setup. Thank you for your support. Best regards, Divya Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
Please find my answers below.
1. SJA1110 .mex file fails to open
The sja1110_t_box.mex file was created with S32 SDK for SJA1110 RTM 1.0.0. Therefore, the corresponding SJA1110 development package and SDK integration are required to open and modify it.
However, the SJA1110 SDK is now considered a legacy software solution and is no longer available to new customers. Current software development for the SJA1110 is based on the Real-Time Drivers ecosystem. For new projects, the recommended approach is therefore to use the SJA11xx RTD and Ethernet Switch (ETH_SWITCH) driver packages rather than the legacy SDK.
Unlike the legacy SDK, which was delivered as a more integrated installation, the RTD software ecosystem is modular. The base RTD, Ethernet PHY and Ethernet Switch drivers, and optional middleware such as FreeRTOS and the TCP/IP stack are provided as separate packages with defined version dependencies.
The packages used by my current SJA1110 examples, including the recommended installation order, are listed in the following thread:
SJA1110 SDK and RTD package information
2. Which firmware image should be programmed onto the SJA1110?
The appropriate file depends on the programming tool:
For PEmicro, use app_flash.elf.
For Lauterbach TRACE32, use flash_image.bin.
Therefore, with a PEmicro Multilink FX connected to the SJA1110 debug header J57, use app_flash.elf.
3. Debugger initialization script for the SJA1110 example
Do not use ${S32DS_INITIALIZATION_SCRIPTS_DIR}/s32k3xx/s32k3xx_generic_bareboard.py
This initialization script is intended for S32K3 devices, not for the SJA1110.
For PEmicro, use the SJA1110-specific debug configuration supplied with the SJA1110 project and program app_flash.elf. The required SJA1110 device support is provided by the corresponding SJA1110 development package or SDK integration.
4. TCP/IP middleware is missing from the MCAL configuration
This is expected if only the S32K3 RTD package is installed. The TCP/IP stack is separate middleware and is not part of the base MCAL or RTD installation.
For S32K3 RTD 7.0.0, based on the available release information, install these matching packages:
SW32K3_FreeRTOS_11.1.0_7.0.0_CD1_D2510_DesignStudio_updatesite.zip
SW32K3_TCPIP_STACK_4.0.0_D2512_DesignStudio_updatesite.zip
FreeRTOS is a required dependency of the TCP/IP Stack package, including for installation and use of the supplied bare-metal examples. After installing both the matching FreeRTOS and TCP/IP Stack packages in S32 Design Studio, the middleware components and associated examples should become available. You will most likely need to re-import the S32K3 project so that the newly installed components are properly recognized.
Please always follow the dependency and compatibility information in the release notes of the selected RTD and TCP/IP Stack versions.
5. Recommended Ethernet bring-up procedure for the T-Box
The recommended sequence is:
Start with an S32K344 lwIP example supplied with the compatible S32K3 TCP/IP Stack package.
Adapt the pin multiplexing and clock configuration to the S32K3-T-BOX schematic, including the 40 MHz FXOSC and the T-BOX RMII pin assignment.
Apply the additional T-BOX-specific changes described in the S32K3-T-BOX lwIP Example Guide.
Program the SJA1110 firmware through J57. The SJA1110 firmware initializes the switch, the RJ45 port, and the RMII interface toward the S32K344.
Confirm that the SJA1110 firmware is running, including the expected indication on U36.
Start the S32K344 application after the SJA1110 has had sufficient time to boot and provide the required RMII reference clock.
For a new RTD-based SJA1110 project, download the applicable SJA11xx RTD, Ethernet PHY, Ethernet Switch and middleware packages and adapt any existing example to the S32K3-T-BOX.
If you already have a valid NDA with NXP, please provide the NDA number in the Technical Support case, you have already created. I can then check whether the existing S32K3-T-BOX SJA1110 example can be shared with you.
The relevant documentation and software packages are available from the NXP website. Some files are available only under Secure Files and require an appropriate NDA. Automotive Ethernet software may also be subject to export-control review and additional access approval might be required.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
Purchasing the evaluation hardware and obtaining access to controlled-release software and documentation are separate processes. The SJA1110 documentation, RTD packages and complete example projects are not classified as public material. They are distributed through NXP Secure Files, where a valid NDA is required before access can be granted.
The NDA is therefore not required simply because you purchased or use the S32K3-T-BOX. It is required because the complete SJA1110 example contains software and configuration information associated with a controlled-release Automotive Ethernet product.
In addition, SJA1110 software packages are subject to an access-approval process. Automotive Ethernet software may also be subject to export-control policies, so additional approval may be required even when a valid NDA is already in place.
Unfortunately, I cannot provide the complete project or firmware outside this controlled distribution process. The available alternatives are:
If your company already has a valid NDA with NXP, please request access to the relevant SJA1110 Secure Files or provide the NDA reference in an NXP Technical Support case.
If no NDA is currently in place, please initiate the NXP NDA process and then request Secure Files access.
Publicly available S32K3-T-BOX materials may still be used for the S32K344 side, but they do not replace the controlled SJA1110 firmware and configuration required to initialize the switch and its RMII connection.
Please note that an NDA enables the access-request process but does not automatically guarantee access to every software package. The applicable product and export-control approvals must also be completed.
Once the required access is approved, the SJA1110 RTD packages and the applicable T-BOX example can be provided through the authorized support channel.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel We received a new NXP S32K3 T-Box prototype that was initially working, with the U36 indicator blinking and the Ethernet port LEDs illuminated. We flashed the following example using S32 Design Studio 3.6.10: Example_S32K344_EMAC_lwIP_FreeRTOS_S32K344_v1_0_S32DS36_RTD700 After flashing it, both the U36 indicator and Ethernet port LEDs stopped working. We also tried the following example, but the issue persisted: S32K344EVB_T172_UART_ETH_Gateway In addition, we had previously tried several other Ethernet-related examples on our previous T-Box, including bare-metal lwIP, FreeRTOS lwIP, and Ethernet internal loopback. We have now tried these examples on the new T-Box as well, but we are facing the same issue and have not been able to establish Ethernet connectivity. Could you please help us understand why this issue might be occurring with both T-Box boards? Is there any specific configuration or procedure required when using these examples with the T-Box? Also, is there any other complete, working Ethernet example specifically for the S32K3 T-Box that we can flash and use to verify Ethernet functionality? We would appreciate your guidance on identifying the cause and getting Ethernet communication working. Thank you for your support. Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, Thank you for the clarification. Since we have purchased the NXP S32K3 T-Box prototype for our development and evaluation, could you please clarify why an NDA is required to access the complete SJA1110 example and firmware? We understand that some information may be confidential, but we would like to understand whether the NDA is mandatory even for customers who have purchased the hardware and need the firmware to bring up and test its Ethernet functionality. Could you please clarify the reason for this requirement and whether there is any alternative way to obtain the required firmware? Thank you for your support. Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
The examples you tested are intended for the S32K3X4EVB-T172 and cannot be used on the S32K3-T-BOX without board-specific modifications. Although the MCU is the same, the T-BOX uses different pin assignments, a 40 MHz external crystal and an RMII connection where the 50 MHz reference clock is provided by the SJA1110. The startup sequence must also allow sufficient time for the SJA1110 to boot before the S32K344 clock and Ethernet initialization.
Flashing an application through the S32K344 debug interface should not affect the SJA1110 external flash. If U36 blinks after this power cycle, the SJA1110 firmware is still present and the issue was caused by the incompatible S32K344 application or its board initialization. If U36 remains inactive, the SJA1110 NVM boot and firmware should be checked separately.
I have prepared and validated the following complete example specifically for the S32K3-T-BOX:
Example S32K344 EMAC lwIP FreeRTOS S32K3-T-BOX S32DS 3.6.6 RTD7.0.1 - NXP Community
S32K3 RTD 7.0.1 was selected as the reference baseline because the S32K3 RTD 7.0.0 release does not provide any basic S32K3 example projects. It has been tested successfully on the S32K3-T-BOX and already includes the required T-BOX-specific pin, clock, RMII and startup-sequence adaptations. See the comments in src/main.c for the complete list of changes made to the original lwip_FreeRTOS_s32k344 project.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, Thank you for your guidance. I have imported and tested the T-Box-specific example project, Example_S32K344_EMAC_lwIP_FreeRTOS_TBOX_v1_0_S32DS36_RTD701, using the following setup: S32 Design Studio 3.6.10 RTD 7.0.1 FreeRTOS 11.1.0 TCP/IP Stack 5.0.0 The project builds successfully with 0 errors and 0 warnings. I flashed the generated ELF to the S32K344 MCU using the NXP S32 Debug Probe connected through the J40 TAG connector. I checked device.c and test.c, including the clock initialization, the delay before clock setup, Eth_43_GMAC_Init(), and the FreeRTOS tasks responsible for lwIP initialization and LED blinking. However, I am still unable to establish Ethernet communication. Current observations: U37's RGB LED continues flashing blue after disconnecting the debugger and power-cycling the board. U36's LED on the SJA1110 appears faintly green. The RJ45 port LEDs remain off. The Windows Ethernet adapter shows Disconnected with a link speed of 0 bps. Pinging 192.168.225.100 results in request timeouts. The SJA1110 S1 DIP switch is set to OFF/OFF for NVM boot. When I subsequently tried to launch the debug configuration again to investigate the initialization sequence, I received the following error: PEmicro GDB Launch Failure: The GDB Server was not able to establish a connection to the target processor (E54431355). The S32 Debug Probe was not connected to the board during this latest attempt. Could you please advise me on the following? Is the blue flashing of U37 expected behavior for this example, or could it indicate that initialization is not completing? Since the RJ45 LEDs are off and Windows reports no physical link, what should I check first to identify the root cause? What would be the recommended next step to debug this issue without unnecessarily changing the existing clock and pin configurations? I would appreciate your guidance on how to proceed. Thank you! Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
As it has been documented in the header of src/main.c, this example uses the static IP address 192.168.0.210, not 192.168.225.100. Therefore, please configure the PC Ethernet adapter to the same subnet, for example 192.168.0.100 with subnet mask 255.255.255.0 and then ping 192.168.0.210. However, since Windows currently reports that the Ethernet cable is disconnected, the physical link issue must be resolved first.
1. U37 should flash white, but it appears as cyan. It indicates that the application is running and, in particular, that the initialization has not ended in a HardFault. However, it does not confirm that the Ethernet initialization completed successfully.
2. The U36 LED controlled by the SJA1110 should be blinking. If it only glows faintly, this may indicate a power-supply problem affecting the SJA1110. This would also explain why the RJ45 link LEDs remain off and Windows detects no physical link.
3. As the first debugging step, please check the SJA1110 power-supply rails on the board and confirm that they are present and stable. Please also inspect the board power configuration, jumper settings and supply connections against the T-BOX documentation.
The PEmicro connection error is unrelated to the Ethernet issue. It is expected if the NXP S32 Debug Probe is not connected when the debug configuration is launched.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hello @Divya2904 ,
The images confirm the external connections, but the next step is to measure the SJA1110 supply voltages electrically directly on the board. A visual inspection of the power connections cannot confirm that all required SJA1110 supply rails are present and stable.
Please use the S32K3-T-BOX schematic to identify the SJA1110 supply rails and the corresponding decoupling capacitors. The voltages can normally be measured on the accessible capacitor terminals using a multimeter or a fine oscilloscope probe, with respect to board ground. Please take care to avoid shorting adjacent pads.
Please check the following:
Measure the SJA1110 supply voltages directly at the corresponding decoupling capacitors and report the measured values.
Check the SJA1110 RST_N signal and confirm that it is released after power-up and remains stable.
If an oscilloscope is available, probe the signal controlling the green channel of U36. This will show whether a blinking signal is generated or whether the signal remains at a constant level.
If the supply voltages and reset signal are correct, check whether the SJA1110 provides the expected RMII reference clock to the S32K344.
Best regards,
Pavel Re: S32K3-T-BOX – RJ45 LINK LED stays off with EMAC lwIP baremetal example Hi Pavel, I have checked the power supply connections on the T-Box and am sharing images of the connections for your reference. The U36 LED (SJA1110) is glowing solid, faint green and is not blinking. The RJ45 LEDs are still off, and the Ethernet connection shows as disconnected on my PC. Could you please review the attached images and guide me on the next steps to debug this issue? I would like to get the Ethernet link working and successfully test ping connectivity. Please let me know what I should check next. Thank you for your support.
View full article