<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{mso-style-priority:99;
mso-style-link:"Plain Text Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
span.PlainTextChar
{mso-style-name:"Plain Text Char";
mso-style-priority:99;
mso-style-link:"Plain Text";
font-family:"Consolas","serif";}
p.Textebrut, li.Textebrut, div.Textebrut
{mso-style-name:"Texte brut";
mso-style-link:"Texte brut Car";
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.TextebrutCar
{mso-style-name:"Texte brut Car";
mso-style-priority:99;
mso-style-link:"Texte brut";
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
span.EmailStyle21
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:windowtext;}
span.EmailStyle22
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">One possible problem is that the phototransistors turn on just based on light, and so may conduct in the reverse direction. Thus you may find lots of paths
to conduct some of the current through the selected transistor finding its way to ground and reducing the voltage output. Test the transistors and if this does occur you’ll need to add series diodes with each transistor.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Synth-diy [mailto:synth-diy-bounces@synth-diy.org]
<b>On Behalf Of </b>Jean-Pierre Desrochers<br>
<b>Sent:</b> 15 August 2022 20:00<br>
<b>To:</b> Synth-diy@synth-diy.org<br>
<b>Subject:</b> [sdiy] Reading IR phototransistors in a 8X8 matrix<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoPlainText"><span lang="EN-CA">I'm designing a piano Roll reader/player (yes antique paper piano rolls !)<br>
that will read holes on a scrolling paper and play the actual musical notes<br>
using MIDI standards..<br>
This has already been done in the past but with very few documentations left<br>
for DIYers like me.<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA">So.. I'm thinking of using IR (940nm) LEDs, phototransistors and aligned short optical fibers<br>
to read the actual scrolling holes. 90 phototransistors will be used as 'bit' readers.<br>
I would use IR because paper is mostly opaque to 940nm wavelength<br>
compared to visible light that could get through it.<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA">Because of that high quantity of PT’s to be read I was thinking of using<br>
rows/columns matrix of switches like keyboards in synths like this:<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA"><o:p> </o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA"><img width="498" height="497" id="Image_x0020_4" src="cid:image002.png@01D8B0E3.4048B080"><o:p></o:p></span></p>
<p class="MsoPlainText" style="margin-bottom:12.0pt"><span lang="EN-CA">But instead of switches like in this circuit I would use 2 pins phototransistors like this one:<br>
<img width="153" height="144" id="Image_x0020_5" src="cid:image003.png@01D8B0E3.4048B080"><o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA">The resistors could be around 10K and this configuration would use only 2 x 8 bits ports.<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA">But I was wondering about using PT’s in a matrix like that would bring glitches or noise<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-CA">In the CPU readings.. <br>
Has anybody used PT’s in such a circuit ?<o:p></o:p></span></p>
</div>
</body>
</html>