Questions about Teensy from a beginner

Status
Not open for further replies.
Hello! I posted some questions in the project guidance category but I've realized that they might belong better here in Technical Support

I'm new when it comes to electronics (I took a class in high school and understand the basics) but I'm pretty familiar with programming. I'm attempting to build my own synth for my music. I discovered Teensy and the Teensy Audio Adapter and it looked like it can do everything I need. My goal (albeit a bit ambitious) is an all in one synth with 3-5 oscillators, plenty of filters (reverb, delay, low pass, etc), a drum pad (if possible), and maybe a sequencer. The reason I say "maybe" and "if possible" is because I don't know enough about the limitations of the teensy board and what other add-ins will I need. I'm not scared of a challenge and not scared about timeframe or price (reasonably) so I have many questions but I'll only start with 3 that I'd love answered if they can (just please go easy on me with the lingo because I'm still getting used to it).

I got a Teensy 3.6 and a Teensy Audio adapter that is on the way to my house and am currently trying to better understand the board while I wait for it to arrive.

1) My biggest question is about I/O ports, how much can I run through it? It would be cool if I could have 16-32 buttons to control notes (I was looking at buttons similar to this video: https://www.youtube.com/watch?v=_nBK8sAl9nw ) as well as numerous potentiometers and switches to control filters. I've seen things like the I/O expanders like in Paul's (big fan by the way) Monolith Synth Build but how are expanders actually carried out with the teensy? What are the downsides? How is it carried out in the code?

I want to know the limits that the board can handle input wise and if I can stretch it, If not I've already thought of some alternative ways of dealing with this problem.

2) What are some resources and tips for creating a sequencer in this synth, I'm trying to create an all in one synth and I want to go all out. Also, could this tie into an arpeggio creator?

3) POWER. I'm so confused about power. my overall goal is to have this thing powered by a plug in the wall but I hear some places that 3.3V is used and others that 5V is used while other people use usb power. Is that enough to power the large amount of buttons and LEDs I'm planning to use? What are some resources where I can learn more about that?

Please remember I am a scrub and desperate and more than willing to learn. Please refrain from telling me how hard this will be or that I can't do it, I am willing to work day and night learning about this, I'll work for a year on it or more if I must.

Thank you so much for reading and thank you in advance if you can help :)

-ben
 
1) My biggest question is about I/O ports, how much can I run through it?

The simplest way is one signal per pin. At least while learning, probably best to start out with just a few buttons and pots the simple way.

With those I/O expanders or with mux chips or matrix scanning (Keypad lib) you can connect a tremendous number of inputs.


I've seen things like the I/O expanders... What are the downsides?

The main downsides are complexity and speed. With I2S you're limited by the 100 or 400 kHz clock speed. With mux chips and matrix scanning you're limited by delays needed for the signals to settle. If things don't work, the complexity makes troubleshooting harder.


2) What are some resources and tips for creating a sequencer in this synth, I'm trying to create an all in one synth and I want to go all out. Also, could this tie into an arpeggio creator?

Start with the audio library tutorial. Best to print the 31 page PDF, so it's not taking up screen space while you're doing the tutorial.

https://www.pjrc.com/store/audio_tutorial_kit.html

3) POWER. I'm so confused about power. my overall goal is to have this thing powered by a plug in the wall but I hear some places that 3.3V is used and others that 5V is used while other people use usb power.

There's more than 1 way, but the most common approach is 5V power. Teensy 3.6 has a 3.3V regulator chip which creates the 3.3V for you from the 5V input.


Is that enough to power the large amount of buttons and LEDs I'm planning to use?

Power supplies have a voltage and a maximum current rating. The power supply tries to always give you the rated voltage, as long as you consume less than the maximum current. So it's the current rating that matters here. You'll need to add up the current needed for all the stuff you want to connect, then get a power supply rated for at least that much.

Plan on Teensy 3.6 and the audio shield using about 80 mA, or perhaps as much as 120 mA if you connect headphones and play the music very loud.

Plan on 10 to 20 mA for each single color LED, or about 50 mA for each RGB LED. For bare LEDs, the current depends on the resistor you pair with the LED. For addressable LEDs like WS2812, the current it set by electronics inside the LED package. If you use a large number of LEDs, the power really starts to add up!

Buttons typically use very little current, though the exact value depends on the pullup resistor you select. Budget about 0.3 mA per button.
 
Thank you so much for the response, some follow up questions:

1) This may sound stupid but physically how do I hook up the I/O expanders? what pins on the teensy are compatible? Please forgive me for my incompetence but it's my first time using a board like Teensy (or any real electronics project for that matter)

2) When hooking up non-usb power, what pin is power in take? is it the one labeled VIN, 3.3V or 3.3V (250 mA MAX) on the Pin Assignment PDF? Could you explain in context of your monolith synth since I'm familiar with it and it's similar in magnitude to my project?

3) How feasible do you think my project is? I'm not worried about difficulty, I just mean in terms of hardware capability.

Thank you in advance
 
#1 - web search like bing.com/search?q=arduino+port+expander points to hints on Arduino.cc and solutions from Adafruit and SparkFun

#2 - VIN pin is for providing power in the range listed on the CARD/PDF. With that power source there the 3.3V pins become output as indicated. Given a trusted external 3.3V power supply and no VIN connection it can be connected to one of the indicated 3.3V pins.
 
The I/O expanders in the Monolith Synth used the SDA & SCL signals, pins 18 & 19. The 3 wire cable connecting them is just those 2 signals and GND. SDA & SCL are meant to be shared by several chips, as long as each has a unique address. Those I/O expanders had 3 pins to set each chip's address, so up to 8 of those expanders can be used on the same I2C bus.

Generally VIN is used for external 5V power. The Monolith Synth used 12V power and had a small 12V to 5V converter hiding underneath the control board with the Teensy 3.6. Its 5V output was connected to VIN & GND.

3) How feasible do you think my project is? I'm not worried about difficulty, I just mean in terms of hardware capability.

Sounds pretty feasible. 5 oscillators is almost nothing. Delay and reverb use memory. Usually Teensy 3.6 has plenty for "normal" delay effects.

Again, I'd recommend actually doing the tutorial.

https://www.pjrc.com/store/audio_tutorial_kit.html

You'll gain quite a bit of experience as you go through it. Also look around at the other examples, especially the one about CPU & memory usage monitoring.
 
Status
Not open for further replies.
Back
Top