<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[ChipMusic.org - MIDIcloro for Raspberry Pi]]></title>
	<link rel="self" href="https://chipmusic.org:80/forums/feed/atom/topic/17404/"/>
	<updated>2016-10-03T21:39:24Z</updated>
	<generator>PunBB</generator>
	<id>https://chipmusic.org/forums/topic/17404/midicloro-for-raspberry-pi/</id>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/248564/#p248564"/>
			<content type="html"><![CDATA[<p>Thanks for the kind words! Did you try the software? Let me know if you run into any problems setting it up.</p><p>I&#039;ve tried fiddling with the latencies but it didnt affect the dropped notes.</p><p>I&#039;d also rather have one tiny box instead of two, but a positive thing is that the RPi adds a few features like letting you hook up a USB keyboard along with the GB.</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-10-03T21:39:24Z</updated>
			<id>https://chipmusic.org/forums/post/248564/#p248564</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/247465/#p247465"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>I wanted MIDI sequencing from the GB to be super stable. My goal is to use the GB as my main sequencer. I had noticed some occasional note dropouts, about 1 note every 30-50 notes was dropped). This is not a big problem at all, but I still wanted to try and make it better.</p><p>I moved parts of the note handling from the Arduinoboy to the Raspberry Pi and it reduced the dropped notes to almost 0. The raspberry now handles the sending of note-off messages.</p><p>It is probably possible to solve this on the Arduino itself, and I think that would be a better solution.</p></blockquote></div><p>This is very similar to my setup and I&#039;ve had this same issue with dropped/wrong notes at about the same rate. I&#039;ve used two different arduinoboys (a scienceguy and one of Lowtoy&#039;s kits) with the latest aboy firmware and LSDJ version - same result. I was able to reduce the rate further by setting my midi instrument to only listen on one channel instead of channel 0 (all channels)</p><p>From what I understand it is possible to tweak the latency settings in the arduinoboy maxpat to reduce dropped notes, but in doing so you can increase the risk of a crash/freeze.</p><p>In any case, excited to try this out - Thanks Ledfyr. Though honestly I wish there was a solution on the arduinoboy itself that didnt involve adding another tiny hardware box to my setup.</p>]]></content>
			<author>
				<name><![CDATA[Zen Albatross]]></name>
				<uri>https://chipmusic.org/Zen+Albatross</uri>
			</author>
			<updated>2016-08-29T02:46:35Z</updated>
			<id>https://chipmusic.org/forums/post/247465/#p247465</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/246262/#p246262"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>cyberic wrote:</cite><blockquote><div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>I moved parts of the note handling from the Arduinoboy to the Raspberry Pi and it reduced the dropped notes to almost 0. The raspberry now handles the sending of note-off messages.</p></blockquote></div><p>according to <a href="https://github.com/ledfyr/lsdj_mo/blob/master/README" target="_blank">https://github.com/ledfyr/lsdj_mo/blob/master/README</a><br />you say that &quot;MIDI notes are often &quot;missed&quot;. The Arduino seems more stable, or there are bugs in my code <img src="https://chipmusic.org/forums/img/smilies/sad.png" width="15" height="15" alt="sad" />&quot;<br />is it more stable now?</p></blockquote></div><p>That is my unfinished repo for using the Raspberry&#039;s GPIO port. In that case almost half of the notes are missed. I kind of paused this, dont know how to continue right now.</p><p>The fix I talk about in the original post (mono mode) requires a special Arduinoboy version + a Raspberry Pi with MIDIcloro. See info in the link in the original post.</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-07-17T16:16:44Z</updated>
			<id>https://chipmusic.org/forums/post/246262/#p246262</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/246261/#p246261"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>I moved parts of the note handling from the Arduinoboy to the Raspberry Pi and it reduced the dropped notes to almost 0. The raspberry now handles the sending of note-off messages.</p></blockquote></div><p>according to <a href="https://github.com/ledfyr/lsdj_mo/blob/master/README" target="_blank">https://github.com/ledfyr/lsdj_mo/blob/master/README</a><br />you say that &quot;MIDI notes are often &quot;missed&quot;. The Arduino seems more stable, or there are bugs in my code <img src="https://chipmusic.org/forums/img/smilies/sad.png" width="15" height="15" alt="sad" />&quot;<br />is it more stable now?</p>]]></content>
			<author>
				<name><![CDATA[cyberic]]></name>
				<uri>https://chipmusic.org/cyberic</uri>
			</author>
			<updated>2016-07-17T15:46:51Z</updated>
			<id>https://chipmusic.org/forums/post/246261/#p246261</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/246247/#p246247"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>trash80 wrote:</cite><blockquote><p>Hey there, neat project.</p><div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>* Mono mode - improves/solves the problem with lost or dropped MIDI notes from the Gameboy (use with custom Arduinoboy software, only tested with GBC, see README).</p></blockquote></div><p>This really shouldn&#039;t be a problem, or at least solvable outside of Arduinoboy, it&#039;s actually a pretty lightweight task to handle the data stream. The issue may come from the Gameboy itself, or that is the code on the GB, since it is kind of a hack. What version of LSDJ were you using? I am wondering if this was a wrapping buffer issue that was solve awhile back.</p><p>Let me know if you need any clarification on my end, feel free to email me.</p></blockquote></div><p>Thanks for all the info and advice in the mail conversation!</p><p>I thought I should clarify the problem with note dropouts some more in this thread. I cleaned the original post a bit and put some info about note dropouts below:</p><p>I wanted MIDI sequencing from the GB to be super stable. My goal is to use the GB as my main sequencer. I had noticed some occasional note dropouts, about 1 note every 30-50 notes was dropped). This is not a big problem at all, but I still wanted to try and make it better.</p><p>I moved parts of the note handling from the Arduinoboy to the Raspberry Pi and it reduced the dropped notes to almost 0. The raspberry now handles the sending of note-off messages.</p><p>It is probably possible to solve this on the Arduino itself, and I think that would be a better solution.</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-07-16T21:08:41Z</updated>
			<id>https://chipmusic.org/forums/post/246247/#p246247</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/246186/#p246186"/>
			<content type="html"><![CDATA[<p>Hey there, neat project.</p><div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>* Mono mode - improves/solves the problem with lost or dropped MIDI notes from the Gameboy (use with custom Arduinoboy software, only tested with GBC, see README).</p></blockquote></div><p>This really shouldn&#039;t be a problem, or at least solvable outside of Arduinoboy, it&#039;s actually a pretty lightweight task to handle the data stream. The issue may come from the Gameboy itself, or that is the code on the GB, since it is kind of a hack. What version of LSDJ were you using? I am wondering if this was a wrapping buffer issue that was solve awhile back.</p><p>Let me know if you need any clarification on my end, feel free to email me.</p>]]></content>
			<author>
				<name><![CDATA[Trash80]]></name>
				<uri>https://chipmusic.org/Trash80</uri>
			</author>
			<updated>2016-07-14T08:29:38Z</updated>
			<id>https://chipmusic.org/forums/post/246186/#p246186</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/245507/#p245507"/>
			<content type="html"><![CDATA[<p>Thanks for the advice. I did mail with zii.hrs who is the author of PiBoy and he did help me by spotting a bug, and we talked a bit about the problem. But we couldn&#039;t solve it.</p><p>I suspect sending sync signals out of the RPi might not be as timing critical as reading bytes from the GB (LSDJ MIDI out mode).</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-06-27T12:02:58Z</updated>
			<id>https://chipmusic.org/forums/post/245507/#p245507</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/245503/#p245503"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>Regarding connecting the GB to GPIO directly:<br />I got MIDI out mode working this way. Sadly it&#039;s very unstable - a lot of notes are dropped. I&#039;ve given up on this for now, thinking that the RPi is not well suited for this (though I might be wrong). Possible solutions could be to try with a RPi 3 and/or try to optimize the real time build (requires RT kernel).</p><p>Here is the code: <a href="https://github.com/ledfyr/lsdj_mo" target="_blank">https://github.com/ledfyr/lsdj_mo</a></p></blockquote></div><p>There is also: <a href="https://github.com/BarrensZeppelin/PiBoy" target="_blank">https://github.com/BarrensZeppelin/PiBoy</a><br />The dev told me that:<br />&quot;Synchronizing the GameBoy in Slave mode with a MIDI master works.<br />You can follow a general guide on how to wire a MIDI input to the serial connection of the Raspberry Pi.&quot;</p><br /><p>I didn&#039;t test it</p>]]></content>
			<author>
				<name><![CDATA[cyberic]]></name>
				<uri>https://chipmusic.org/cyberic</uri>
			</author>
			<updated>2016-06-27T08:59:21Z</updated>
			<id>https://chipmusic.org/forums/post/245503/#p245503</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/245502/#p245502"/>
			<content type="html"><![CDATA[<p>Regarding connecting the GB to GPIO directly:<br />I got MIDI out mode working this way. Sadly it&#039;s very unstable - a lot of notes are dropped. I&#039;ve given up on this for now, thinking that the RPi is not well suited for this (though I might be wrong). Possible solutions could be to try with a RPi 3 and/or try to optimize the real time build (requires RT kernel).</p><p>Here is the code: <a href="https://github.com/ledfyr/lsdj_mo" target="_blank">https://github.com/ledfyr/lsdj_mo</a></p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-06-27T08:47:09Z</updated>
			<id>https://chipmusic.org/forums/post/245502/#p245502</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/245486/#p245486"/>
			<content type="html"><![CDATA[<p>New functions are added. See updated original post and README on github!</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-06-26T22:18:35Z</updated>
			<id>https://chipmusic.org/forums/post/245486/#p245486</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/238875/#p238875"/>
			<content type="html"><![CDATA[<p>This sounds super useful. Color me interested,</p>]]></content>
			<author>
				<name><![CDATA[The Laohu]]></name>
				<uri>https://chipmusic.org/The+Laohu</uri>
			</author>
			<updated>2016-01-26T14:47:26Z</updated>
			<id>https://chipmusic.org/forums/post/238875/#p238875</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/238869/#p238869"/>
			<content type="html"><![CDATA[<p>I mixed up the master sync and MIDI out mode. You cannot send CC in master sync mode, so my idea will not work.<br />There is also no good way to handle it in MIDI out mode. CC values can only be sent in steps of 8, which makes it hard to write your own song positions manually in LSDJ.<br />Tell me if you come up with a solution for this.</p><p>I&#039;ve tested the gb-gpio a few times but havent gotten it working properly. Some notes are missed in MIDI out mode for instance. The latency will hopefully be ok, but the Arduino might be more reliable since it runs without an OS.</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-01-26T09:51:56Z</updated>
			<id>https://chipmusic.org/forums/post/238869/#p238869</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/238830/#p238830"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>@cyberic: Ok, then an idea is to translate the note to song position in midicloro. A CC message can be put at the start of each row which will make midicloro send a new song position message incremented by 1. On the first row of each block, another CC is used to reset the position back to the note value again to handle looping.<br />This means you have to start the sequencer at the first row of your blocks.<br />Would this work for your use case?</p></blockquote></div><p>Yes ledfyr, it would work.<br />But it would be great to be able to loop even inside the same block.<br />And I don&#039;t know how it could handle tempo changes.... maybe by storing the song position for each row</p><p>GB link &lt;--&gt; GPIO communication would be great! what kind of latency do you expect?</p>]]></content>
			<author>
				<name><![CDATA[cyberic]]></name>
				<uri>https://chipmusic.org/cyberic</uri>
			</author>
			<updated>2016-01-25T14:46:31Z</updated>
			<id>https://chipmusic.org/forums/post/238830/#p238830</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/238786/#p238786"/>
			<content type="html"><![CDATA[<p>@cyberic: Ok, then an idea is to translate the note to song position in midicloro. A CC message can be put at the start of each row which will make midicloro send a new song position message incremented by 1. On the first row of each block, another CC is used to reset the position back to the note value again to handle looping.<br />This means you have to start the sequencer at the first row of your blocks.<br />Would this work for your use case?</p><p>Currently I want to focus on getting the GB link port communication with the GPIO port working, and I also have some other ideas for the chord settings. So I can&#039;t really say when this function might be available.</p><p>@unexpectedbow: Thanks!</p>]]></content>
			<author>
				<name><![CDATA[Ledfyr]]></name>
				<uri>https://chipmusic.org/Ledfyr</uri>
			</author>
			<updated>2016-01-24T15:16:07Z</updated>
			<id>https://chipmusic.org/forums/post/238786/#p238786</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: MIDIcloro for Raspberry Pi]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/238646/#p238646"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ledfyr wrote:</cite><blockquote><p>Thanks for all the positive comments. I&#039;m glad to hear this can be of use for someone other than myself.</p><br /><p>@cyberic: I think what you want is possible. From what I&#039;ve read on the Arduinoboy GitHub page it seems like the LSDJ Master sync mode sends the song row position as a MIDI note message.<br />This note can probably be changed to a Song Position Pointer message. It feels like the best solution is to modify the Arduinoboy code to achieve this.</p><p>@unexpectedbow: Sounds like a nice setup! May I ask which USB-MIDI adaptor you use? (I will add it to the list of supported devices).</p></blockquote></div><p>Just some cheap rubbish!</p><p><a href="http://www.ebay.co.uk/itm/262043252427?_trksid=p2057872.m2749.l2649&amp;ssPageName=STRK%3AMEBIDX%3AIT" target="_blank">http://www.ebay.co.uk/itm/262043252427? &#133; EBIDX%3AIT</a></p>]]></content>
			<author>
				<name><![CDATA[unexpectedbowtie]]></name>
				<uri>https://chipmusic.org/unexpectedbowtie</uri>
			</author>
			<updated>2016-01-21T12:32:24Z</updated>
			<id>https://chipmusic.org/forums/post/238646/#p238646</id>
		</entry>
</feed>
