Get the materials
Arduino Zero or M0
Currently, STEP100/200 firmware is compatible with:
- Arduino Zero.
- Arduino M0
- Adafruit METRO M0 Express
Arduino Zero or M0?
These two models have been separated into different models due to the time when Arduino was divided into two, but they are almost identical and can be used with either. However, there are some differences, so you need to select the corresponding model name when compiling and uploading the sketch.
In terms of hardware, the D2 and D4 pins are swapped between the two models. Confusingly, some compatible products may have the Arduino Zero bootloader written into the Arduino M0 equivalent hardware. Even if the board is recognized as an Arduino Zero, it is safer to actually upload a sketch to blink D2 to see if D2 or D4 flashes.
If you met these kind of boards, delete the comment out
// in the following line near line 32 of
boardsDef.h and compile it when you upload the firmware.
// #define MZERO_WITH_ZERO_BOOTLOADER
Another Arduino models
The SPI pins of the X-Nucleo series used in STEP100/200 don't communicate with SPI connectors, but D11, D12, and D13. In Arduino Zero/M0, SPI functions are assigned to these pins. These pins are also used as SPI pins in the Arduino UNO, so it can control X-Nucleos, but UNO cannot run the STEP series firmware because of its small RAM and Flash size.
In Leonardo and MEGA, SPI functions are not assigned to D11-D13, so they cannot be used.
The firmware has been tested with Arduino Ethernet Shield2 based on Wiznet W5500. This one is also out of stock at the official store, but is available at major distributors (Mouser, Digikey, RS etc.). There are also many compatible products of older Ethernet shield based on W5100 in Ali Express, but they didn't work for STEP100(X-NUCLEO-IHM03A1). Worked for STEP200(X-NUCLEO-IHM02A1).
These types won't work because you cannot put more shields on top of them. Arduino and Ethernet shield are communicate via the 6 pins SPI connector, but it doesn't exist on X-Nucleos. Therefore, you should always put the Ethernet shield on top of the Arduino, and then put the X-Nucleo series on top of them.
These are evaluation boards released form STMicroelectronics. Available from major distributors as well.
According datasheets of the X-Nucleo, the voltages of motor power supply are;
- IHM03A1(PowerSTEP01): 10.5V-50V
- IHM02A1(L6470): 8V-45V
In the meantime, it would be a good idea to prepare a power supply of about 24V 4-5A for both and start experimenting. Please refer to the selection of power supply and motor.
The X-Nucleo has a screw terminal, so a DC jack cable is useful if you want to supply the power with an AC adapter.
The motor power supply does not supply power to the Arduino, so you need a power supply for the Arduino as well, which can be supplied from a PC or USB charger via USB.