RadioVozIP

46
Alberto Sagredo Castro RadioVozIP @albersag @voipnovatos www.voipnovatos.es

description

Radio Voz IP. Radioaficionados . Asterisk.

Transcript of RadioVozIP

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

MADRIDALICANTE

INTERNET

ALICANTE

DTMFDTMF

DTMF DTMF

Demo I Vocality-SIP-Asterisk

CABLE DB26

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

MADRIDALICANTE

INTERNET

MÁLAGA

Demo III: RadioVoip con Mumble

RXRX

TX TX

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

MADRID

ALICANTE

INTERNET

MÁLAGA

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

FIN

www.voipnovatos.es