<div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">Lloyd,<br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">OK attached is the modified script to use the USB FOB for control. You now have the option of Pi GPIO using the bcd_control.sh script or the FOB using bcd_control_usb.sh  script.  I am attaching the later.</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">Here is a sample of the output -</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">./bcd_control_usb.sh 1<br>Entered Channel 1<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO1=1"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO2=0"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO4=0"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO5=0"<br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">./bcd_control_usb.sh 5<br>Entered Channel 5<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO1=1"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO2=0"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO4=1"<br>Executing - /bin/asterisk -rx "rpt cmd  cop 61 GPIO5=0"<br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">Note - you MUST initialize these bits in /etc/asterisk/simpleusb.conf  like this in the stanza for the USB you are using and restart or reboot -</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">gpio1=out0 ; in, out0 or out1<br>gpio2=out0<br>gpio4=out0<br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">gpio5=out0</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">See the DMK-URI or whatever CM119x FOB you are using for bit pin outs.<br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">This is then sent to Asterisk to perform the action. I have tested that this does control the bits but not as a package so you need to test. Once this is proven I will probably put both of these scripts out as a general update for all and also do a howto on it.</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small">Please get back to me with how you make out.</div><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><br clear="all"></div><div><div class="m_1078846728380638679gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div><b><font size="4">73 Doug<br></font></b></div><b><font size="4">WA3DSP<br></font></b></div><b><font size="4"><a href="http://www.crompton.com/hamradio" target="_blank">http://www.crompton.com/<wbr>hamradio</a><br></font></b></div></div></div>
</div>
<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 16, 2018 at 8:28 PM, Lloyd Duck <span dir="ltr"><<a href="mailto:lduck@me.com" target="_blank">lduck@me.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div link="blue" vlink="purple" lang="EN-US"><div class="m_4622968891799694323WordSection1"><p class="MsoNormal">Oh ok that’s why it’s now changing the USB FOB bits. Thank you..<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Yes the FOB I’m using is a CM119.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Do you have any guidance how to modify the script to control the FOB I/O bits? I’m lost on that step. <u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Lloyd Duck<u></u><u></u></p><p class="MsoNormal">W5LND<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><b>From:</b> Doug Crompton [mailto:<a href="mailto:wa3dsp@gmail.com" target="_blank">wa3dsp@gmail.com</a>] <br><b>Sent:</b> Tuesday, January 16, 2018 7:09 PM<br><b>To:</b> Lloyd Duck <<a href="mailto:lduck@me.com" target="_blank">lduck@me.com</a>><br><b>Subject:</b> Re: [arm-allstar] HamVoIP I/O support - What is Best Current Practice for implementing I/O?<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">This script changes the Pi GPIO bits NOT the USB FOB bits. The bits and pin numbers on the Pi GPIO are shown. The GPIO readall is a visual monitor of those bits. The Pi bits chosen are the recommended ones to use but that can be changed in the script.  If you want to control the FOB I/O bits first of all you need a CM119x FOB chip as the CM108 does not have enough bits. You also need to modify the script to control the FOB I/O bits and not the Pi I/O bits. Either would work. The Pi GPIO might be more reliable and more transportable as if the FOB was changed out it would have to be both a CM119x and have the bits brought out.<u></u><u></u></span></p></div><div><div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><br clear="all"><u></u><u></u></span></p></div><div><div><div><div><div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif">73 Doug</span></b><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><u></u><u></u></span></p></div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif">WA3DSP</span></b><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><u></u><u></u></span></p></div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif"><a href="http://www.crompton.com/hamradio" target="_blank">http://www.crompton.com/<wbr>hamradio</a></span></b><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><u></u><u></u></span></p></div></div></div></div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><u></u> <u></u></span></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">On Tue, Jan 16, 2018 at 7:37 PM, Lloyd Duck <<a href="mailto:lduck@me.com" target="_blank">lduck@me.com</a>> wrote:<u></u><u></u></p><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in"><div><div><p class="MsoNormal">Doug, <u></u><u></u></p><p class="MsoNormal">I wasn’t able to get your script to work, any idea what I may be doing work?<u></u><u></u></p><p class="MsoNormal"><img style="width:3.4687in;height:1.1979in" id="m_4622968891799694323m_-7681944705443903042Picture_x0020_1" src="cid:image001.png@01D38F00.2EDB43D0" width="333" border="0" height="115"><u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"><img style="width:3.1145in;height:.8333in" id="m_4622968891799694323m_-7681944705443903042Picture_x0020_2" src="cid:image002.png@01D38F00.2EDB43D0" width="299" border="0" height="80"><u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"><b>From:</b> arm-allstar [mailto:<a href="mailto:arm-allstar-bounces@hamvoip.org" target="_blank">arm-allstar-bounces@<wbr>hamvoip.org</a>] <b>On Behalf Of </b>"Doug Crompton via arm-allstar"<br><b>Sent:</b> Friday, January 12, 2018 11:50 AM<br><b>To:</b> ARM Allstar <<a href="mailto:arm-allstar@hamvoip.org" target="_blank">arm-allstar@hamvoip.org</a>><br><b>Cc:</b> Doug Crompton <<a href="mailto:wa3dsp@gmail.com" target="_blank">wa3dsp@gmail.com</a>><br><b>Subject:</b> Re: [arm-allstar] HamVoIP I/O support - What is Best Current Practice for implementing I/O?<u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">Randy,</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> Attached is the bcd_control.sh script. It controls 16 channels or 4 bits. It has a strobe on a 5th bit that can be ignore if not needed. Here is and example running it at the linux prompt -</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">./bcd_control.sh 2<br>Entered Channel 2<br>Channel 2 written to BCD - 0010</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">and just a portion of a 'gpio readall' showing the bits</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> |   5 |  21 | GPIO.21 |  OUT | 0 | 29 <br> |   6 |  22 | GPIO.22 |  OUT | 1 | 31 <br> |  13|  23 | GPIO.23 |  OUT | 0 | 33<br> |  19|  24 | GPIO.24 |  OUT | 0 | 35<br> |  26|  25 | GPIO.25 |  OUT | 0 | 37</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">To control from Allstar here is one way to do it. Add to the functions stanza, assumes the script is in /etc/asterisk/local. Make sure the script is executable - chmod 750 bcd_control.sh. Run it manually as above to confirm. You only need to enter functions for as many channels as you have. In your case 3 bits or 8 channels. The script was not written for a Motorola but it should work fine.</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">801=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 1</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">802=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 2</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">803=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 3<br>804=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 4</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">805=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 5<br>806=cmd,/etc/asterisk/local/<wbr>bcd_control.<a href="https://maps.google.com/?q=sh+6+807&entry=gmail&source=g" target="_blank">sh 6</a><br><a href="https://maps.google.com/?q=sh+6+807&entry=gmail&source=g" target="_blank">807</a>=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 7<br>808=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 8</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">809=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 9<br>810=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 10<br>811=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 11<br>812=cmd,/etc/asterisk/local/<wbr>bcd_control.sh 12</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">etc....</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">Another way to do this is use the autopatch in command mode. Then you just need one line in rpt.conf  and a custom extensions.conf stanza. See the howto on the <a href="http://hamvoip.org" target="_blank">hamvoip.org</a> web page.</span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><a href="https://www.hamvoip.org/Allstar_extended_functions_using_autopatch.pdf" target="_blank">https://www.hamvoip.org/<wbr>Allstar_extended_functions_<wbr>using_autopatch.pdf</a></span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif">Again - VERY IMPORTANT! The Pi is 3V GPIO logic. Use diodes pointed towards the radio on each line. You may possibly need to use pullups on the radio side of the diode if the radio does not supply them. The radio lines probably float high. If they do that won't be necessary.. You also need a ground connection between the radio and the Pi. This could be Pi pin 37 or any defined 0V pin.</span><u></u><u></u></p></div><div><div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"><br clear="all"></span><u></u><u></u></p></div><div><div><div><div><div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif">73 Doug</span></b><u></u><u></u></p></div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif">WA3DSP</span></b><u></u><u></u></p></div><p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Tahoma",sans-serif"><a href="http://www.crompton.com/hamradio" target="_blank">http://www.crompton.com/<wbr>hamradio</a></span></b><u></u><u></u></p></div></div></div></div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div><div><p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Tahoma",sans-serif"> </span><u></u><u></u></p></div></div><div><p class="MsoNormal"> <u></u><u></u></p><div><p class="MsoNormal">On Fri, Jan 12, 2018 at 2:53 AM, "Randy Neals via arm-allstar" <<a href="mailto:arm-allstar@hamvoip.org" target="_blank">arm-allstar@hamvoip.org</a>> wrote:<u></u><u></u></p><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt"><p class="MsoNormal">Hi,<br><br>What is the best current practice for implementing I/O on a Raspberry Pi to<br>control external things.<br>In this case, remote channel selection on a VHF remote base, a radio with 8<br>channels and having external control lines.<br><br>From looking through the list archives, I see references to using an<br>Arduino Nano, and at an earlier time, using a USB I/O board from SparkFun,<br>and of course using the lines on the RPi itself.<br><br>Anticipated questions...<br><br>Q. What Am I trying To Do?<br>A. Control channel select lines on a VHF remote base station.<br><br>Q. What format/How many lines?<br>A. 3 logic control lines. The lines are normally pulled up to +5V by the<br>radio.<br>     BCD format with the lines having binary weighting of 4, 2, and 1<br>respectively.<br>     High = weighted value / Low = zero value.<br><br>Q. What audio interface will I use?<br>A. Simple USB, likely DMK URI. (But I could use a USB FOB, or other<br>interface if there is one with I/O)<br><br>Thanks,<br>Randy<br>W3RWN<br>______________________________<wbr>_________________<br><br>arm-allstar mailing list<br><a href="mailto:arm-allstar@hamvoip.org" target="_blank">arm-allstar@hamvoip.org</a><br><a href="http://lists.hamvoip.org/cgi-bin/mailman/listinfo/arm-allstar" target="_blank">http://lists.hamvoip.org/cgi-<wbr>bin/mailman/listinfo/arm-<wbr>allstar</a><br><br>Visit the BBB and RPi2/3 web page - <a href="http://hamvoip.org" target="_blank">http://hamvoip.org</a><u></u><u></u></p></blockquote></div><p class="MsoNormal"> <u></u><u></u></p></div></div></div></blockquote></div><p class="MsoNormal"><u></u> <u></u></p></div></div></div></blockquote></div><br></div>