cancel
Showing results for 
Search instead for 
Did you mean: 

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

Mike Thompson
Associate III

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

1 ACCEPTED SOLUTION

Accepted Solutions
Mike Thompson
Associate III

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.

View solution in original post

2 REPLIES 2
Mike Thompson
Associate III

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...
Lead II

"STM32 Motor Control" topic added.

Best regards