|
Visual Studio Code |
Arduino RC engine sound & light controller with inertia simulation for ESP32
Pre compiled software binaries (very easy):
https://thediyguy999.github.io/TheDIYGuy999_ESP32_Web_Flasher/flash.html
Software and details:
https://github.com/TheDIYGuy999/Rc_Engine_Sound_ESP32
Support forum in German and English: https://www.rc-modellbau-portal.de/index.php?threads/esp32-arduino-rc-sound-und-licht-controller.7183/
See it in action: https://www.youtube.com/channel/UCqWO3PNCSjHmYiACDMLr23w
New hardware for trailer or smaller vehicles:
https://www.pcbway.com/project/shareproject/ESP32_RC_Wireless_Trailer_Controller_5c6e7d51.html
Features:
- Unique vehicle mass inertia simulation (connect your crawler type ESC to pin 33). Throttle output is altered during shifting of a mechanical 3 speed transmission for smooth shifting, gear protection and realistic sound. Works just fine with TAMIYA 3 speed transmissions. Should work as well with crawler 2 speed transmissions. The ESC is controlled by a state machine with the following states: driving forward & reverse (varible acceleration, depending on throttle position), neutral, braking forward & reverse (variable deceleration with fine granularity, according to "reverse throttle" position). It also allows to control the brake lights, the brake sound, the reversing light & the reversing beep sound properly. Acceleration & deceleration (coasting & braking) are adjustable separately for each gear to ensure maximum realism.
- Unique "virtual clutch" allows to rev the engine below an adjustable ESC output speed. Above, the clutch engages and ensures, that the engine sound is in synch with the wheel RPM. Sounds and behaves just great in combination with a shifting transmission!
- Simulated automatic transmission with torque converter (if your vehicle does not have a real shifting transmission)
- Simulated double clutch transmission
- simulated, manually shifted 3 speed transmission (new in v5.5)
- Virtual, switchable neutral allows to rev the engine while standing still
- Jake brake (simulated pneumatic engine brake, mainly used in US trucks)
- Tracked mode (dual throttle input on CH2 & CH3, for tanks, diggers etc. No ESC control support in this mode. (New in v4.5)
- Tank cannon sound & flash (New in v4.6)
- Triggering multiple latching and non latching actions (sounds, lights) per analog channel, using the rcTrigger library (New in v4.7, still experimental)
- Many selectable sounds: engine cranking, engine idling, engine revving, turbo whining, diesel ignition "knock", wastegate valve, horns, sirens, reversing beep, air brake, parking brake, gear shifting etc.
- Realistic engine sound is mixed together on the fly from up to 4 sounds: engine idling, turbo, wastegate (all with variable sampling rate), Diesel ignition knock (fixed sampling rate, so it does not vary in pitch)
- Load (throttle position) dependent volume sounds: idle, rev, Diesel knock
- Engine RPM dependent volume sounds: turbo, wastegate
- Dozens of engine & other sounds included, you can also compose your own, using Audacity and bitlunis conversion tool (link above)
- Engine RPM range and inertia adjustable, volume of all sounds adjustable, engine sounds separatly for load and idling.
- Many other paramerets can be adjusted. All adjustments are easily accessible in "adjustmentsXyz.h"
- Sound files up to 22'050Hz, 8bit, mono can be used
- Compatible input signals: PWM, PPM, SBUS (inverted & non inverted signals), IBUS
- Works best with a PAM8403 amplifier module, connected to pin 25 & 26, via 10kOhm resistors & a 10kOhm potentiometer (see schematic below)
- The engine RPM is calculated according to RC signal input on pin 13 *** CAUTION, 3.3V max. on all pins! *** 330 Ohm resistors on all I/O pins recommended!
- Non linear throttle curves can be generated in "curves.h"
- Light effects: headlights (high & low beam), tail lights, brake lights, fog lights, roof lights, cab lights, reversing light, indicators (turn signals), hazard lights, blue light etc. (max. 12 outputs)
- Engine vibration simulation, using a shaker motor with excentric weight: Strong vibration while cranking, medium wlile idling, slight while revving
- Adjustable volume (via remote)
- Use an ESP32, CPU frequency must be set to 240MHz
- Eagle schematic & board file included. Pre made Gerber files allow you to order your board easily.
- included, easy to use .wav to .h sound file converter
- Channels can easily be assigned, using "remoteSetup.h"
- Pre made configuration profiles for Flysky FS-i6X and Arduino Mirco RC remote (new in v.5.5)
- Variable length for horn & siren, using loop area in sound files (new in v5.6)
- BUS decoder for steering servo and shifting servo (connect servos to CH1 & CH2) pins
- Trailer coupler (5th wheel) servo can be connected to the CH4 pins (not in PWM communication mode)
- TAMIYA trailer presence switch can be connected to pin 32 (depending on "#define THIRD_BRAKELIGHT" setting in "6_adjustmentsLights.h" tab)
- Support for non linear throttle and steering curves (for more accurate control around center position). Use "EXPONENTIAL_THROTTLE" & "EXPONENTIAL_STEERING" in "2_adjustmentsRemote.h"
- Support for HOBBYWING Quicrun Fusion Motor / ESC combo. Use "#define QUICRUN_FUSION" in "3_adjustmentsESC.h"
- Support for winch, connected to CH3 (BUS communication mode only). Use "#define MODE2_WINCH" in "7_adjustmentsServo.h" The mode 2 button is then used to switch between horn / siren sontrol and winch control via CH4. The winch is controlled by an old RC servo driver board. The speed and neutral settings are done using "CH3L", CH3C" and CH3R" positions.
- Support for LCD dashboard
- Support for 2812 Neopixel LED (GPIO0)
- Support for hydlaulic excavators (hydraulic pump, hydraulic flow, track rattling sounds). Use #define FLYSKY_FS_I6S_EXCAVATOR profile for remote
- ESP-NOW based 2.4 GHz wireless trailer control support
- An An RZ7886 motor driver IC can be used instead of a standard crawler type RC ESC
- Battery low discharge protection options
- Switchable crawler mode (with just minimal virtual inertia)
PCBWay Note:
For this project, we assemble based on the BOM provided by the author. The parts highlighted in yellow in the author's BOM are labeled as "Do Not Populate" by the author, so we also handled them as "do not populate" by default. If you require assembly them from us, please provide feedback to your sales representative during the stage when we send you the BOM quotation.The picture we assembled is shown below:
Arduino RC engine sound & light controller with inertia simulation for ESP32
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(15)
- Likes(24)
- Engineer Nov 28,2024
- Engineer Nov 24,2024
- Steeve Rioux Sep 21,2024
- Engineer Sep 01,2024
- Engineer Aug 28,2024
- Engineer Jul 04,2024
- Engineer Jun 29,2024
- (DIY) C64iSTANBUL Jun 27,2024
- Engineer May 10,2024
- Frikkie Bester Apr 17,2024
- Engineer Apr 11,2024
- Gary-7 Mar 24,2024
- Eduard Frank Mar 16,2024
- shkoe Jan 15,2024
- Engineer Oct 21,2023
- Engineer Oct 15,2023
- Engineer Oct 14,2023
- Engineer Oct 13,2023
- Sarif Uddin Sep 19,2023
- Tor-Eirik Bakke Lunde Sep 03,2023
- Engineer Aug 17,2023
- danielmk333 Jul 07,2023
- Geoffrey Davis Jun 04,2023
- E. B33lz3bub Jun 02,2023
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by TheDIYGuy999
- ESP32 RC Wireless Trailer Controller for ESP32 RC Sound & Light Controller Use it in combination with this sound and light controller:https://www.pcbway.com/project/shareproje...
- RZ7886 based ESC for ESP32 Sound and Light Controller Note: this 7A ESC only works together with the following sound & light controller:https://www.pc...
- Arduino RC engine sound & light controller with inertia simulation for ESP32 Pre compiled software binaries (very easy):https://thediyguy999.github.io/TheDIYGuy999_ESP32_Web_Fla...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
126 0 0 -
DIY Laser Power Meter with Arduino
182 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
165 0 2 -