STorM32 FAQ

From STorM32-BGC Wiki V1
Jump to navigation Jump to search

Electronics

Which MPU modules do work with the board?

According to current experience any MPU module works fine with the STorM32-BGC board.

Specifically this includes the GY-521 module. However, also the xoodee module and even the GY-86 10DOF module have been in use.

A comment on the supply voltage. The STorM32-BGC works internally with a voltage of 3.3 V. Accordingly, it also provides only 3.3 V at its I2C and I2C#2 ports, to which external MPU modules and breakout boards are connected. Most of the available MPU modules/breakout boards are however "Arduino compatible", which means that they have a 5 V pin and can be supplied with voltages of 5 V and higher, thanks to a voltage regulator on the module. The question arises if these MPU modules do also work with the 3.3 V provided by the STorM32-BGC. The answer is that so far no issues have been reported with using them.

What connectors are used for connecting the MPU modules to the board?

The connectors for the MPU modules on the STorM32-BGC board are Molex picoblade types with 1.25 mm pitch (for a comparison of various connectors see here). They are also known as micro JST 1.25 mm, and it is in fact best to search for this, e.g. on ebay: micro jst 1.25.

What about the magnetometer support?

In version 0.51.2e magnetometer is not jet supported: http://www.rcgroups.com/forums/showpost.php?p=29756073&postcount=2062 If a mag-imu is connected as main imu on the camera, mag will not be detected:

v... v0.51

s... ok

IMU is PRESENT @ LOW ADR

IMU2 is PRESENT @ LOW ADR = external IMU

MAG is not available

STATE is NORMAL

Software and GUI

How does Read, Write, and Store work?

[Read] reads the currently active settings from the board to the GUI.

[Write] writes the values of the GUI to the board and makes them effective immediately. The changes last until the board is reset or powered down.

[Store] makes that the board stores its current values into the EEProm so that they become permanent. The settings stored in the EEprom will be used at power up.

[Write+Store] does first a Write and then a Store.

Thus: With the [Write] button, all parameter values are copied to the board, and become effective immediately. They are however not stored permanently in the Eeprom, i.e., changes will be lost after a power down. To store changes permanently do a [Write+Store], e.g., by clicking the check box next to the [Write] button.

Storing the parameter values to the EEPROM doesn't seem to work

Please double-check that the correct firmware for your board has been flashed. The problem typically happens then e.g. the firmware for a F103RB is flashed onto a board with a F103RC.

Which drivers are needed for the USB?

On Win7 the driver is usually installed automatically (this may take few minutes, be patient). The driver, usable also for WinXP, can also be obtained from here.

Flashing with the usb-ttl adapter produces Windows error messages

If upon flashing you get Windows errors such as mfc110.dll is missing, msvcr110.dll is missing, or application was unable to start correctly (0xc000007b), then first check that you're not using an outdated GUI version. Otherwise, you need to install the VC++ runtime libraries. Download vcredist_x64.exe or vcredist_x86.exe depending on your Win system from here, and run the exe file.

Gimbal Construction

Does it matter where to install the camera IMU sensor?

In principle no, one can mount it wherever it is most convenient (of course as long as it tracks the camera motion). Some folks have however reported that the performance can depend on where the IMU sensor is mounted, depending on the specific gimbal some places seem to be better, i.e. allow e.g high PID values, than others. So, it may need experimenting.

Where should the main board be mounted for correct use of the second IMU?

The second imu must be mounted on the "gimbal support" above the yaw motor so it is not moved by any of the motors. It must not be mounted on one of the axis's. So you can either mount the gimbal mainboard above the yaw motor using the onboard imu, or put the mainboard somewhere else (on yaw axis for example) and mount an external imu2 above the yaw motor.

The onboard mpu6050 imu is connected to the imu2 connector internally and is set to a non default i2c adress. If you connect an external imu to imu2 connector it can be recognised by its default i2c adress. So you don't have to change anything in gui, external imu is used automatically when connected.

Activate imu2 in Gimbal Setup -> Imu2 configuration:

  • "gimbal support": activate imu2 above the yaw motor.
  • "gimbal support xy": activate imu2 above the yaw motor rotated by 45°.
  • "yaw bracket", "yaw bracket xy": do not use it, it iy buggy. (not availible in 0.51.2e)

The calibration of imu2 works similar to the main imu. But for imu2 it's not critical to get the most accurate calibration, and a good 1-point calibration is enough.

http://static.rcgroups.net/forums/attachments/1/4/2/1/a7119019-20-stom32-bgc-2nd-imu-configurations-01.jpg