radiovozip
DESCRIPTION
Radio Voz IP. Radioaficionados . Asterisk.TRANSCRIPT
Alberto Sagredo Castro
RadioVozIP @albersag
@voipnovatos
www.voipnovatos.es
¿Por qúe Radio?❖ Es el primer sistema que el
hombre se inventó para comunicarse a largas distancias que no necesitaba de pájaros.
❖ Medio de comunicación rápido y sin retardos.
❖ El móvil no ha “matado” a la Radio pese a lo que cabría pensar.
❖ La Televisión tampoco ha podido con la radio.
www.voipnovatos.es
Ventajas de un sistema radio❖ No hacen falta “cables”.
❖ Podemos cubrir largas distancias.
❖ Costo menor que soluciones cableadas.
❖ Rápidos despliegues.
❖ Innato o adecuado a determinadas formas de trabajar en algunos sectores verticales.
❖ Terminales móviles y de costo más reducido que la estación base.
❖ Posibilidad de ampliar cobertura usando repetidores.
❖ Sistema Broadcast. Uno a muchos.
❖ Radioaficionados.
❖ Alta Autonomía de transceptores radio portátiles.
Desventajas de un sistema radio❖ Lo que transmitimos está en el “éter”.
❖ Cualquiera podría interceptar nuestras comunicaciones.
❖ Sensible a interferencias electromagnéticas.
❖ Sensibilidad al tema “ondas”.
❖ Sistemas propietarios o separados de otros sistemas de comunicación.
❖ Integración compleja con otros sistemas.
❖ Generalmente half duplex. Transmite, Escucha. PTT
❖ Espectro muy saturado.
❖ Bandas no libres generalmente. (Excepto PMR 446 Mhz)
❖ Tradicionalmente analógico.
Sistemas Radio Digitales❖ La digitalización llega también
al entorno radio, pero multitud de modulaciones : GMSK, TDMA, FDMA, OFDM, 4-FSK, …
❖ Multitud de estándares usados hoy en día: TETRA, P25, DPMR, DMR, DSTAR, NXDN, …
❖ Cuando pensemos en Voz IP no pensemos sólo en SIP. SIP es un protocolo más pero no es la “swiss army knife” para todo.
www.voipnovatos.es
Tendencias Radio Digital❖ El Hardware ya no es lo importante -> Software Defined Radio
❖ RTL-SDR (Proyecto opensource para sacar mucho jugo a un TDT USB de 10 euros)
❖ HackRF ( Kickstart de plataforma HW y SW hasta Gigahertzios! )
❖ DMR
❖ DSTAR usado por radioaficionados
❖ Hotspots DSTAR/DMR con AMBE 2200 / 3000 (DVMEGA)
Hotspots❖ Cuando no hay cobertura la
forma de conectarse a ella puede ser con un hotspot local.
❖ Hay varias alternativas , DVMEGA, DVAP, DVRPTR.
❖ Alternativa Barata e interesante. Puedo estar conectado a la red donde quiera siempre que tenga internet y alimentación .
❖ Imagenes para Raspberrypi de instalar y montar.
www.voipnovatos.es
DMR❖ Estándar del ETSI para radio personal digital.
❖ Evolución de los sistemas radio analógicos de toda la vida (No PMR).
❖ Mejora la eficiencia en el espectro (6.25 Khz frente a 12,5 Khz).
❖ La RDSI de la radio ( 2 comunicaciones donde antes una).
❖ Mayor S/N
❖ La TDTelización de la voz. O oyes o no oyes :)
❖ TDMA
❖ Encriptación. Protección de la información
❖ Mayor duración bateria.
❖ Distintos niveles:
❖ TIER 1 : dPMR (446 Mhz)
❖ TIER 2 : DMR (66- 960 Mhz) Lo habitual
❖ TIER 3 : Trunking. Full Duplex. Aplicaciones de Datos.
D-STAR❖ Digital Smart Technologies for Amateur Radio
❖ FDMA y GMSK.
❖ Protocolo promovido por la JARL (No tiene nada que ver con Chiquito de la Calzada)
❖ “Controlado” por un fabricante ICOM.
❖ Sistema consolidado (casí una década de funcionamiento)
❖ Red de interconexión mundial con Reflectores, Gateways, Repetidores.
❖ Proyectos Opensource para integrarse en la red G4KLX (Dstarrepeater, ircddbgateway)
❖ Transmisión de datos baja velocidad (1200 bps).
❖ Hardware open. DVRPTR, DVMEGA GMSK, Dutch Star y más…
Redes de Radio Voz IP❖ Los radioaficionados usan mayoritariamente una red denominada Echolink. Hay varios
Softwares opensource para conectarse a ella (Thelinkbox, SVXLINK, Asterisk). Es una red cerrada a solo indicativos legales de radioficionados. Solo voz.
❖ Existen otras redes sobre todo empleadas en ámbito americano como son Allstar, IRLP, EchoIRLP, en las que Asterisk es usado para interconexión. (Veremos luego como ).
❖ Red Dplus, ircddb
❖ DMR-SPAIN , DMR-MARC
❖ En el mundo “normal” quizá la red con más usuarios , digital y usada por los cuerpos de fuerza y seguridad del estado sea TETRAPOL. Red cerrada, cifrada, segura y cara.
❖ Muchos ayuntamientos se adhirieron a esta red pero el sobre coste de mantenimiento sólo de la infraestructura (> 60000 euros anuales) están haciendo migrar a sistemas DMR. (http://www.santapola.es/perfilcontratante/licitaciones/plan-e2/sum-2010-02-ptecnicas-criterios.pdf)
❖ La red que creeemos a nivel privado :)
Fabricantes❖ En el mundo DSTAR tenemos sólo a un fabricante (ICOM).
Recordemos que es una red de radioaficionados, no usable por radio profesional . Podemos convertir cualquier equipo a DSTAR con codecs AMBE y modems GMSK.
❖ En el mundo Profesional tenemos varios , Kendwood, Yaesu, Motorola (MOTOTRBO), Hytera.
❖ Motorola es el más empleado en entorno americano. Hytera (China) con sede en Europa (Alemania) quizá más para el mercado Europeo.
❖ Son “compatibles” entre sí. Es un estándar ETSI. Hay particularidades . El más compatible con estándar ETSI es Hytera.
Hamradio❖ Somos gente extraña que se dedica
a poner antenas en las azoteas para disgustar a los vecinos.
❖ Mentes inquietas que buscan comunicarse con ”marcianos”
❖ Les preocupa la ionización de las capas de la atmósfera.
❖ Profesionales que comparten un mismo hobbie.
❖ Mucha tradición en países grandes donde las redes de comunicaciones tardan en llegar.
www.voipnovatos.es
Integración❖ Si usamos un sistema “propietario” tiene sus APIs a las que
generalmente sólo tiene acceso un distribuidor del fabricante.
❖ Siempre tenemos a mano el “local loop” analógico con el que jugar.
❖ Los transceptores usados en base o repetidores suelen tener un puerto de “integración” con diferentes salidas que podemos usar.
Señales necesarias
❖ Si planteamos una integración necesitamos al menos las siguientes señales:
❖ Audio
❖ Micrófono
❖ Squelch
❖ PTT
Translación a VoIP
❖ No ofuscarse en usar SIP o IAX :) para todo.
❖ Tenemos muchas herramientas para transmitir audio sobre IP.
❖ Multicast, Unicast .
❖ Hay multitud de proyectos opensource que podemos usar . Por ejemplo MAST, SVXLINK, Asterisk(app_rpt, chan_oss,jack_audio..)
❖ Comentaba en la primera slide, que la radio es rápida, Multicast es un “MUST”.
Radio sin Asterisk❖ Asterisk esta muy bien como “conversor” de protocolos, pero carece de
algunas funcionalidades.
❖ Si tenemos alguna interfaz no compatible con app_rpt tenemos que ingeniarnoslas. (Signalink USB, Rigexpert).
❖ Dejar Asterisk que hable SIP y usar el interfaz Radio a SIP , Multicast, Unicast en un dispositivo -> Vocality
❖ Freeswitch
❖ HackRF (Futuro prometedor)
❖ SVXLINK
❖ IP DECT PTT (Propietario de Polycom)
Radio con Asterisk❖ Asterisk tiene soporte para Echolink (echolink.conf)
❖ Dispone de un app_rpt pero solo compatible con dos tipos de interfaces (CM108 (http://images.ohnosec.org/usbfob.pdf) , URI (http://dmkeng.com))
❖ Recomendable usar Centos, hay mayor compatibilidad y pruebas de proyectos radio que con Debian.
❖ Se usa DTMF para interaccionar entre mundo radio y mundo telefónico.
❖ No olvidar que tenemos siempre disponible chan_oss (no sólo sirve para el console dial), y cmd_jack (https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+Application_JACK).
CM108
❖ El adaptador USB vale escasamente 1 euro. El problema está en que el chipset suele venir con Epoxi “chapapote” por lo que la manipulación no es tan sencilla.
❖ Luego hay que liarse a soldar componentes pero es una solución soportara por app_rpt.
❖ Hay que tener paciencia pero podéis autoconstruir un interfaz por poco dinero.
www.voipnovatos.es
URI❖ Adaptador basado en CM108
ya fabricado.
❖ Precio alrededor de los 100 dólares.
❖ Compatible con app_rpt.
❖ No aporta “mucho más” que un USB FOB autoconstruido pero te ahorra el trabajo y tienes una solución sólida.
❖ Si nexesitáis cable, o los autoconstruis o bien los compráis en uricables.com
www.voipnovatos.es
Vocality
❖ La vía fácil.
❖ Dispositivo consolidado para interconexiones radio a IP.
❖ No es barato pero funciona bastante bien
❖ Permite conversión a SIP, Multicast RTP, Unicast y enlace Vocality-Vocality.
❖ Gestión Web y Telnet
❖ Orientado a Ejército. Encriptación.
www.voipnovatos.es
Vocality❖ PTT activado por voz
❖ PTT activado por DTMF
❖ Full Duplex o Half Duplex
❖ Optimización de ancho de banda.
❖ Supresión de silencio.
❖ De 2 a 64 canales ROIP
❖ Multicast. Unicastwww.voipnovatos.es
Demo I Vocality-SIP-Asterisk❖ En esta demo mostramos la interconexión de una radio
DMR (Hytera MD 785G) con Asterisk.
❖ Realizamos una llamada en el lado Radio y la recibos en un teléfono SIP. Para ello necesitamos indicar por DTMF el destino.
❖ Realizamos una llamada a la extension Radio y podemos hablar. Para conmutar PTT podemos tenerlo en modo Automático (detección de RTP) o bien DTMF PTT toggle.
Demo II Vocality-Multicast❖ En esta demo mostramos la interconexión de una radio DMR
(Hytera MD 785G) con una plataforma SIP que soporte Multicast.
❖ Realizamos una llamada en el lado Radio y la recibo en la dirección multicast en la que escucha el teléfono. (Asterisk no puede “oir multicast”).
❖ Si realizo envío a la dirección de multicast de vocality transmite a nivel Radio. Códec G711 , con G729 no me funcionaba.
❖ Es rápido , efectivo y limpio . A mi me encanta :)
Otros usos❖ Pasarela de PSTN a Radio
❖ Poder llamar a números de la PSTN (Ojo Half Duplex en este caso o bien con equipamiento DMR Full Duplex, totalmente transparente)
❖ Posibilidad de grabación de llamadas radio con Asterisk
❖ Oir un sistema radio en otra ubicación
❖ Y más …
www.voipnovatos.es
RTL_SDR❖ Universal.
❖ Barata
❖ “Sencilla”
❖ Sólo para recibir
❖ Transmisión con HackRF o similares
❖ No hace falta interconexión física entre radio y sistema remoto
❖ Decodificación software de DMR, DSTAR y cualquier sistema de modulación digital
❖ ADS-B
www.voipnovatos.es
Más ideas❖ Usar RTL SDR para la
recepción y grabación de comunicaciones radio y usar una Raspberry pi para transmitir (si está cerca del repetidor nos puede valer (http://www.icrobotics.co.uk/wiki/index.php/Turning_the_Raspberry_Pi_Into_an_FM_Transmitter) ).
www.voipnovatos.es
Signalink USB❖ Adaptador Radio compatible con
cualquier radio del mercado. Cable “RJ45” con pines configurase (http://www.tigertronics.com/sl_wirebm.htm)
❖ A nivel Linux lo vemos como un dispositivo USB de audio.
❖ En Asterisk podemos integrarlo con ALSA (chan_console) o bien JACK Audio.
❖ El control del PTT lo realiza automáticamente cuando hay audio.
❖ Es decir si le inyecto audio se pone a transmitir y viceversa. Hay que tener cuidado o jugar con el Mute .
www.voipnovatos.es
Signalink USB con Asterisk❖ exten => _1XXX,1,Answer()
❖ exten => _1XXX,n,Set(CONFBRIDGE(user,admin)=yes)
❖ exten => _1XXX,n,Set(CONFBRIDGE(user,marked)=yes)
❖ exten => _1XXX,n,Set(CONFBRIDGE(user,startmuted)=no)
❖ exten => _1XXX,n,Set(CONFBRIDGE(bridge,record_conference)=yes)
❖ exten => _1XXX,n,ConfBridge(1000,test_bridge,test_user,test_user_menu)
❖ exten => _1XXX,n,Hangup()
Signalink USB con Asterisk❖ #!/bin/sh
❖ asterisk -rx "console dial radio@extensiones”
❖ cat > /home/pi/888.call <<EOF
❖ Channel: Local/888@extensiones
❖ MaxRetries: 2
❖ RetryTime: 60
❖ WaitTime: 30
❖ Context: extensiones
❖ Extension: 888_ice
❖ Priority: 1
❖ EOF
❖ mv /home/pi/888.call /var/spool/asterisk/outgoing
Más ideas❖ También podemos usarlo con
otros softwares.
❖ Al tener control interno por PTT nos simplifica la gestión. Eso sí, podemos tener condiciones de carrera si el nivel de audio no es correcto, pasando de transmisión a recepción en poco intervalo de tiempo lo que no es recomendable para los equipos transmisores.
www.voipnovatos.es
Rigexpert USB❖ Adaptador Radio compatible con
cualquier radio del mercado. Cable “RJ45” con pines configurase (http://www.rigexpert.com/index?f=making_cables)
❖ A nivel Linux lo vemos como un dispositivo USB de audio y control de PPT como un dispositivo serie.
❖ En Asterisk podemos integrarlo con ALSA (chan_console) o bien JACK Audio.
❖ Debemos controlar el PTT para ello deberemos escribir en el puerto serie.
❖ Necesito un par de scripts que llame desde Asterisk (features.conf)
www.voipnovatos.es
RigExpert USB - Asterisk
❖ [applicationmap]
❖ transmitir=> 88,peer,System,sh /root/tx.sh
❖ Tambien podemos usar alguna Puerto GPIO con Asterisk.
❖ Problemas encontrados. Solo se recibe o solo se transmite. Para conmutar hay que colgar la llamada, habilitar PTT y abrir de nuevo el chan console.
Mumble Server❖ Los gamers usan servidores con baja
latencia de audio y que permiten la transmisión de la voz rápida y la cual es oída por todos los participantes de la sala.
❖ Mumble permite esto y para integrarlo con radio usaremos mumble server para que los softphones y clientes se conecte y mumble client en entorno gráfico con el Signalink USB. La conmutación de PTT la realizará automaticamente. Esto nos permite oir y transmitir al entorno radio de una forma versátil y rápida
www.voipnovatos.es
Demo III: RadioVoip con Mumble❖ En esta demo vamos a mostrar como sería una instalación de
radio con mumble server y Signalink.
❖ Se pedirá a alguno de los asistentes que se conecte al mumble server con su móvil.
❖ La radio Hytera está conectado al mumble server por medio del signalink y es él el que cuando haya audio envía al resto de participantes y transmite al canal radio cuando lo hay del resto de participantes.
❖ Podemos mutear a algunos usuarios con el fin de que lo que hablen no se transmita,etc…
Multicast con VLC
❖ Usaremos VLC para coger el audio y enviarlo como multicast al teléfono.
❖ Igualmente el audio recibido en la dirección de multicast se escribirá en el canal para que sea la radio la que lo envie.
❖ Siempre que haya audio el Signalink transmite. Podemos tener condiciones de carrera.
www.voipnovatos.es
VLC❖ La opción a usar en el VLC es :
❖ cvlc -vvv alsa://hw:0,0 --sout “#transcode{acodec=ulaw,ab=64,scale=1,channels=1,ar=8000}:rtp{dst=239.255.255.254,port-audio=6666}"
❖ arecord | cvlc stream:///dev/stdin --sout “#transcode{acodec=ulaw,ab=64,scale=1,channels=1,ar=8000}:rtp{dst=239.255.255.254,port-audio=6666}"
❖ cvlc -vvv udp://@239.255.255.254:6667 | aplay -D plughw:0,0
Icecast y Darkice
❖ Podemos usar icecast2 como servidor para aunar los streaming de las radios.
❖ Para transmitir usaremos darkice usando la entrada USB de radio.
❖ Para Raspberry pi hace falta compilar con soporte alsa, lame, ogg-vorbis,etc.. el paquete de apt-get viene pelado.
❖ Recomendable este link: http://www.t3node.com/blog/live-streaming-mp3-audio-with-darkice-and-icecast2-on-raspberry-pi/
❖ Debemos crear un fichero darkice.xml
Icecast y Darkice# see the darkice.cfg man page for details
# this section describes general aspects of the live streaming session[general]duration = 0 # duration of encoding, in seconds. 0 means foreverbufferSecs = 5 # size of internal slip buffer, in secondsreconnect = yes # reconnect to the server(s) if disconnected
# this section describes the audio input that will be streamed[input]device = hw:1,0 # Alsa soundcard device for the audio inputsampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100bitsPerSample = 16 # bits per sample. try 16channel = 1 # channels. 1 = mono, 2 = stereo
# this section describes a streaming connection to an IceCast2 server# there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]# these can be mixed with [icecast-x] and [shoutcast-x] sections[icecast2-0]bitrateMode = vbr # variable bit rateformat = mp3 # format of the stream: mp3quality = 0.6 # quality of the stream sent to the serverserver = localhost # host name of the serverport = 8000 # port of the IceCast2 server, usually 8000password = SOURCE_PASSWORD # source password to the IceCast2 servermountPoint = raspi # mount point of this stream on the IceCast2 servername = RasPi # name of the streamdescription = DarkIce on RasPi # description of the streamurl = http://localhost # URL related to the streamgenre = my genre # genre of the streampublic = no # advertise this stream?localDumpFile = recording.mp3 # Record also to a file
Demo IV: Escuchar Streaming Radio
❖ Nos conectaremos por http://10.0.1.90:8080 y reproduciremos el streaming proveniente de la radio.
❖ Lo podemos usar para grabación de llamadas radio.
Zello❖ Aplicación PTT bastante usada en iphone/android.
❖ Permite la creación de canales privados/empresa gratis hasta cinco usuarios. Apartír de ahí se paga por usuario.
❖ Plataforma en la nube. Sólo hace falta un cliente Zello. La pega solo windows.
❖ Usabilidad de la aplicación móvil alta.
❖ Para 10 usuarios 612 dólares año. www.voipnovatos.es
Agradecimientos❖ Avanzada 7 S.L por invitarme
un año más al evento
❖ Vocality por el equipamiento cedido para esta charla.
❖ Luis de STAGSA por la ayuda prestada con equipamiento DMR de Hytera.
❖ A vosotros por asistir una año más fiel a esta cita.
www.voipnovatos.es
Votaciones
❖ Si os ha gustado la charla no olvidéis votarla en la urna que hay en la sala de conferencias :) Gracias!
www.voipnovatos.es