Why due for standalone monome?

Just wondering what is it about the monome that requires arduino due instead of an AVR based board. Sheer number of IO? or due to built in usbhost on due only, or both?

is it possible to take one of the avr based arduino boards + usbhost shield and get monome to work with that (minus the benefit of the already developed monomhost library ezra made)?


i don’t know enough about the host shield, but i do suspect that the library would be pushing the limits of processing power on an avr8 system.

the DUE has native usb host and is a more modern processor. it’s not very expensive, and the fact that we put a great amount of energy into a library is pretty good incentive to just go for that.

The Due is a different processor family than the AVR-based Arduinos and really is in a whole different league. On top of being a lot faster and having more IO and memory, it’s architecture is closer to the processors used in things like the Braids and aleph - which, while a little less straightforward is a lot more powerful under the hood.

If you wanted to use an AVR + host sheld, it will work, but the Due won’t be any more expensive than the pair and you’ll have to adapt the USB code yourself.

(Oh, and hello to everyone on lines. Nice spot for a chat)


Yea I get that the due is ARM based, and its differences between the other arduino boards, thanks for your input tho!

It wasn’t a question about cost, was more about using an Mutable Instruments avrlib and Midipal base code which does 60% of what I need. However I don’t think that code will run on an ARM board without a major overhaul.

Yea thought it was more about processing power and built in usb host, thanks tehn! and of course the library is definitely a god send.

Ah - I see that makes more sense. That code shouldn’t be too difficult to convert to run on the Due… but there’s a lot more of it than there is USB code if you’re considering which way to port.

My original USB driver for the monome on 'b was based on the AVR-based code available in the Circuits@Home library, so their codebase is definitely the place to start. You should be sure to get one of their boards to be sure to support the folks who wrote the original code (and there are sporadic bug reports of their library not always working 100% on other USB host shields.

Awesome! Thanks for the info!