APC20 + APC40 feedback

marko.salamon93

2020-09-07 09:41:17

Hello,

Just starting out and learning the ropes. I've got APC20 and APC40 that i want to run through BOME.

Few things i want to implement:

APC20:

APC 40:

Attatching also midi map for both controllers with midi messages.

Thanks for help in advance,

Kind regards,

Marko


Attachments:

APC20_40 feedback.bmtp
APC40 + APC20_Midi notes.xlsx

Steve-Bome Forum Moderator

2020-09-07 22:34:43

First of all, I'm not sure why you are going to note mode for APC20 as I think the normal mode would be better especially if you are doing different colors for different rows since in normal mode, the entire row is the same note number but on a different MIDI channel (as with the APC40 as you can see below). With that said, I updated translator 0.7 with two rule to changes the note color for note 42 only. You could either add rules for each note indivitually as I did or set them in ranges.

 

 

 

 

For the APC40, your rules look wrong as I believe each note has a different note number.  Assuming you have a MK1

Row 1 is note 53 and columns are MIDI CH1 through 8 going across.

 

So R1C1 should be 90 35 qq where qq is the color. Column 2 would 91 35 qq etc to column 8 (97 35 qq)

(Note decimal 53 is hex 35).

R2 C1 shoul start with 90 36 qq and so on.

 

Once you sort that out, you can determine the row by the note number and the column by the channel number

See rules in translator 0.8 for column and row calculations

 

If you put the APCs in Mode 1 instead of Mode 2 , the LED's should locally reflect thier correct state.

 

This should be enough to get you started. Again, in summary, you could probably put APC20 in mode 1 and duplicate a lot of rules as you did for the APC40.

 

Here are the rules with comments for translator 0.8

 

// apc 40 notes are 53-57

 

// calculate row

pp=gf-gd

pp=pp/8

// Add offset

pp=pp+53

 

// calculate column or MIDI channel

oo=gf-gd

// mod (remainder) function

oo=oo%8

 

// create note on on correct channel

rr=oo|144

 

 

// velocity

qq=gb

 

// if row 5, change to different color

 

if pp==57 then qq=4

 

Good luck!

 

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Steve-Bome Forum Moderator

2020-09-07 22:35:13

Whoops here is the modified project file.

 


Attachments:

APC20_40-feedback-sjc.bmtp

marko.salamon93

2020-09-08 09:36:48

I've actually managed to get all buttons working with feedback, but i did it manually one by one, it took some time, but now its not bad cuz i can easily update colors if needed :D

How would I set rules up for groupings to work. For example:

Row 1 is whole green, when toggled it flashes green - check

I want whole row to be grouped, so only 1 button that is last pressed is flashing. Each button already have defined variable.

Kind regards,

Marko

Steve-Bome Forum Moderator

2020-09-08 14:56:28

For only 8 buttons , it is probably best to just send a MIDI stream with all buttons as note off, and then a single note on for the button you pressed. So say first row (53 decimal) you determine the button to turn on by the MIDI channel. Turn all buttons off then turn on just the pressed button.

See attached

 

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

 


Attachments:

single-note-on-top-row-APC40-MK1.bmtp

marko.salamon93

2020-09-08 18:44:54

Thanks for you reply, i've managed to get it working!

Just curious how do you determine/calculate (in your example) number for pp|oo? I need mine set to 0|oo in note mode

In addition to these rules and settings: how can I add that another press to last pressed button to turn flashing back to original state or set it to toggle?

Marko