2021-05-27 12:10 AM
I'm running Ubuntu 18.04 and recently purchased the STEVAL-MKI109V3 motherboard and STEVAL-MKI207V1 adapter. I downloaded and successfully installed Unico STSW-MKI109L according to the user manual.
In Unico, I select Device Type iNemo Intertial Modules, and from Device Name I select STEVAL-MKI207V1 and the Select Device button. When the popup dialog says "Port not open," I select ttyACM0 from the dropdown box (as shown by dmesg) and when I connect, the error dialog says:
"ERROR: The board does not respond. The device selected might be not supported by the motherboard.
Motherboard: ProfiMEMSTool
Firmware version: V2.18.6
Unico version: 9.9.0.0
Device selected: STEVAL-MKI207V1 (ISM330DHCX)
Setdb command: *setdb207v1
Please check motherboard and firmware version.
For firmware upgrade, please follow instructions on the motherboard user manual."
The st.com website says the STEVAL-MKI207V1 is "Fully compatible with STEVAL-MKI109V3 motherboards." Any suggestions please?
Solved! Go to Solution.
2021-05-27 01:59 AM
Hi @JScho.5 ,
I see that your Firmware version is the V2.18.6.
The current version of the firmware is V3.14.5, and you can find it in the Unico package (for Linux), folder \FIRMWARE\ProfiMEMSTool board.
So, probably you can see the adapter name in the GUI list, that is the last version, but the board doesn't recognize the *setdb207v1 command since the firmware is too old for STEVAL-MKI207V1 (ISM330DHCX) product.
You can upload the newer version of the firmware in dfu mode, as described in the user manual UM2116, p.41:
To enter DFU mode:
a. press buttons BT3 (Reset) and BT2 together
b. first release BT3 and then release BT2
I attach the .bin file to this post, for completeness.
If my reply answered your question, please click on Select as Best at the bottom of this post. This will help other users with the same issue to find the answer faster.
-Eleon
2021-05-27 01:59 AM
Hi @JScho.5 ,
I see that your Firmware version is the V2.18.6.
The current version of the firmware is V3.14.5, and you can find it in the Unico package (for Linux), folder \FIRMWARE\ProfiMEMSTool board.
So, probably you can see the adapter name in the GUI list, that is the last version, but the board doesn't recognize the *setdb207v1 command since the firmware is too old for STEVAL-MKI207V1 (ISM330DHCX) product.
You can upload the newer version of the firmware in dfu mode, as described in the user manual UM2116, p.41:
To enter DFU mode:
a. press buttons BT3 (Reset) and BT2 together
b. first release BT3 and then release BT2
I attach the .bin file to this post, for completeness.
If my reply answered your question, please click on Select as Best at the bottom of this post. This will help other users with the same issue to find the answer faster.
-Eleon
2021-05-27 04:00 AM
Thank you @Eleon BORLINI , I should indeed have followed the user manual! It got me there, but not without a few modifications to the instructions. Here is what I did slightly differently, in case it helps others. Note that I am on Linux Ubuntu 18.04:
On p.7 of the user manual:
Step 2: I created a udev rules file in the rules.d directory and without spaces in the filename: /etc/udev/rules.d/45-profimems-tool.rules
Step 3: The formatting of the text box on p.7 seems mangled, with for example the second 'SUBSYSTEMS=="usb"' appended to a comment line. I edited it as follows:
# 0483:5740 - STM32F4 in USB Serial Mode (CN5)
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740", MODE:="0666"
# 0483:df11 - STM32F4 in DFU mode (CN5)
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666"
This seems to work for creating the /dev/ttyACM0 device with 666 permissions.
Finally, after carefully pressing and releasing buttons BT3 and BT2 in the order described in ref 2 on p.4, I ran:
$ cd 'FIRMWARE/ProfiMEMSTool board'
$ sudo dfu-util -a 0 -D ProfiMEMSToolV3.14.5.dfu -d 0483:df11
but got an error: "dfu-util: Error: File ID 0483:0000 does not match device (0483:df11 or 0483:df11)"
When I replaced the df11 with 0000, the firmware update worked. In other words, I had to run:
$ sudo dfu-util -a 0 -D ProfiMEMSToolV3.14.5.dfu -d 0483:0000
After replugging the board, Unico GUI seemed to run beautifully, though I still had to manually select ttyACM0 from the dropdown box (as suggested on p.29 of the Unico GUI user manual) before it connected. I wonder if that selection can be set in a configuration file somewhere?