# Sysex help for Roland Tr-6S

**URL:** https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337
**Category:** Developers
**Created:** [October 31, 2024, 5:44am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337 "2024-10-31T05:44:33Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![Songsta](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/songsta/32/3442_2.png) [@Songsta](https://forum.electra.one/u/Songsta)
#### Post date: [October 31, 2024, 5:44am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/1 "2024-10-31T05:44:33Z")

</div>

Hi all. I’ve managed to get most of the following sysex message working for my TR-6S. It represents the volume control of the bass drum channel (it is accessible via CC, but I’m just using it to test). However, I’m stuck at the checksum.In the messages below the second last byte is the checksum. Can anyone advise?

| 07:05:37.288 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 01 03 F7 |
| --- | --- | --- | --- | --- | --- |
| 07:05:37.293 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 03 01 F7 |
| 07:05:37.297 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 05 7F F7 |
| 07:05:37.303 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 07 7D F7 |
| 07:05:37.305 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 09 7B F7 |
| 07:05:37.309 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 0B 79 F7 |
| 07:05:37.313 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 0D 77 F7 |
| 07:05:37.317 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 00 0F 75 F7 |
| 07:05:37.322 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 02 01 F7 |
| 07:05:37.326 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 04 7F F7 |
| 07:05:37.329 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 07 7C F7 |
| 07:05:37.335 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 09 7A F7 |
| 07:05:37.337 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 0B 78 F7 |
| 07:05:37.341 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 0D 76 F7 |
| 07:05:37.345 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 01 0F 74 F7 |
| 07:05:37.349 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 01 01 F7 |
| 07:05:37.353 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 04 7E F7 |
| 07:05:37.357 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 06 7C F7 |
| 07:05:37.361 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 09 79 F7 |
| 07:05:37.365 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 0B 77 F7 |
| 07:05:37.369 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 02 0D 75 F7 |
| 07:05:37.374 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 00 01 F7 |
| 07:05:37.377 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 02 7F F7 |
| 07:05:37.381 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 05 7C F7 |
| 07:05:37.386 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 07 7A F7 |
| 07:05:37.407 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 0A 77 F7 |
| 07:05:37.407 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 0D 74 F7 |
| 07:05:37.407 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 03 0F 72 F7 |
| 07:05:37.407 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 02 7E F7 |
| 07:05:37.407 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 04 7C F7 |
| 07:05:37.409 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 07 79 F7 |
| 07:05:37.413 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 09 77 F7 |
| 07:05:37.417 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 0C 74 F7 |
| 07:05:37.421 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 04 0E 72 F7 |
| 07:05:37.425 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 00 7F F7 |
| 07:05:37.429 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 02 7D F7 |
| 07:05:37.435 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 04 7B F7 |
| 07:05:37.437 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 06 79 F7 |
| 07:05:37.441 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 08 77 F7 |
| 07:05:37.445 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 0A 75 F7 |
| 07:05:37.449 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 0C 73 F7 |
| 07:05:37.453 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 0E 71 F7 |
| 07:05:37.457 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 05 0F 70 F7 |
| 07:05:37.463 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 01 7D F7 |
| 07:05:37.465 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 03 7B F7 |
| 07:05:37.469 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 05 79 F7 |
| 07:05:37.474 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 06 78 F7 |
| 07:05:37.477 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 07 77 F7 |
| 07:05:37.482 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 09 75 F7 |
| 07:05:37.486 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 0A 74 F7 |
| 07:05:37.508 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 0C 72 F7 |
| 07:05:37.508 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 0D 71 F7 |
| 07:05:37.508 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 0E 70 F7 |
| 07:05:37.508 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 06 0F 6F F7 |
| 07:05:37.508 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 00 7D F7 |
| 07:05:37.509 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 01 7C F7 |
| 07:05:37.514 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 02 7B F7 |
| 07:05:37.517 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 03 7A F7 |
| 07:05:37.522 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 05 78 F7 |
| 07:05:37.526 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 06 77 F7 |
| 07:05:37.529 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 07 76 F7 |
| 07:05:37.539 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 09 74 F7 |
| 07:05:37.540 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 09 74 F7 |
| 07:05:37.542 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 0A 73 F7 |
| 07:05:37.550 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 0C 71 F7 |
| 07:05:37.554 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 0E 6F F7 |
| 07:05:37.557 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 07 0F 6E F7 |
| 07:05:37.562 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 01 7B F7 |
| 07:05:37.566 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 02 7A F7 |
| 07:05:37.569 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 03 79 F7 |
| 07:05:37.574 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 04 78 F7 |
| 07:05:37.578 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 06 76 F7 |
| 07:05:37.582 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 08 74 F7 |
| 07:05:37.587 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 0A 72 F7 |
| 07:05:37.590 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 0C 70 F7 |
| 07:05:37.609 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 0D 6F F7 |
| 07:05:37.609 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 08 0F 6D F7 |
| 07:05:37.609 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 01 7A F7 |
| 07:05:37.609 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 03 78 F7 |
| 07:05:37.610 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 05 76 F7 |
| 07:05:37.614 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 07 74 F7 |
| 07:05:37.618 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 09 72 F7 |
| 07:05:37.623 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 0A 71 F7 |
| 07:05:37.626 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 0C 6F F7 |
| 07:05:37.630 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 0E 6D F7 |
| 07:05:37.635 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 09 0F 6C F7 |
| 07:05:37.638 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 01 79 F7 |
| 07:05:37.642 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 02 78 F7 |
| 07:05:37.646 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 03 77 F7 |
| 07:05:37.650 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 05 75 F7 |
| 07:05:37.654 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 06 74 F7 |
| 07:05:37.658 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 07 73 F7 |
| 07:05:37.662 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 09 71 F7 |
| 07:05:37.666 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 0A 70 F7 |
| 07:05:37.670 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 0B 6F F7 |
| 07:05:37.674 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 0C 6E F7 |
| 07:05:37.678 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 0D 6D F7 |
| 07:05:37.682 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0A 0E 6C F7 |
| 07:05:37.687 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 00 79 F7 |
| 07:05:37.690 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 01 78 F7 |
| 07:05:37.710 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 02 77 F7 |
| 07:05:37.710 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 03 76 F7 |
| 07:05:37.710 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 04 75 F7 |
| 07:05:37.710 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 05 74 F7 |
| 07:05:37.711 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 07 72 F7 |
| 07:05:37.715 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 08 71 F7 |
| 07:05:37.718 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 09 70 F7 |
| 07:05:37.723 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 0A 6F F7 |
| 07:05:37.726 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 0B 6E F7 |
| 07:05:37.732 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 0D 6C F7 |
| 07:05:37.738 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 0F 6A F7 |
| 07:05:37.739 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0B 0F 6A F7 |
| 07:05:37.743 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 01 77 F7 |
| 07:05:37.747 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 02 76 F7 |
| 07:05:37.751 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 04 74 F7 |
| 07:05:37.754 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 05 73 F7 |
| 07:05:37.759 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 07 71 F7 |
| 07:05:37.763 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 08 70 F7 |
| 07:05:37.766 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 09 6F F7 |
| 07:05:37.772 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 0B 6D F7 |
| 07:05:37.775 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 0C 6C F7 |
| 07:05:37.779 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 0E 6A F7 |
| 07:05:37.785 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0C 0F 69 F7 |
| 07:05:37.787 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 00 77 F7 |
| 07:05:37.791 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 01 76 F7 |
| 07:05:37.809 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 02 75 F7 |
| 07:05:37.809 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 04 73 F7 |
| 07:05:37.809 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 05 72 F7 |
| 07:05:37.809 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 06 71 F7 |
| 07:05:37.811 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 08 6F F7 |
| 07:05:37.815 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 09 6E F7 |
| 07:05:37.819 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 0B 6C F7 |
| 07:05:37.823 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 0C 6B F7 |
| 07:05:37.827 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 0D 6A F7 |
| 07:05:37.831 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0D 0E 69 F7 |
| 07:05:37.835 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 00 76 F7 |
| 07:05:37.839 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 01 75 F7 |
| 07:05:37.843 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 03 73 F7 |
| 07:05:37.847 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 04 72 F7 |
| 07:05:37.851 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 05 71 F7 |
| 07:05:37.856 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 06 70 F7 |
| 07:05:37.859 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 08 6E F7 |
| 07:05:37.863 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 0A 6C F7 |
| 07:05:37.867 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 0B 6B F7 |
| 07:05:37.872 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 0D 69 F7 |
| 07:05:37.875 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0E 0E 68 F7 |
| 07:05:37.879 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 00 75 F7 |
| 07:05:37.885 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 01 74 F7 |
| 07:05:37.887 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 03 72 F7 |
| 07:05:37.891 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 04 71 F7 |
| 07:05:37.911 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 05 70 F7 |
| 07:05:37.911 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 06 6F F7 |
| 07:05:37.911 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 08 6D F7 |
| 07:05:37.911 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 09 6C F7 |
| 07:05:37.911 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 0B 6A F7 |
| 07:05:37.915 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 0C 69 F7 |
| 07:05:37.919 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 0D 68 F7 |
| 07:05:37.923 | From TR-6S TR-6S CTRL | SysEx | | Roland 16 bytes | F0 41 10 00 00 00 6D 12 10 54 10 08 0F 0F 66 F7 |

---

<div class="post-metadata">

### Author: ![NewIgnis](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/newignis/32/767_2.png) [@NewIgnis](https://forum.electra.one/u/NewIgnis)
#### Post date: [October 31, 2024, 6:36am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/2 "2024-10-31T06:36:21Z")

</div>

Roland has used the same type of checksum during the years.  
Martin has foreseen a checksum function for Roland to use in SysEx controls.

You should find the below explanation in any Roland Synth manual that explains the MIDI SysEx implementation . Here’s an excerpt from the XV5080

_(edit : example was wrong, see below for the correct excerpt)_

---

<div class="post-metadata">

### Author: ![Songsta](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/songsta/32/3442_2.png) [@Songsta](https://forum.electra.one/u/Songsta)
#### Post date: [October 31, 2024, 8:42am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/3 "2024-10-31T08:42:38Z")

</div>

Thanks for this. You mention that Martin has implemented a checksum function - I tried to add that at the end of the message using the visual interface, but wasn’t sure what values I should add for those, or even if it was the right message to add. I assume that if I add the correct start position and length, the calculation should happen correctly, but I’m not sure what the start position and length refer to.

 ![Screenshot 2024-10-31 at 10.41.33](https://europe1.discourse-cdn.com/flex017/uploads/electraone/original/2X/7/7534064d64ddb46905b7be72a29cb1ea4b3f6614.png)

---

<div class="post-metadata">

### Author: ![NewIgnis](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/newignis/32/767_2.png) [@NewIgnis](https://forum.electra.one/u/NewIgnis)
#### Post date: [October 31, 2024, 11:12am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/4 "2024-10-31T11:12:15Z")

</div>

As the example of Roland should have shown the checksum must take into account the address info and the data info of the sysex message. So you need to start at the byte after the message header, including the command byte, and end on the byte just before the checksum itself. Try to figure this out on your device.

Unfortunately the copy/paste function screwed up the Roland example 😑

So here it comes again:

**Example of an Exclusive message and calculating a checksum**  
Roland Exclusive messages (RQ1, DT1) are transmitted with a checksum at the end (before  
F7) to make sure that the message was correctly received. The value of the checksum is  
determined by the address and data (or size) of the transmitted Exclusive message.

**❍How to calculate the checksum (hexadecimal numbers are indicated by “H”)**

The checksum is a value derived by adding the address, size, and checksum itself and  
inverting the lower 7 bits.  
Here’s an example of how the checksum is calculated. We will assume that in the Exclusive  
message we are transmitting, the address is aa bb cc ddH and the data or size is ee ffH.

aa + bb + cc + dd + ee + ff = sum  
sum ÷ 128 = quotient … remainder  
128 - remainder = checksum

\<Example 1\> Setting CHORUS TYPE of PERFORMANCE COMMON to DELAY (DT1).

According to the “Parameter Address Map (p. 290)”, the start address of Temporary  
Performance is 10 00 00 00H, the offset address of CHORUS at PERFORMANCE COMMON  
is 04 00H, and the address of CHORUS TYPE is 00 00H. Therefore the address of CHORUS  
TYPE of PERFORMANCE COMMON is;

```auto
10 00 00 00H
      04 00H
+) 00 00H
=
10 00 04 00H

```

DELAY has the value of 02H.  
So the system exclusive message should be sent is;

```auto
F0 41 10 00 10 12 10 00 04 00 02 ?? F7
(1) (2) (3) (4) (5) address data checksum (6)

```

(1) Exclusive Status, (2) ID (Roland), (3) Device ID (17),  
(4) Model ID (XV-5080), (5) Command ID (DT1), (6) End of Exclusive

Then calculate the checksum.  
10H + 00H + 04H + 00H + 02H = 16 + 0 + 4 + 0 + 2 = 22 (sum)  
22 (sum) ÷ 128 = 0 (quotient) … 22 (remainder)  
checksum = 128 - 22 (remainder) = 106 = 6AH

This means that F0 41 10 00 10 12 10 00 04 00 02 6A F7 is the message should be sent.

---

<div class="post-metadata">

### Author: ![Songsta](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/songsta/32/3442_2.png) [@Songsta](https://forum.electra.one/u/Songsta)
#### Post date: [October 31, 2024, 11:26am UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/5 "2024-10-31T11:26:16Z")

</div>

Thanks again. I’ll give it a go again tonight.

---

<div class="post-metadata">

### Author: ![Songsta](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/songsta/32/3442_2.png) [@Songsta](https://forum.electra.one/u/Songsta)
#### Post date: [October 31, 2024, 4:50pm UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/6 "2024-10-31T16:50:32Z")

</div>

Got it working! In the end [this page](https://mididesigner.com/qa/10040/roland-tr-8s-sysex-whats-what) was helpful to understand where the start of the checksum and what the length is.

---

<div class="post-metadata">

### Author: ![Foksadure](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/foksadure/32/462_2.png) [@Foksadure](https://forum.electra.one/u/Foksadure)
#### Post date: [December 7, 2024, 4:54pm UTC](https://forum.electra.one/t/sysex-help-for-roland-tr-6s/3337/7 "2024-12-07T16:54:01Z")

</div>

Glad you sorted that out!  
Does the TR-6S respond to those messages when sent to the DIN MIDI IN?  
I had the feeling there were dedicated to the TR-6S CTRL device, used by the editor, hence in computer USB mode only.
