Really cool project, and is now making me wonder what it would take to get a Grid talking to a Teensy device…

The later Teensys are ARM M4 devices so anything with an ARM M4 chip should be able to run teensy code with just a little effort. Not for a novice, but someone who has worked with at least two different ARM devices with the same core would have the general sense of what’s required to port it. The bulk of the heavy lifting here is done by the audio library so the synth logic, voice allocation and MIDI mapping layer would be instantly portable if the audio library is.

3 Likes

Nice project too, just quickly looking at it I noticed it’s using the ubs.h library that apparently is made specifically for the Arduino Due:
https://www.arduino.cc/en/Reference/USBHost

This should be changed if used with a different board like I’m doing with the Teensy+usb host chip.

Kinda similar to Monome this guy is showing how to make a standalone sequencer with the Launchpad:

All the logic for the sequencing is handled by the arduino as the Launchpad is only sending midi notes when pushing the buttons.

I was thinking of doing my own Launchpad sequencer too later…

2 Likes

oh you’re right, i forgot teensy can’t use that lib directly.

theres this, maybe similar/same API?

[ed] hm… no, not really the same.
[ed ed] but… not too bad. (Task exists, &c)
[ed ed ed] BUT… sorry i finally realized you said teensy 3.2 and a shield.

i haven’t really looked at this project for 5 years. port for both USBHostShield arduinos, and teensy 3.6+ would be useful. and i think all the FTDI and monome protocol stuff would translate.

maybe there is some newer / better option for usb host middleware across arduino types / shields.

FWIW - i have some code that does monome grid (and varibright) on Teensy.

It’s in the middle of some big refactoring that I want to get back to, but the proof of concept part works well.

This is messy but ¯_(ツ)_/¯

3 Likes

Realizing I may have misunderstood the question…

to HOST a monome grid with a teensy - this is totally doable on Teensy 3.6 without any monkeying around with FTDI or other libraries.

@scanner_darkly and I have this working on a project and we have code that hosts a grid or arc from a Teensy 3.6

2 Likes

oh - good to know that things are easier in 2019 than 2014

where might that code be? (not this one, it seems, despite the description https://github.com/okyeron/MonomeHost)

FTDI or other libraries

for clarity: FTDI is the usb->uart chip in older monome grids. these devices definitely require a host-side driver. on linux these are in the kernel. in 2012 i had to roll one for aleph and in 2014 i had to roll one for Due, both modeled on the linux sources. is there an official driver built into teensy libs these days?

Repo is @scanner_darkly’s - not sure it’s public. I’ll see if I can DM you a link.

FTDI stuff is built in on Teensy I think. (forum reference)

1 Like

(Sorry for the deluge of posts)

With Teensy 4, you could do the audio board and USB-host all in one - and not have to rely on a separate USB host chip. There’s a new Audio shield for Teensy 4

1 Like

Yes Teensy 4 is like Teensy 3.6 on the USB Host part so it is included.

Wow the audio board is now updated to work with it! I was waiting for that. I’ll get one soon then!

My solution was an intermediary one where I had a 3.2 with no USB Host and I though maybe it’s more valuable to have a separate USB chip that I can reuse with other micro-controllers later instead of getting a Teensy 3.6 (at the time there was no 4.0 yet). But unfortunately they discontinued that USB chip now… so not a long term solution finally.

For info the USB chip I’m using is this one:
http://www.hobbytronics.co.uk/usb-host-board-v2

1 Like

I added potentiometers to play with the modulator frequency and amplitude and the envelope:

4 Likes

Another spooky demo.

Now I made the buttons of the Launchpad to light up when I play notes, and they stay on as long as the notes are playing to have some feedback.

Still on a branch on GitHub because I’m not yet done with the Launchpad specific code.

1 Like

Hey,
It’s been some time, just wanted to give an update about my Teensy synth.

Now the synth is capable of FM, AM, and Ring modulation.
It offers also 3 modes, Synth, Arp and Drone.

I’m in the process of making a little video to demonstrate the final result.

In the meantime I updated the code and documentation on Github:

9 Likes

This guy made a cool drum machine out of two Teensies running Grids and Peaks software: https://kbob.github.io/2016/06/27/i-made-this-drum-machine

2 Likes

Hey,

Here is finally a complete demo of my synth including raw audio and demos with reverb at the end.

8 Likes

Ahhh, this is really cool. I saw your post on the teensy forums, should have guessed you were over here too.

Thanks for putting all your code on GitHub, it looks real good.

1 Like

This project has evolved so much since December last year… I have been completely out of the forum since then but I have been working on it and on many other things too.

I have developed 3 base platforms to build modules on top of them, I call them Motherboard6, Motherboard9 and Motherboard12.

I have reworked this synth, renamed it to just Synth, it is based on Motherboard6, so it has 6 controls now.

Here is a demo, I play from the laptop, sending midi via USB:

I have built also other modules, Psyc03 (an acid percussive synth), DS9 (a drum synth), Byte (a drum sequencer), Cycle (a note sequencer), and Drone (which is obvious).

They all communicate via midi over jacks from the back.
I am very close to be able to jam properly with my modules now, here is a recent test of 4 modules together:

7 Likes

By the way the code of this new version of Synth is on GitHub here:

7 Likes