{"id":15,"date":"2012-07-24T13:21:55","date_gmt":"2012-07-24T13:21:55","guid":{"rendered":"http:\/\/212.84.74.159\/~virtuall\/?page_id=15"},"modified":"2012-09-27T22:48:08","modified_gmt":"2012-09-27T22:48:08","slug":"going-further","status":"publish","type":"page","link":"https:\/\/virtuallyeverybody.co.uk\/?page_id=15","title":{"rendered":"going further"},"content":{"rendered":"\r\n<h1>Going further<\/h1>\r\n<p>Just a disclaimer before we start for all those legal-eagles<\/p>\r\n<p>I\u2019ve tried this stuff and it works fine. I\u2019ve done my best to give you accurate information but if your Tenori dies as a result of your experiments don\u2019t blame me! Sorry!<\/p>\r\n<p>Ok, having got that out of the way, this section \u00a0is all about controlling the Tenori from a computer &#8230;<strong><em><\/em><em>not<\/em><\/strong> about using the Tenori-on to control something else.<\/p>\r\n<p>The latest firmware for the Tenori-on enables the user to control a number of features using any device that is capable of sending midi system exclusive (SYSEX) messages, which opens up a whole load of possibilities.<\/p>\r\n<ol id=\"lesson-list\" class=\"click-list\">\r\n\t<li><a class=\"lessons\" href=\"#kit\">Kit you need<\/a><\/li>\r\n\t<li><a class=\"lessons\" href=\"#hexadecimal\">The basics of hexadecimal<\/a><\/li>\r\n\t<li><a class=\"lessons\" href=\"#codes\">Some useful codes to send<\/a><\/li>\r\n\t<li><a class=\"lessons\" href=\"#limitations\">Limitations<\/a><\/li>\r\n<\/ol>\r\n<div id=\"kit\" class=\"hide\">\r\n<p><strong>Kit you need<\/strong><\/p>\r\n<p>If you want to control your Tenori-on with a computer the solution is readily available.<\/p>\r\n<p>Download and install some basic software from the internet that enables you to send MIDI messages. One that works fine for me is <strong>SysEx Librarian<\/strong>. There are many others.<\/p>\r\n<p>I also installed <strong>MIDI Monitor <\/strong>&#8230;just to check what signals were going in and out of my computer.<\/p>\r\n<p>Get a USB to MIDI port, and a couple of MIDI leads.\u00a0 As the interface may have female connectors built in, and the Tenori cable has female connectors too, you need the short midi cables to join them.<\/p>\r\n<p>I got my interface and cables from Maplins.co.uk, but there are plenty others out there.<\/p>\r\n<p>Plug the interface into your computer.<\/p>\r\n<p>Connect the MIDI OUT of your interface to MIDI IN of the Tenori-on.<\/p>\r\n<p>Connect the MIDI OUT from your Tenori-on to the MIDI IN of your interface.<\/p>\r\n<p>That\u2019s it. You are ready to send some messages.<\/p>\r\n<\/div>\r\n<div id=\"hexadecimal\" class=\"hide\">\r\n<p><strong>The basics of hexadecimal<\/strong><\/p>\r\n<p>You\u2019ll be more comfortable with the code if you know hexadecimal coding. Here are some basics&#8230;<\/p>\r\n<p>Zero \u00a0\u00a0 = 00<\/p>\r\n<p>one\u00a0 \u00a0\u00a0 = 01<\/p>\r\n<p>two\u00a0 \u00a0\u00a0\u00a0 = 02<\/p>\r\n<p>etc.<\/p>\r\n<p>ten\u00a0 \u00a0\u00a0\u00a0 = 0A<\/p>\r\n<p>eleven = 0B<\/p>\r\n<p>etc.<\/p>\r\n<p>fifteen = 0F<\/p>\r\n<p>10 in Hex = 1 x 16\u00a0 = 16 in decimal<\/p>\r\n<p>40 in Hex = 4 x 16\u00a0 = 64 in decimal<\/p>\r\n<p>F0 in Hex = 15 x 16 = 240 in decimal<\/p>\r\n<p>FF in Hex = 15 x 16 + 15 = 255 in decimal<\/p>\r\n<p>Need more clues? Probably easiest to Google it. I\u2019ll probably just repeat what is out there already. For now that\u2019s probably enough.<\/p>\r\n<\/div>\r\n<div id=\"codes\" class=\"hide\">\r\n<p><strong>Some useful codes to send<\/strong><\/p>\r\n<p>To control the Tenori-on from a computer you first need to send a signal to the Tenori-on to put it into <strong>Remote Control Mode<\/strong>. You can do this by sending the code below to the midi IN on the Tenori-on.<\/p>\r\n<p><strong>Enter remote control:<\/strong>\u00a0\u00a0 F0 43 73 01 33 01 00 00\u00a0 <strong>02<\/strong> 00 00 00 00 F7<\/p>\r\n<p>If it\u2019s the first time you\u2019ve seen this type of message it can be a bit off-putting but much of it is the same in each message. It\u2019s created like this so the Tenori-on can distinguish messages targeted at it from other MIDI messages targeted at other devices that are linked in the same MIDI chain.<\/p>\r\n<p>The code is basically saying<\/p>\r\n<p>SysEx message coming up (F0)<\/p>\r\n<p>&#8230;for a Yamaha device (43)<\/p>\r\n<p>&#8230;with this device ID (73)<\/p>\r\n<p>&#8230;with this model ID (01)<\/p>\r\n<p>&#8230;with this sub ID 1 (33)<\/p>\r\n<p>&#8230;with this sub ID 2 (01)<\/p>\r\n<p>\u00a0[Then the message in 6 bytes ]<\/p>\r\n<p>&#8230;checksum, which is number calculated to enable the device to check the message has got through without the data being corrupted. In this case it&#8217;s ignored (set to 00), which gives a slight improvement in responsiveness but can mean that faulty messages can get through.<\/p>\r\n<p>&#8230; SysEx message ends (F7)<\/p>\r\n<p>So most of the message code is identical each time. I\u2019ve highlighted the bits you need to pay special attention to in bold.<\/p>\r\n<p>Send this message to get it out of remote control mode&#8230;<\/p>\r\n<p><strong>Exit remote control:<\/strong>\u00a0 F0 43 73 01 33 01 00 00\u00a0 <strong>00<\/strong> 00 00 00 00 F7<\/p>\r\n<p>&#8230;if you goof, and it seems locked in Remote mode, you could switch the Tenori-on off and on again.<\/p>\r\n<p>To select a particular Block send these SysEx messages&#8230; (remember to put it into Remote Control mode first by sending the code above)<\/p>\r\n<p><strong>Block 1:<\/strong>\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>00<\/strong> 00 00 00 00 F7<\/p>\r\n<p><strong>Block 2 : <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>01 <\/strong>00 00 00 00 F7<\/p>\r\n<p><strong>Block 3:\u00a0 <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>02 <\/strong>00 00 00 00 F7<\/p>\r\n<p><strong>Block 4:\u00a0 <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>03 <\/strong>00 00 00 00 F7<\/p>\r\n<p><strong>Block 5:\u00a0 <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>04 <\/strong>00 00 00 00 F7<\/p>\r\n<p>etc.<\/p>\r\n<p><strong>Block 10: <\/strong>\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>09 <\/strong>00 00 00 00 F7<\/p>\r\n<p><strong>Block 11: <\/strong>\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>0A <\/strong>00 00 00 00 F7<\/p>\r\n<p>etc.<\/p>\r\n<p><strong>Block 16:<\/strong>\u00a0 \u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0F\u00a0 <strong>0F <\/strong>00 00 00 00 F7<\/p>\r\n<p>..you can see that the 10th byte is the only one that changes each time here ..and that the system regards Block 1 as zero (00) and Block 16 counts as number 15 (0F).<\/p>\r\n<p>Other useful ones include&#8230;<\/p>\r\n<p><strong>Play:<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 08\u00a0 <strong>01<\/strong> 00 00 00 00 F7<\/p>\r\n<p><strong>Pause:<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 08\u00a0 <strong>00<\/strong> 00 00 00 00 F7<\/p>\r\n<p>&nbsp;<\/p>\r\n<p><strong>Turn volume to 0: <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0C\u00a0 00 00 <strong>00<\/strong> 00 00 F7<\/p>\r\n<p><strong>Turn volume to 64 (half):<\/strong> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0C\u00a0 00 00 <strong>40<\/strong> 00 00 F7<\/p>\r\n<p><strong>Turn volume to 127 (full): <\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0C\u00a0 00 00 <strong>7F<\/strong> 00 00 F7<\/p>\r\n<p>&nbsp;<\/p>\r\n<p><strong>Reverb set to 0 (off):<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0C\u00a0 0B 00 <strong>00<\/strong> 00 00 F7<\/p>\r\n<p><strong>Reverb on 127 (full):<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 F0 43 73 01 33 01 00 0C\u00a0 0B 00 <strong>7F<\/strong> 00 00 F7<\/p>\r\n<p>There are others that can be tried and these are detailed in the firmware instructions you can download from Yamaha. They are at the end of the pdf booklet in a table.<\/p>\r\n<p>When you have finished your explorations, remember to Exit the remote control by sending:<\/p>\r\n<p><strong>Exit remote control:<\/strong>\u00a0 F0 43 73 01 33 01 00 00\u00a0 <strong>00<\/strong> 00 00 00 00 F7<\/p>\r\n<\/div>\r\n<div id=\"limitations\" class=\"hide\">\r\n<p><strong>Limitations<\/strong><\/p>\r\n<p><strong>SysEx <\/strong>messages are large (14 bytes) compared to <strong>note <\/strong>messages or <strong>patch<\/strong> select messages&#8230;. and MIDI is slow, so in my experience messages can get tangled if you send several of them in rapid succession.<\/p>\r\n<p>Regular MIDI control pedals, that you might use to select guitar effects in a rack unit for example, are designed to send <strong>Patch<\/strong> select messages that are shorter than <strong>SysEx<\/strong> messages. They won\u2019t do the job needed here.<\/p>\r\n<p>There is a way. I\u2019ve done it &#8230; and I\u2019ll put some videos on YouTube to show it in action &#8230;but it cost me more than the Tenori-on did and it involved re-chipping pedals.<\/p>\r\n<p>So before I set anyone on wild-goose chases, and recommend anything unreliable, I need to work on it a bit more, and try and do it in a more relaxed way. Hot and flustered is not an attractive look on stage!<\/p>\r\n<\/div>\r\n","protected":false},"excerpt":{"rendered":"<p>Going further Just a disclaimer before we start for all those legal-eagles I\u2019ve tried this stuff and it works fine. I\u2019ve done my best to give you accurate information but if your Tenori dies as a result of your experiments don\u2019t blame me! Sorry! Ok, having got that out of the way, this section \u00a0is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-15","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/15","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=15"}],"version-history":[{"count":12,"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/15\/revisions"}],"predecessor-version":[{"id":172,"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/15\/revisions\/172"}],"wp:attachment":[{"href":"https:\/\/virtuallyeverybody.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=15"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}