Wind Simulator with RPM gauge

Introduction

Starting from version 2.112, the platform manager support various DIY accessories including e.g. wind simulator. You can build DIY using boards like Arduino, STM32 Discovery or other electronics platform. You can choose between using standard 3 wires PC fans, 4 wires PC fans or high performance in-line blowers. Furthermore, you can use a preassembled motor driver shield dedicated for your board or build the whole circuit yourself. Everything depends on your skills and budget.

In this short article we have decided to go with Arudino Uno, in-line 12V blower and simple custom circuit to be assembled on the prototype shield.

Disclaimer

All DIY (do-it-yourself) projects are purely “at your own risk”. As with any DIY project, unfamiliarity with the tools and process can be dangerous. If you are at all uncomfortable or inexperienced working on these projects, especially but not limited to electronics and mechanical), please reconsider doing the job yourself. MotionSystems, its employees and partners will not be held responsible for any injury due to the misuse or misunderstanding of any DIY project.

Requirements

Before continue, make sure that you meet following requirements:

  • you are familiar with Arduino programming (how to use ID, how to compile and flash the program, etc.)

  • you have soldering equipment, and you know how to use it

  • you understand that this is DIY project, “at-is”, without any warranty

  • you agree to the above DISCLAIMER and TERMS & CONDITIONS

Design

The features of the following design are as follows:

  • use of only simple THT components
  • control up to two in-line blowers, 12VDC, max 5A per blower
  • 14.5 kHz PWM to eliminate coil whine
  • no overheating at low fan speed
  • RS232 over USB for PC communication
  • no overheating protection

ATTENTION

The circuit is not equipped with overheat protection. We haven’t had any overheating issues with this circuit, but you need to monitor transistors temperature when the blower is working at low speed.

Components

Wind Simulator with RPM gauge
  • 1x Arduino Uno or compatible board (e.g. Maker Uno)
  • 1x proto shield, e.g. Iduino EX023
  • 2x IRL540NPBF transistors
  • 2x TO220 heatsink for transistors
  • 2x THT resistor – 300R/0.1W
  • 2x THT resistor – 10k/0.1W
  • 2x Schottky diode – 1N5822
  • 1x power supply – 12VDC, 5~10A
  • 1x/2x in-line blower – 12VDC e.g. SFIB1-130-01
  • some sockets and connectors

Assembly

Assembling everything together on proto-shield is pretty forward, no additional explanation is needed. The easier solution is to install transistors, resistors and sockets on TOP and Schottky diodes on the BOTTOM. Below are images showing how it can look after assembly for your reference.

Wind Simulator with RPM gauge
Wind Simulator with RPM gauge

Program

  • The program turns off all fans if it does not receive a new command from the PC for 3 seconds. This is a protection against PC crash.
  • The fans speed (PWM) is increased/decreased in small steps to avoid rapid current changes.
  • The program supports two wind related commands: Lxx and Rxx. The first controls left fan, the second right fan. If you have only one fan, just connect is as left. xx is always a two-digit number, from 00 to 99.
  • The program support one RPM related command: Exxxxx. xxxxxx is current vehicle engine RPM, and it is always a 5-digit number, from 00000 to 99999.

Source code

Use Arduino IDE or Visual Studio Code do compile the following code and flash it to your Arduino Uno board.

Copy to Clipboard

License

This file is licensed under the Creative Commons Attribution – NonCommercial – NoDerivatives 4.0 International – CC BY-NC-ND 4.0

Under the following terms:

You are free to:

  • Share — copy and redistribute the material in any medium or format

The licensor cannot revoke these freedoms as long as you follow the license terms.

Under the following terms:

Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

NonCommercial — You may not use the material for commercial purposes.

NoDerivatives — If you remix, transform, or build upon the material, you may not distribute the modified material.

No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.

First start – Arduino

  • 1
    Do not connect the proto-shield yet to Arduino board yet
  • 2
    Turn off ForceSeatPM
  • 3
    Connect to PC
  • 4
    Upload the firmware
  • 5
    From Arduino IDE start Serial Monitor (Tools/Serial Monitor)
  • 6
    Set 115200 as baudrate
  • 7
    Send L20 to the board
  • 8
    If you have Maker Uno, the L9 led will illuminate for 2 seconds, and then it will turn off automatically.
Wind Simulator with RPM gauge

First start – proto-shield

  • 1
    Do not connect the proto-shield yet to Arduino board yet
  • 2
    Connect in-line blowers to your proto-shield
  • 3
    Connect power supply ATTENTION: the circuit does not contain reverse polarity protection!
  • 4
    Turn on the main power.
  • 5
    In-line blowers should NOT start
  • 6
    Use multimeter to confirm 12VDC between + and – on the power supply socket.
  • 7
    Use multimeter to confirm 12VDC between in-line blower #1 power and power supply’s GND.
  • 8
    Use multimeter to confirm 12VDC between in-line blower #2 power and power supply’s GND

Arduino + proto-shield

  • 1
    Turn off the main power
  • 2
    Attach proto-shield to Arduino
  • 3
    Turn on the main power
  • 4
    Connect Arduino to PC
  • 5
    From Arduino IDE start Serial Monitor (Tools/Serial Monitor)
  • 6
    Set 115200 as baudrate
  • 7
    Send L20 to the board
  • 8
    Left in-line blower should start working
  • 9
    Send R30 to the board
  • 10
    Right in-line blower should start working
  • 11
    Check temperature of transistors ATTENTION! The circuit is not equipped with overheating protection!
Wind Simulator with RPM gauge

ForceSeatPM configuration

  • 1
    Start ForceSeatPM
  • 2
    Go to Tools and Diagnostic, DIY Configuration
  • 3
    Setup serial port, baudrate (115200) and enable the system.
  • 4
    Start your favorite game from the ForceSeatPM and enjoy the wind in your hairs.
Wind Simulator with RPM gauge

Finally start the game and go for a ride to see if the dashboard is working correctly.

Once you confirmed that everything works correctly, the last step is to attach the dashboard permanently to your cockpit or steering wheel base.