[App_rpt-users] Voice control options

William Franzin wfranzin at gmail.com
Sun Jan 6 23:11:09 UTC 2019


IRLP boards have been around for about 20 years and it's just a DTMF
decoder wired to the parallel port and interfacing for PTT, COS, PL etc.
You don't need anything fancy here. Anything that works with alsa audio in
Linux will work fine. Control the PTT using a script and your choice of
GPIO. I would run this outside of Asterisk (on the side) and then use it to
tell Asterisk which commands I want to execute. Asterisk audio required
transcoding. So there was zero hardware work required to add this to the
IRLP node. Same would apply anywhere you've got a way to control the PTT
output.

If you want to try something today use a Raspberry Pi or Linux desktop
(Ubuntu etc) and connect a USB headset up. You'll be able to speak and
detect. Because this doesn't require COS or PL detect its just listening
for the wakeword then listening to speech & executing commands. Just need
PTT output. An EchoLink USB adapter is probably the easiest way to do this
as the audio hardware is just a USB sound card and they also emulate a
serial port for transmitter/receiver interfacing. That would be just a few
lines of code needed to turn the serial lines on/off for PTT control.

When you're using a wakeword to activate any of these voice services it's
continuously listening so doesn't depend on COS or CTCSS. Dan VE4DRK and I
were talking about this and he suggested listening for signals without the
PL might be a nice way to keep the voice commands away from the audio path
when connected to links. Program the same repeater frequency twice into
your radio and one has a PL for normal repeater use and the other no PL.
Then wakeword still works and repeater keys up with PL encode and nobody
hears the voice commands at all, completely silent to links,



On Sun, Jan 6, 2019 at 4:42 PM petem001 <petem001 at gmail.com> wrote:

> Can I ask how you interfaced the audio from and to porcupine into the irlp
> node?
>
> I am not very aware of the irlp interface.
>
>
>
> Envoyé depuis mon téléphone intelligent Samsung Galaxy.
>
> -------- Message d'origine --------
> De : William Franzin <wfranzin at gmail.com>
> Date : 19-01-06 12:31 p.m. (GMT-05:00)
> À : Users of Asterisk app_rpt <app_rpt-users at lists.allstarlink.org>
> Objet : Re: [App_rpt-users] Voice control options
>
> Hi Pierre
>
> This was just a fresh IRLP install for testing and nothing more. Did the
> updates. Added the SDK examples and then a few lines changed for
> transmitter control. Anything with audio input and output should work fine,
> so could be an IRLP box with sound card, EchoLink USB adapter, DMK USB
> Radio Interface, NWDR UDRC/DRAWS, or transcoded input/output from AMBE. The
> commands back to the system are being done via IFTTT HTTPS webhook request
> right now and just a script that accepts authenticated commands.
>
> I think you'll find it's fairly easy to build this functionality into
> anything. All of the real work happens back in Google/Amazon's massive data
> centers and these smart speaker devices are really just voice terminals.
> They're just a small embedded platform like a Raspberry Pi with a
> microphone array and speaker(s). On the device they're running wakeword
> detection "Hey Google" | "Alexa" and then start streaming the audio back to
> the data center for processing. Depending on the product (speaker, TV,
> coffee maker) there could be code running there to handle the understood
> command(s).
>
> If you want to see some progress today, I'd start with
> https://github.com/Picovoice/Porcupine and get Porcupine up and running.
> It also comes with everything you need to get started including wakeword
> files for "bumblebee" and other words you won't hear on a repeater in
> common speech. Later you can generate your own custom wakeword files. When
> I started with Picovoice all my code did was understand a wakeword and
> respond with a beep tone over the air.
>
> There's quite the debate over Google/Internet services being tied to
> radio. I think the Picovoice Rhino is probably the best area to focus on
> for on-device repeater control. It includes the Porcupine library for
> wakeword detection so "OK Repeater" is possible and the intents (turn on
> the link etc) are all handled within the controller platform, no internet.
> That's probably where I'll focus my effort on - it will end up being a
> hybrid system where the repeater controller has basic commands and I can
> still say "OK Repeater, ask Google ..." and then we're using Google's web
> services as a secondary method.
>
> One of the first voice apps I've been working on is just a radio check.
> But rather than asking other people on a repeater "how does this radio
> sound" I can use a SDR on the repeater receiver and determine if the user
> requesting a check is on frequency, what kind of deviation, DTMF deviation,
> signal level in db and all that stuff you can do with a $10 RTL SDR.
> Getting those voice services up and running will open up a pile of new
> things you can do over the air with analog/digital radios.
>
> Best regards
> William
>
> On Sun, Jan 6, 2019 at 10:08 AM Pierre Martel <petem001 at gmail.com> wrote:
>
>> Thanks William for the feedback.
>>
>> I find your implementation on the IRLP controler to be a piece of art..
>> ;-)
>>
>> Can I ask you what method did you used for the irlp controler? was it the
>> original irlp software or did you used the irlp driver in app_rpt?
>>
>> did you implement a way to prevent the AI to respond to request sent by a
>> networked audio feed?
>>
>> I am hyper excited by this and cant wait to test this.
>>
>> Pierre
>> VE2PF
>>
>>
>>
>>
>>
>> Le dim. 6 janv. 2019 à 08:53, William Franzin <wfranzin at gmail.com> a
>> écrit :
>>
>>> Good morning,
>>>
>>> We're also keen AllStarLink/app_rpt users/experimenters here in Winnipeg
>>> and Dan mentioned a discussion about the work I did on here, so thought I'd
>>> fill in the blanks. Also joined this list.
>>>
>>> I started with Google Assistant and Amazon Alexa and really just wanted
>>> to control devices using voice, the "what's the weather" was just an added
>>> bonus, but all that requires internet.
>>>
>>> I also liked the speed of running the assistant code in real-time, as
>>> you speak that's actually a stream to Google/Amazon so the results you get
>>> are immediate vs rec/upload/download/play.
>>>
>>> For the majority of ham radio actual "needs" in voice control the
>>> Picovoice Rhino project speech-to-intent would do a great job. If you
>>> haven't check it out: https://github.com/Picovoice
>>>
>>> Also watch their video: https://www.youtube.com/watch?v=WadKhfLyqTQ
>>> which I think is exactly what we'd want from a ham radio setup. Wakework
>>> "Hey Repeater" "Turn on ..".
>>>
>>> All of that great capability runs entirely on the
>>> device/server/reflector, no internet or web service call to Google/Amazon
>>> is needed. And it produces this simple output too:
>>>
>>> {
>>>   "type": "espresso",
>>>   "size": "small",
>>>   "numberOfShots": "2",
>>>   "sugar": "a lot",
>>>   "milk": "some"
>>> }
>>>
>>>
>>> We should do this, my 2010 Ford Escape has had Microsoft Sync voice
>>> control and it's nothing new. Everything has voice control these days, and
>>> it actually works really well now.
>>>
>>> The only challenge in ham is we need to come up with some standard
>>> commands so if you're visiting here you know the repeater has this
>>> capability and how to work it.
>>>
>>> If anything I'm just glad the videos I posted a while back got this
>>> topic going again. Certainly not the first person to poke around with voice
>>> - it's just really easy now to implement this.
>>>
>>> Thanks to all the folks working on AllStarLink/app_rpt too. I just built
>>> a firmware image with AllStarLink for a Sierra Radio Systems CommServer
>>> board and it was apt-get-easy
>>> --let-me-drink-my-coffee-while-the-hard-work-gets-done ;)
>>>
>>> Thanks,
>>> William VE4VR
>>> _______________________________________________
>>> App_rpt-users mailing list
>>> App_rpt-users at lists.allstarlink.org
>>> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users
>>>
>>> To unsubscribe from this list please visit
>>> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users and
>>> scroll down to the bottom of the page. Enter your email address and press
>>> the "Unsubscribe or edit options button"
>>> You do not need a password to unsubscribe, you can do it via email
>>> confirmation. If you have trouble unsubscribing, please send a message to
>>> the list detailing the problem.
>>>
>> _______________________________________________
>> App_rpt-users mailing list
>> App_rpt-users at lists.allstarlink.org
>> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users
>>
>> To unsubscribe from this list please visit
>> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users and
>> scroll down to the bottom of the page. Enter your email address and press
>> the "Unsubscribe or edit options button"
>> You do not need a password to unsubscribe, you can do it via email
>> confirmation. If you have trouble unsubscribing, please send a message to
>> the list detailing the problem.
>>
> _______________________________________________
> App_rpt-users mailing list
> App_rpt-users at lists.allstarlink.org
> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users
>
> To unsubscribe from this list please visit
> http://lists.allstarlink.org/cgi-bin/mailman/listinfo/app_rpt-users and
> scroll down to the bottom of the page. Enter your email address and press
> the "Unsubscribe or edit options button"
> You do not need a password to unsubscribe, you can do it via email
> confirmation. If you have trouble unsubscribing, please send a message to
> the list detailing the problem.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.keekles.org/pipermail/app_rpt-users/attachments/20190106/ecf30ff2/attachment.html>


More information about the App_rpt-users mailing list