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?

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.
Mike Thompson
Mike ThompsonBest 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.

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