The targets that need interpretation are the led brightness and arc led count. For the APC, there’s a 5x8 grid that has three colors and a single Delta encoder. There are also led rings with 15 steps. Excluding those it’s just a 8x10 grid.

I realize I could just buy or build a normal unit but I find this microcontroller stuff fun.

1 Like

i guess you could even do hardware midi and lose the shield (at least with teensy 3 and up)

if you’re not doing hardware midi i’m actually not seeing why you would need 3.3v but maybe i’m missing something

I don’t know the difference between a USB host driver for a MIDI hardware device and hardware MIDI. What do you mean?

I think the 3.3V on the Teensy is because the other guy made the shield for that voltage. It’s “arduino compatible”.

uh, i’m being stupid, thought the akai thing had hardware midi but of course it’s usb only.

i mean old-school serial midi, aka 31250 baud uart with an optoisolator. teensy is a convenient way to talk to this (and its in the back of my mind because i have a number of interesting pre-usb controllers that aren’t doing anything r/n)

anyway, disregard

haha, 5 pin DIN. Yeah. Noisebridge has lots of those, the Akai is not one of them. IIRC the Aleph docs recommend using a USB MIDI adapter to connect devices to it as a host :wink:

I was thinking about your avr32 implementation of USB MIDI but I found all the cool Teensy code yesterday afternoon.

the Aleph docs recommend using a USB MIDI adapter to connect devices to it as a host :wink:

heh, that is quite true. however it would be equally happy to use an as-yet-nonexistent DIN-monomeserial adapter (happier, in fact.)

Perhaps we can do both!

@zebra it looks like you already implemented the Monome serial protocol for AVR microcontrollers

Imma try and load this onto the Teensy++ I have at the space. I think…after that it’s just about doing the MIDI table, translation functions and some glue to pass the translated bytes to the other host endpoint.

that’s the host library though. for connecting monome device to arduino

Ah, I see. I need the opposite. Well, the good news is I forgot I have an Arduino Due, which has USB host mode and is a 32bit AVR as you originally suggested! I got the USB MIDI driver and the MonomeHost Arduino sketch to compile and flash to the unit so I’m just waiting on a hardware adapter.

This seems relevant to your interests:
http://www.fredrikolofsson.com/f0blog/?q=node/658

Hi,

sorry for necro-posting but it’s the only place I’ve found when it comes to APC40 monome emulation.

I want to hook up APC40 to Norns so it can act just like a grid without routing it trough a Mac.

Can you please tell me did you managed to get APC40 working just like a monome Grid?

This thread has info on midigrid lib

1 Like

Thanks, I’ll look into it :slight_smile:

Just an FYI, I’m working on a complete re-write of Midigrid, I’ve got lights on, but still need to sort out some buffering / refresh issues and the event handling stack. The reason I mention this is I noticed the APC40 has a weird button layout (i.e. not 8x8) and my rewrite should hopefully cater for this better than the existing code.

1 Like

My god, people on this forum are really helpful (it feels like 90s internet) :smiley:

Thanks for the heads up, I’ll patiently wait for the news about your project (I’ll also give Control Surface a go).

Also - yes, APC40 has weird 8x5 (or 9x6 - depends how you’ll look at it) grid.

Yeah this place rules.

I’ve been frustrated by my APC40’s weird dimensions for a while and might look into writing some APC40 specific patches for Norns grid apps… will share if that happens.

1 Like

Also - yes, APC40 has weird 8x5 (or 9x6 - depends how you’ll look at it) grid.

Cheat codes is 3 groups of 8x5 + 1 aux row :face_with_hand_over_mouth:

1 Like

Hi all,

This is actually my first forum post, so just wanted to introduce myself quickly. My name is Scott, I am a systems administrator and Java/Python programmer from Austin, TX. I just wrote a grid emulator app for an APC mini in Java as a portfolio project and to do some groundwork for maybe some future OSC projects. It still needs more work, but the basic functionality (GUI, IO stuff, and logic) is done.

It’s been a really long time since I’ve visited this site and I’m curious - do people still use their grids or have any interested in using my app? Also, I’m releasing it open source so if anyone would like to contribute, it will eventually be up in my Github.

Nice to meet you,

Scott

Update: Originally this was another monomeserial clone, but I redesigned it so it would work more like the way I imagine serialosc works from reading the docs I could find and reverse engineering other people’s max patches. So far, the server listening on port 12002 can only respond to /serialosc/list messages, but it won’t be too hard to build this out later. Everything is working with grid-test.maxpat, and I can see that flin and meadowphysics seem to respond to presses (though the output is a little wonky - I think I need to use an older Max runtime, I’m using Max 7), but I can’t get it communicating with mlrv 2.3. I’m wondering if this is related to the address string I’m using ("/monome/grid/key") or perhaps the information I’m sending back as a response to the /serialosc/list messages - I was thinking that id and type could be arbitrary strings as long as I supplied the correct port, but now I’m thinking the type argument matters in the response “/serialosc/device” (id, type, port). Can anyone help me out? I feel like I must be pretty close to having this finished and am much better at Java than Max, so picking through mlrv2.3 is a little bit daunting for me.

6 Likes