0% found this document useful (0 votes)
56 views

Arduino Synth V3 - Arduino Project Hub

Uploaded by

Phops Freal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views

Arduino Synth V3 - Arduino Project Hub

Uploaded by

Phops Freal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Sign In (https://www.hackster.io/users/auth/arduino?

current_site=arduino&setup=true&redirect_to=%2Fprojecthub%2FArnov_Sharma_makes%2Farduino-synth-v3-8dc6d4)

Arduino Synth V3 © LGPL


(http://opensource.org/licenses/lgpl-license)

A simple Arduino-based synth that can generate all sorts of exciting sounds.
audio (/projecthub/projects/tags/audio) games (/projecthub/projects/tags/games)

home automation (/projecthub/projects/tags/home+automation)

music (/projecthub/projects/tags/music)

smart appliances (/projecthub/projects/tags/smart+appliances)

283 VIEWS 1 COMMENT 2 RESPECTS

COMPONENTS AND SUPPLIES 

PCBWay Custom PCB


(/projecthub/products/buy/34
× 1 
621?
( (/proj (/projecthub/product
s=BAhJIhM0NjY1MDksUHJvamV
/ ecthu s/buy/34621?
jdAY6BkVG%0A)
(/projecthub/pro p b/pro s=BAhJIhM0NjY1MDks
ducts/buy/34621 r ducts UHJvamVjdAY6BkVG%
? o /buy/ 0A)
s=BAhJIhM0NjY1 j 34621
MDksUHJvamVjd e ?
AY6BkVG%0A) c s=BAh
t JIhM0
h NjY1M
u DksU
b HJva
/ mVjd
p AY6Bk
r VG%0
o A)
d
u
c
t
s
/
b
u
y
/
3
4
6
2
1
?
s
=
B
A
h
JI
h
M
0
N
j
Y
1
M
D
k
s
U
H
J
v
a
m
V
j
d
A
Y
6
B
k
V
G
%
0
A
)

Arduino Nano R3
(/projecthub/products/buy/191
× 1 
72?
( (/proj (/projecthub/product
s=BAhJIhM0NjY1MDksUHJvamV
/ ecthu s/buy/19172?
jdAY6BkVG%0A)
(/projecthub/pro p b/pro s=BAhJIhM0NjY1MDks
ducts/buy/19172? r ducts UHJvamVjdAY6BkVG%
s=BAhJIhM0NjY1 o /buy/ 0A)
MDksUHJvamVjd j 19172?
AY6BkVG%0A) e s=BAh
c JIhM0
t NjY1M
h DksU
u HJva
b mVjd
/ AY6Bk
p VG%0
r A)
o
d
u
c
t
s
/
b
u
y
/
1
9
1
7
2
?
s
=
B
A
h
JI
h
M
0
N
j
Y
1
M
D
k
s
U
H
J
v
a
m
V
j
d
A
Y
6
B
k
V
G
%
0
A
)

SparkFun Pushbutton switch


12mm
× 12 
(/projecthub/products/buy/42
( (/proj (/projecthub/product
756?
/ ecthu s/buy/42756?
s=BAhJIhM0NjY1MDksUHJvamV
(/projecthub/pro jdAY6BkVG%0A) p b/pro s=BAhJIhM0NjY1MDks
ducts/buy/42756 r ducts UHJvamVjdAY6BkVG%
? o /buy/ 0A)
s=BAhJIhM0NjY1 j 42756
MDksUHJvamVjd e ?
AY6BkVG%0A) c s=BAh
t JIhM0
h NjY1M
u DksU
b HJva
/ mVjd
p AY6Bk
r VG%0
o A)
d
u
c
t
s
/
b
u
y
/
4
2
7
5
6
?
s
=
B
A
h
JI
h
M
0
N
j
Y
1
M
D
k
s
U
H
J
v
a
m
V
j
d
A
Y
6
B
k
V
G
%
0
A
)

Rotary potentiometer (generic)


(/projecthub/products/buy/20
× 2 
2?
( (/proj (/projecthub/product
s=BAhJIhM0NjY1MDksUHJvamV
/ ecthu s/buy/202?
jdAY6BkVG%0A)
(/projecthub/pro p b/pro s=BAhJIhM0NjY1MDks
ducts/buy/202? r ducts UHJvamVjdAY6BkVG%
s=BAhJIhM0NjY1 o /buy/ 0A)
MDksUHJvamVjd j 202?
AY6BkVG%0A) e s=BAh
c JIhM0
t NjY1M
h DksU
u HJva
b mVjd
/ AY6Bk
p VG%0
r A)
o
d
u
c
t
s
/
b
u
y
/
2
0
2
?
s
=
B
A
h
JI
h
M
0
N
j
Y
1
M
D
k
s
U
H
J
v
a
m
V
j
d
A
Y
6
B
k
V
G
%
0
A
)

PAM8403 Module × 1
APPS AND ONLINE SERVICES 

Arduino IDE 
(https://www.arduino.cc/en/main/ (https://www.arduino.cc/en/
(https://www.ar software) main/software)
duino.cc/en/mai
n/software)

ABOUT THIS PROJECT 

Hey guys what's up!


So this is my Arduino Synth V3 which is a DIY Synth powered by an Arduino Nano.

Arduino Piano Synth


It has 12 push switches along with two ON/OFF switches for changing modes and two
potentiometers that change pitch and tempo.
By changing the Pitch Potentiometer, we can change the output waveform that makes
cool sci-fi sounds by pressing any 12 buttons. It works pretty much like a normal
keyboard synth.
I've been making synths for a while now, made two synths that work identically to this
one but they all use Mozi Library to run but this one uses simple code that modulates
output by the state of buttons and switches.
Links for previous versions-
https://www.hackster.io/Arnov_Sharma_makes/simple-arduino-piano-4e51d7
(https://www.hackster.io/Arnov_Sharma_makes/simple-arduino-piano-4e51d7)
https://www.hackster.io/Arnov_Sharma_makes/arduino-atari-punk-synth-2934e8
(https://www.hackster.io/Arnov_Sharma_makes/arduino-atari-punk-synth-2934e8)
https://www.hackster.io/Arnov_Sharma_makes/atari-punk-synth-v2-8b9dd3
(https://www.hackster.io/Arnov_Sharma_makes/atari-punk-synth-v2-8b9dd3)
This article is about the whole built process of this synth so let's get started.

Material Required
Following were the things I used in this build-
Custom PCB
Arduino Nano
Potentiometer
ON-OFF SWITCH
Push Buttons
Speaker 4 Ohms
Header Pins Female

SCHEMATIC

The schematic of this Board is a simple one, Arduino Nano is connected with 12 Push
Buttons. each of the Push Buttons is connected with an IO Port, when we press any
button, it pulls down the IO Port to GND.
The same is with two ON-OFF Switch but when we press them, they keep the IO Pin
pulled down for a longer duration. then two Pots are connected with A4 and A5.
PAM8403 Module is connected with output Pin A2, it amplifies the signal and makes it
louder.

PCB Design

After finalizing the Schematic, I exported the netlist and started working on the PCB
Design.
As for the shape, I took the aesthetics and overall looks from a generic keyboard, Arduino
Nano is placed on the TOP right corner, and the speaker is placed on the TOP left side.
I've added a few fake keys in the design as well, I placed buttons on these fake keys.
maybe the future version will have actual capacitive touch keys.
Also, I've removed soldermask from fake keys so the copper area will be unfilled which
will give a super cool silver look as the board will be covered by HASL.

Getting PCBs from PCBWAY


After finalizing the PCB, I send the Gerber data to PCBWAY
(https://www.pcbway.com/)for samples.
I choose white soldermask with black silkscreen as white PCB looks cool in general if we
add silkscreen patterns in black color.
I received the PCBs in a fast week. As for the PCB Quality, it was superb.
Been using their service for a while and I have to say, it's pretty decent for getting
started.
Just see the intricate design of mine, I placed many unusual patterns on the PCB like
irregular outline and shape of soldermask which is hard to make but they did an
awesome job of making the PCBs with no problem whatsoever.
Checkout PCBWAY from here- https://www.pcbway.com/ (https://www.pcbway.com/)

PCB ASSEMBLY
Before starting the PCB Assembly, we need to gather all the components we will use in
this project.

Adding Header pins, Switches, and Pots


We start first by adding Header Pins for Arduino Nano, switches, and pots in their place.

Adding Push Buttons


Next, we add 12 Push Buttons in their place one by one.

Soldering the components

After placing all the switches and header pins in their place, we solder their terminals to
the PCB by using a regular soldering iron and solder wire.

Adding PAM8403 Module


Next, we add the PAM8403 Module in its place by using some male header pins, we add
male header pins on the PCB and then add PAM8403 on the header pins.
at last, we solder the pins and secure the module in its place permanently.

Adding Speaker
At last, we add a speaker in its place.
I added a hole on the PCB, the goal here was to add a speaker from the backside through
this hole. Speaker is glued to the PCB and then we connect the terminals of the speaker
with PAM8403 CON2 Port through two jumper wires.
After doing this, the PCB is completed.

Result of PCB ASSEMBLY


Here's the result so far, all the components are soldered and the board is completed. It
looks pretty much like an Arduino Nano Sheild or addon board.
The next step is to add Arduino Nano to this board and flash the main sketch into the
MCU.

Main CODE
Here's the main Sketch that I used.
int C = 2;

int CS = 3;

int D = 4;

int DS = 5;

int E = 6;

int F = 7;

int FS = 8;

int G = 9;

int GS = 10;

int A = 11;

int AS = 12;

int B = 13;

int octabajo = 0;

int octarriba = 1;

int tiempo = analogRead(A4);

int pitch_bend = analogRead(A5);

int c = 262;

int cs = 277;
We first add Arduino Nano in its place and then flash it with the code, result will be a
working synth playing random humms, we can alter the sound by pressing buttons or
modulating the potentiometers or ON/OFF Switch.

RESULT
Here's the overall result, watch the video for the demo.

Arduino Piano Synth


This is it for today folks, stay tuned and I'll be back with a new project soon.
Special thanks to PCBWAY (http://www.pcbway.com) for supporting this project, Check
them out for getting great PCB Service for less cost.
Peace

CODE 

code C/C++   (/PROJECTHUB/CODE_FILES/602860/DOWNLOAD)

2
1 int C = 2;

3 int CS = 3;

4 int D = 4;

5 int DS = 5;

6 int E = 6;

7 int F = 7;

8 int FS = 8;

9 int G = 9;

10 int GS = 10;

11 int A = 11;

12 int AS = 12;

13 int B = 13;

14 int octabajo = 0;

15 int octarriba = 1;

SCHEMATICS 

s
c
DOWNLOAD (HTTPS://HACKSTERIO.S3.AMAZONAWS.COM/UPLOADS/ATTACHMENTS/1466018/SCH_PAGE-0
h
COMMENTS 

Please log in (/projecthub/users/sign_in?


id=466509&m=project&reason=comment&redirect_to=%2Fprojecthub%2FArnov_Shar
ma_makes%2Farduino-synth-v3-8dc6d4%23comments) or sign up
(/projecthub/users/sign_up?
id=466509&m=project&reason=comment&redirect_to=%2Fprojecthub%2FArnov_Shar
ma_makes%2Farduino-synth-v3-8dc6d4%23comments&source=popup) to comment.

Zhichen Gu (/projecthub/ZhichenGu)
13 days ago
(/pr
Amazing
oject synth, like it!
hub/
Zhic
hen
Gu)
AUTHOR

(/projecthub/Arnov_Sharma_makes)
Arnov Sharma (/projecthub/Arnov_Sharma_makes)
95 PROJECTS 203 FOLLOWERS

FOLLOW (/PROJECTHUB/USERS/SIGN_UP?ID=309758&M=USER&REASON=FOLLOW&RED

PUBLISHED ON

July 8, 2022

 RESPECT PROJECT (/PROJECTHUB/USERS/SIGN_UP?ID=466509&M=ARTICLE&REASON=RESPECT&...

 WRITE A COMMENT

 Share
MEMBERS WHO RESPECT THIS PROJECT

(/projecthub/abhimuk18)

SEE SIMILAR PROJECTS

YOU MIGHT LIKE

SIMILAR PROJECTS YOU MIGHT LIKE

(/projecthub/Arnov_Sharma_makes/neko-punk-synth-v2-d06f3e?
ref=similar&ref_id=466509&offset=0)
Neko Punk Synth V2 (/projecthub/Arnov_Sharma_makes/neko-
punk-synth-v2-d06f3e?ref=similar&ref_id=466509&offset=0)
Project tutorial by Arnov Sharma (/projecthub/Arnov_Sharma_makes)
316 VIEWS 0 COMMENTS 2 RESPECTS

(/projecthub/Arnov_Sharma_makes/a-better-arduino-synth-with-pam8403-audio-
amplifier-f7561c?ref=similar&ref_id=466509&offset=1)

A Better Arduino Synth with PAM8403 Audio Amplifier


(/projecthub/Arnov_Sharma_makes/a-better-arduino-synth-with-
Project tutorial by Arnov Sharma (/projecthub/Arnov_Sharma_makes)
6,645 VIEWS 0 COMMENTS 15 RESPECTS

(/projecthub/Arnov_Sharma_makes/flux-capacitor-pcb-badge-v3-acc045?
ref=similar&ref_id=466509&offset=2)
Flux Capacitor PCB badge V3
(/projecthub/Arnov_Sharma_makes/flux-capacitor-pcb-badge-v3-
Project tutorial by Arnov Sharma (/projecthub/Arnov_Sharma_makes)
935 VIEWS 0 COMMENTS 6 RESPECTS

(/projecthub/Arnov_Sharma_makes/arduino-atari-punk-synth-2934e8?
ref=similar&ref_id=466509&offset=3)
Arduino Atari Punk Synth
(/projecthub/Arnov_Sharma_makes/arduino-atari-punk-synth-
Project tutorial by Arnov Sharma (/projecthub/Arnov_Sharma_makes)
2,771 VIEWS 0 COMMENTS 5 RESPECTS

(/projecthub/361085/arduino-game-controller-f3ffec?
ref=similar&ref_id=466509&offset=4)

Arduino Game Controller (/projecthub/361085/arduino-game-


controller-f3ffec?ref=similar&ref_id=466509&offset=4)
Project tutorial by Arnov Sharma (/projecthub/Arnov_Sharma_makes) and Elektro Pu...
18,053 VIEWS 6 COMMENTS 21 RESPECTS
(/projecthub/ashshaks/how-to-make-arduino-piano-keyboard-ccaa6a?
ref=similar&ref_id=466509&offset=5)

How to make Arduino Piano keyboard (/projecthub/ashshaks/how-


to-make-arduino-piano-keyboard-ccaa6a?
Project tutorial by Sharifdeen Ashshak (/projecthub/ashshaks)
13,779 VIEWS 2 COMMENTS 13 RESPECTS

(https://www.arduino.cc)
Powered by

(https://www.hackster.io)

You might also like