<h1>Welcome</h1>
<p>Welcome to the page of the L1V3 B0X Web Editor (Pronounced <strong>/laɪv bɑks/</strong>)</p>
<h2>Introduction</h2>
<p>As a developer turned noob electronic engineer, I have decided to create a MIDI device that will enhance my ability to customize the complex MIDI chain in my setup.<br />
So i present to you : The <strong>L1V3 B0X</strong> (or Live Box if you don't read <a href="https://en.wikipedia.org/wiki/Leet">Leet</a> ;-) )</p>
<p><img src="/img/docs/b0xfull.jpg" alt="" /></p>
<p>This project that I started in 2019 is divided into two parts:</p>
<ul>
<li>the piece of gear that you can see in the picture above</li>
<li>the MIDI web editor that you are currently using.</li>
</ul>
<p>In fact, you don't even need to own the hardware version of this box to use this website. This digital version functions exactly like the hardware one.</p>
<h2>Simple principle, high power</h2>
<p>The purpose of this box is to detect incoming MIDI messages from its 5 inputs, treat them with programs and rules that you can customize, and then send the processed messages to the 5 outputs.</p>
<p>"Yeah, right... thanks dude... you just invented a merger or filters like we are used to get since the MIDI protocol was invented"</p>
<p><img src="/img/docs/soyouinventedamidimatrix.jpg" alt="" /></p>
<p>To that i would reply : "No, not really man"</p>
<p>This little thingy is seriously cool, and the best part is that its capabilities are only limited by your creativity and imagination. The trick is, you can use LUA programming language to write your own code and customize the device to do exactly what you need.</p>
<p>It's a lot of fun to tinker with and see what kind of amazing things you can come up with!</p>
<pre><code class="language-lua">if (msg.type == 'cc' and msg.d1 == 11) then
local value = msg.d2 -- The received MIDI control change value
local new = 0 -- the new value i will send
new = MIDI.map(value,0,127,127,0) -- reversing whatever value that was sent
MIDI.send(1,"cc",msg.d1,new,msg.channel) -- sending this transformed message to the first output
end</code></pre>
<p>In this example, we invert the value of an incoming control change message having the code 11, and send the result to the 1st output of the box.</p>
<h2>Plug and play (litteraly)</h2>
<p>This thing is very easy to configure and use. I'll explain to you everything in the <a href="/b0x/docs/editor-basics/getting-started">Getting Started</a> section</p>
<p> <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</p>