Skip to content

Arduino Shake It

Wotever edited this page Jun 18, 2021 · 38 revisions

Warning ! ShakeIt plugin is only available in beta state.

https://www.youtube.com/watch?v=0UWmvRivmQg

For legacy ShakeIt users (standalone version) you have to upload the simhub sketch (see Arduino Setup)

TIPS for any kind of boards.

  • Always make sure to configure the exact board model.
  • Don't try to use unsupported boards variants, each board is specific, if it's not listed in the setup tool it won't work.
  • Always use a voltmeter to check output polarity voltage, none of those boards are labelled "+/-" as they can all go in reverse direction.
    • If you use fans : polarity is often critical, make sure that + is connected to the correct output using a voltmeter
    • If you have issues with the board like overheating unplug the motor/fan, and check that you the board works by measuring output voltage.
  • When using fans with DC shields, make sure they are 2/3 pins fans, most of the 4 pins fans won't support DC control (in this case use PWM fan control without shield)
  • Make sure that the motor/fan you are trying to use matches the board power specifications, if you use a too strong motor/fan most of the boards will simply do a thermal shutdown and it won't work.
  • Fans inertia when accelerating or slowing down is a fan characteristic, it's not related to the board or software.

Wiring

Adafruit Motor Shield V2 (Or clone)

This is the recommended board

Adafruit motor shield V2 is rated for 1.7A (up to 3Amps peak)

Using an arduino UNO , 7v to 12v (4Amps recommended) power source can be plugged on the arduino power plug.
If using the arduino power plug the VIN jumper must be installed on the Motor Shield.

Stacking Shields

SimHub supports up to 3 stacked boards :

See https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/stacking-shields#addressing-the-shields

SimHub is using the following addresses :

  • Shield 1 : 0x60, Default address, no jumpers
  • Shield 2 : 0x61, Rightmost jumper closed
  • Shield 3 : 0x62

Power limit

If you are close to the power limit, and only use two outputs you can spread the two motors/fans on M1 and M3 instead of M1 and M2, this allows the spread the load on both board chips.

About Motor Shield V2 humming noise

This boards controls the output voltage using an on board PWM generator, it will generate a small high pitched noise. You can reduce this noise by changing at your responsibility the board default PWM frequency at upload. A value of 200-300hz can fit most fans. When changing this value no matter if you are using fans or motors, always check that the board is not overheating.

For fans specifically, you can choose PWM fans which will be perfectly quiet using this method: https://github.com/SHWotever/SimHub/wiki/Arduino-Shake-It#pwm-fans

About parasites

Diagnostic

In some conditions the motor operation can generate enough parasites to freak out the arduino board. The symptoms when this happens could be one or more of the following :

  • Disconnects and reconnects during operation
  • Disappearing serial port until unplugging the usb lead plugging it back (which will reset the arduino usb chip)
  • Motors operation freeze or stop during the game

Solutions

Monster Moto Shield

Monster moto shield can be used for higher power requirements like boat blowers.

Note There are various boards quality available, and defective boards happens more often as it should. You can test your board using the sparkfun sample code http://cdn.sparkfun.com/datasheets/Dev/Arduino/Shields/MonsterMoto_Shield_Example.pde

For high power applications you might need to add a passive cooling (heatsink, or eventually active (heatsink + fan ) to the board chips

Just plug the shield to the arduino :

About Monster Moto Shield humming noise

This boards controls the output voltage using the arduino PWM , it will generate a small high pitched noise. You can reduce this noise by changing the board default PWM frequency at upload. This can be done at your responsibility by tuning the pwmMode parameter in the sketch (edit C:\Program Files (x86)\SimHub\_Addons\Arduino\DisplayClientV2\SHMotoMonster.h file: When changing this value no matter if you are using fans or motors, always check that the board is not overheating.

For fans specifically, you can choose PWM fans which will be perfectly quiet using this method: https://github.com/SHWotever/SimHub/wiki/Arduino-Shake-It#pwm-fans

PWM Fans

SimHub supports up to 3 PWM fans (4 pins connector) Make sure to pick a fan capable of totally stopping Lot of PWM fans will have a minimum speed but won't totally stop, alternatively you can add a simple switch on the power line.

  • Plug 12 V to a 12v power source
  • GND to arduino and power source ground
  • PWM pin to arduino
    • Arduino Uno : pins 9 or 10
    • Arduino Leonardo pins : 9, 10 or 11
    • Arduino Mega pins : 11, 12 or 13
  • Tach pin can be left unplugged

Calibration : Some fans will reach their maximum speed fastly, or not start at low output, you can calibrate the "bounds" at sketch upload by defining "min" and "max" values

DK Motor shield (Or clone), deprecated support

This board support is deprecated : the DK Motor shield has limited power, if you can you should take the Adafruit Motor Shield V2

This board is only compatible with Arduino UNO and mega (Leonardo, micro or pro micro won't work)

Using the shield stacked on arduino UNO .

You can eventually push the power source up to 12v for more power, at your own responsibility

Arduino setup

ShakeIt Configuation

See ShakeIt-V3-Motors---Output-Configuration

Fanatec pedals vibration motor support

Support only works on standalone pedals (not through the wheel base)

See ShakeIt-V3-Motors---Output-Configuration

Forcefeel pad support

https://eu.realteus.com/products/forcefeel

See ShakeIt-V3-Motors---Output-Configuration

Clone this wiki locally