Skip to main content
Mike Thompson
Associate III
October 1, 2018
Solved

Best way to get X-Nucleo-IHM07M1 working with Nucleo-F429ZI and Ethernet peripheral enabled?

  • October 1, 2018
  • 2 replies
  • 1574 views

I'm making my way through getting the X-Nuclo-IHM07M1 motor controller board to work with a Nucleo-F429ZI board. The reason I'm pairing the motor controller board with the Nuclo-F429ZI is that it is the closest dev board to the actual custom hardware I'll eventually need to target the generated firmware for. As part of this, I need to enable the Ethernet peripheral on the Nucleo-F429ZI, but it's proving trickier than I initially thought.

The issue I'm running into is there are conflicts between the hard-wired pins on the X-Nuclo-IHM07M1 and a number of the Ethernet pins on the Nucleo-F429ZI. Specifically, PA1 (M1_BUS_VOLTAGE & RMII_MDIO) and PC1 (M1_CURR_AMPL_V & RMI_MDC).

To get this working, it appears I'll have to cut traces (or remove zero ohm bridges) on the X-Nuclo-IHM07M1 and solder in wires to route the conflicting analog signals down to Nucleo-F429ZI via other pins on ST Morpho connector. Of course, I'll have to use the ST Motor Control Workbench to identify alternate analog inputs to use for M1_CURR_AMPL_V and M1_BUS_VOLTAGE (PA3 and PA4 look like good candidates).

However, before going through this effort, I wanted to make sure this is the correct approach for getting the X-Nuclo-IHM07M1 working with the Nucleo-F429ZI with Ethernet enabled. Or, are there other better approaches I should look at?

I guess on a somewhat related topic, giving I want to use Ethernet on the STM32F429 with the motor control libraries and the RTX RTOS from ARM, are there other issues I should be aware of? I intend to do that all in steps and right now I'm just trying to get the X-Nuclo-IHM07M1 with the Nucleo-F429ZI at a basic level before adding in the more complex parts of this project.

Thanks,

Mike

This topic has been closed for replies.
Best answer by Mike Thompson

I got this working. To avoid conflicts between the Ethernet RII signals and the signals from the X-Nucleo-IHM07M1, I had to add two wire jumpers to route signals to alternate analog inputs and remove some bridge 0-ohm resistors on both boards to isolate signals. For anyone trying something similar in the future, below are the hardware changes I had to make to get a Nucleo-F429ZI working with the X-Nucleo-IHM07M1.

X-Nucleo-IHM07M1 patches

  •  Lift resistor R48 on IHM07M1. Solder R48 pad to CN9_1/C10_37 pad (routes M1_CURR_AMPL_V to PA3).
  •  Lift resistor R51 on IHM07M1. Solder R51 pad to R76 pad (routes M1_BUS_VOLTAGE to PA4).
  •  Lift resistor R63 on X-Nucleo-IHM07M1 to isolate PA7.
  •  Lift resistor R46 and R49 on X-Nucleo-IHM07M1 to isolate PA6-BKIN.

Nucleo-429ZI patches

  •  Lift SB127 on Nucleo-429ZI to isolate PA9.
  •  Lift SB125 on Nucleo-429ZI to isolate PA10.
  •  Lift SB132 on Nucleo-429ZI to isolate PA12.
  •  Lift SB133 on Nucleo-429ZI to isolate PA6.
  •  Lift and move SB120 to SB119 on Nucleo-429ZI to move Green LED to PA5.

X-Nucleo-IHM07M1 jumpers

  •  Jumper on JP1 (FOC)
  •  Jumper on JP2
  •  Jumper on JP3
  •  Jumper on J5 35h
  •  Jumper on J6 35h
  •  No jumpers on J7 DAC or REF.
  •  Jumper on J9

Nucleo-429ZI jumpers

  •  Jumper on VIN-5v on JP3
  •  Jumper on JP4
  •  Jumper on JP5
  •  Jumper on JP6
  •  Jumper on JP7

In the Motor Control Workshop I then needed to update the project to reflect that PC1 (ADC12_IN11) is now routed to PA3 (ADC123_IN3) for M1_CURR_AMPL_V and PA1 (ADC1_IN1) is routed to PA4 (ADC12_IN4) for M1_BUS_VOLTAGE.

2 replies

Mike Thompson
Mike ThompsonAuthorBest answer
Associate III
October 2, 2018

I got this working. To avoid conflicts between the Ethernet RII signals and the signals from the X-Nucleo-IHM07M1, I had to add two wire jumpers to route signals to alternate analog inputs and remove some bridge 0-ohm resistors on both boards to isolate signals. For anyone trying something similar in the future, below are the hardware changes I had to make to get a Nucleo-F429ZI working with the X-Nucleo-IHM07M1.

X-Nucleo-IHM07M1 patches

  •  Lift resistor R48 on IHM07M1. Solder R48 pad to CN9_1/C10_37 pad (routes M1_CURR_AMPL_V to PA3).
  •  Lift resistor R51 on IHM07M1. Solder R51 pad to R76 pad (routes M1_BUS_VOLTAGE to PA4).
  •  Lift resistor R63 on X-Nucleo-IHM07M1 to isolate PA7.
  •  Lift resistor R46 and R49 on X-Nucleo-IHM07M1 to isolate PA6-BKIN.

Nucleo-429ZI patches

  •  Lift SB127 on Nucleo-429ZI to isolate PA9.
  •  Lift SB125 on Nucleo-429ZI to isolate PA10.
  •  Lift SB132 on Nucleo-429ZI to isolate PA12.
  •  Lift SB133 on Nucleo-429ZI to isolate PA6.
  •  Lift and move SB120 to SB119 on Nucleo-429ZI to move Green LED to PA5.

X-Nucleo-IHM07M1 jumpers

  •  Jumper on JP1 (FOC)
  •  Jumper on JP2
  •  Jumper on JP3
  •  Jumper on J5 35h
  •  Jumper on J6 35h
  •  No jumpers on J7 DAC or REF.
  •  Jumper on J9

Nucleo-429ZI jumpers

  •  Jumper on VIN-5v on JP3
  •  Jumper on JP4
  •  Jumper on JP5
  •  Jumper on JP6
  •  Jumper on JP7

In the Motor Control Workshop I then needed to update the project to reflect that PC1 (ADC12_IN11) is now routed to PA3 (ADC123_IN3) for M1_CURR_AMPL_V and PA1 (ADC1_IN1) is routed to PA4 (ADC12_IN4) for M1_BUS_VOLTAGE.

Laurent Ca...
Senior III
June 22, 2021

"STM32 Motor Control" topic added.

Best regards