lunes, 28 de noviembre de 2022

Arduino - Receptor comercial de temperatura

  Página principal

Arduino
Receptor comercial de temperatura

Después de antiguos montajes de receptores de temperatura comerciales, he decidido reescribir el código.
El mayor problema es que los sensores de humedad se estropean con el tiempo, y miden mal.
El circuito es parecido al ard433.html, aunque yo lo tengo realizado en circuito impreso.



Lo primero se estudian las hondas recibidas para ver la estructura de los datos.
Ya con cierta experiencia es fácil encontrar los bits que corresponde a cada dato de humedad, temperatura, y canal.
Lo difícil sin documentación, es encontrar la forma en que hace la comprobación de errores.









Para medir los tiempos de cada tipo de bit (0 - 1), utilizo la interrupción en el pin 2.


#define IN_READ 2

//---Interrupcion--------------

void InumPasos()
{
  time=micros();        
  diferencia=time-timeU;
  Adiferencia=diferencia>>7;
  estadoDato=1;
salto:
  timeU=time;
}
//-----------------------------

void setup()
{
pinMode(IN_READ, INPUT);
 .......
  attachInterrupt(digitalPinToInterrupt(IN_READ), InumPasos, RISING);
 ....... 
}



Espero que estudiando el código podáis realizar vuestros propios receptores.
 

PROGRAMA


Saludos.
Juan Galaz


Bibliografía:
ard433.html
termot.html
temt3.html

martes, 22 de noviembre de 2022

Arduino - Alimentador de gato

  Página principal

Arduino
Alimentador de gato

Me habían pedido un circuito para poder alimentar periódicamente a unos gatos.
Lo primero que dije es que yo me comprometía a la parte eléctrica y de programa, pero no a la parte mecánica.
He realizado con arduino un circuito que mediante potenciómetros cambiar la vueltas por toma y el tiempo por toma.
Al no utilizar un reloj de tiempo real, no se puede garantizar que la alimentación de los gatos sea a la misma hora, pero si que sea cada un determinado numero de horas.







Este circuito funciona bien, pero se podría mejorar.
Hubiese sido una buena opción haber puesto micro-interruptores para cambiar las vueltas y el tiempo, pero en ese momento no los tenía.
También pensé en programar las vueltas y el tiempo desde consola serie, para luego guardar las variables en la EEPROM, pero pensé que para hacerlo más fácil era utilizar potenciómetros, que aunque sean menos precisos, son más fácil de programar.
Cuando vea la parte mecánica incluiré imágenes.
 

PROGRAMA


Saludos.
Juan Galaz



jueves, 17 de noviembre de 2022

Mis Cámaras IP Cámaras de vigilancia

  Página principal

Mis Cámaras IP
Cámaras de vigilancia

Este es un recopilatorio de cámaras que me han dado, o cámaras que compro en un baratillo.
La mayoría son antiguas, por lo que sus características están desfasadas.


DCS-932LB1


Not shown: 998 closed ports
PORT    STATE SERVICE
80/tcp  open  http
443/tcp open  https

Este modelo es bastante viejo y su resolución ya está desfasada.
Tiene conector de red y wifi.
En los modelos nuevos sus características han mejorado mucho.




YI HOME 12CN

Not shown: 996 closed ports
PORT    STATE SERVICE
21/tcp  open  ftp
23/tcp  open  telnet
80/tcp  open  http
554/tcp open  rtsp

El modelo 12CN  (resolución 720) está anticuado y no permite muchas opciones que los nuevo modelos tiene. Su conexión es mediante WIFI.
Al ser una cámara del modelo antigua y además es el modelo chino, no funciona con la aplicación de la APP android,  debemos bajar una versión antigua para poder configurar la cámara. Dispone de ranura SD para la grabación, y detector de movimiento.
Tiene visión nocturna al disponer de diodos de infrarrojos, al ser este modelo antiguo no se pueden apagar desde la APP.

Foto de desconexión para este modelo de los diodos IR para la visión nocturna.
La calidad es buena tanto en modo nocturno como en modo normal, además me imagino que los modelos actuales sean mucho mejores.




TL-SC2020N


Not shown: 996 closed ports
PORT      STATE SERVICE
80/tcp    open  http
443/tcp   open  https
554/tcp   open  rtsp
49153/tcp open  unknown

Este modelo es bastante viejo y su resolución ya está desfasada.
Tiene conector de red y wifi.
En los modelos nuevos sus características han mejorado mucho.
A pesar de que el puerto 554 esta abierto, no he conseguido que funcione la transmisión directa de video en modo rtsp.



e-CamView IP Camera

PORT     STATE SERVICE
23/tcp   open  telnet
81/tcp   open  hosts2-ns
8600/tcp open  asterix

Este modelo es bastante viejo y su resolución ya está desfasada.
Tiene conector de red y wifi, además de estar motorizada.
En los modelos nuevos sus características han mejorado mucho.

Este modelo tiene una resolución de 640x480, los modelos nuevos la resolución es HD y disponen de ranura SD.
Se configura bien en la APP o mediante navegador WEB.
Me gusta el modelo, pero su resolución es baja.




anyka


Bus 004 Device 003: ID 0525:a4a5 Netchip Technology,
Inc. Pocketbook Pro 903 / Mobius 2 Action Cam

Incluyo esta cámara, aunque es una cámara espía, para que tengáis cuidado, es un peligro.
Es una especie de colgador que tiene una cámara con buena resolución, y dispone de ranura SD para grabación.
Se conecta mediante wifi, ya sea directo al teléfono móvil, o mediante router.
El problema que tuve con esta cámara comprada en el rastro fue código QR, estaba dañado, y me costó configurar.
Se configura mediante la APP SIPC en el móvil, y su calidad de vídeo el buena.



Saludos.
Juan Galaz




miércoles, 2 de noviembre de 2022

Debian 9 y 11. Radio por internet - Icecast - darkice - Mixxx - Butt

  Página principal


Debian 9 y 11
Radio por internet
Icecast - darkice - Mixxx - Butt
 


Debian 9 y Debian 11

Lo primero es instalar el servidor icecast que gestiona los flujos de audio que se transmiten a través de la red.
    apt-get install icecast2
En su instalación se nos pedirá el las contraseñas necesarias para la emisión, administración, repetidor, y source.
Si una vez instalado queremos cambiar algo en la configuración.
    sudo editor /etc/icecast2/icecast.xml
En mi caso estas son los principales puntos de mi configuración:

<clients>100</clients>
<hostname>localhost</hostname>
<port>8000</port>
<source-password>calamar</source-password>
<relay-password>calamar</relay-password>
<admin-password>calamaradmin</admin-password>


Para saber si el servicio icecast2 está funcionando, deberemos comprobarlo con:
    systemctl status icecast2
Si está funcionado no saldrá algo parecido a esto:

● icecast2.service - LSB: Icecast2 streaming media server
   Loaded: loaded (/etc/init.d/icecast2; generated; vendor preset: enabled)
   Active: active (running) since Wed 2022-11-02 11:39:13 CET; 1h 37min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 584 ExecStart=/etc/init.d/icecast2 start (code=exited, status=0/SUCCESS)
    Tasks: 4 (limit: 4915)
   CGroup: /system.slice/icecast2.service
           └─610 /usr/bin/icecast2 -b -c /etc/icecast2/icecast.xml

Si no esta funcionando o queremos reiniciarlo debido a que hemos cambiado la configuración, arrancamos el servicio con:
    sudo /etc/init.d/icecast2 restart
También podemos arrancar icecast configurando el siguiente fichero
/etc/default/icecast2:
    sudo editor  /etc/default/icecast2
     y poner:
    ENABLED=true

Lo siguiente es instalar darkice.
    apt-get install darkice
Este programa captura todo lo que sale por nuestra tarjeta de audio y lo manda al servidor icecast.
Una vez instalado editamos su configuración.
El fichero de configuración lo vamos a crear en nuestro directorio de usuario. Yo lo hago con el editor pluma, vosotros podéis utilizar el que os guste.
   pluma
    ~/darkice.config

Mi configuración es la siguiente:

    [general]
    duration = 0 # duration of encoding, in seconds.
    bufferSecs = 2 # size of internal slip buffer, in seconds
    reconnect = yes # reconnect to the server(s) if disconnected
    realtime = yes # run the encoder with POSIX realtime priority
    rtprio = 3 # scheduling priority for the realtime threads

    [input]
    device = default
    sampleRate = 22050 # sample rate in Hz. try 11025, 22050 or 44100
    bitsPerSample = 16 # bits per sample. try 16
    channel = 2     # channels. 1 = mono, 2 = stereo

    [icecast2-0]
    bitrateMode = abr # average bit rate
    format = mp3 # format of the stream
    bitrate = 96 # bitrate of the stream sent to the server
    server = localhost
    port = 8000 # port of the IceCast2 server, usually 8000
    password = calamar # source password to the IceCast2 server
    mountPoint = radio # mount point of this stream on the IceCast2 server
    name = radio # name of the stream
    description = This is a streaming


Como usuario arrancamos darkice.
     darkice -c ~/darkice.config
Si queremos ver si funciona la radio, tecleamos en el navegador la siguiente dirección:
    http://localhost:8000/


Como yo he elegido en:
    device = default
En preferencias de sonido, en mi caso tengo:


El siguiente paso es instalar la mesa de mezclas mixxx.
    apt-get install mixxx
Desde la aplicación mixxx podemos transmitir nuestra radio.
En mi caso he añadido un micrófono USB y he tenido que hacer algún cambio en la configuración.
En dispositivo de salida Principal, elegimos default.
Debido a algunos problemas con la grabación del micrófono he tenido que cambiar algunas configuración, como por ejemplo Búffer de audio.


Intente configurar el micro de USB en las pestañas de Micrófono, pero funcionaba mal, o no funcionaba.
Después de bastantes pruebas, lo instalé en Auxiliar, ahora podía mezclar mi voz con la música.


Prueba con mi teléfono android, dentro de mi red, el funcionamiento de la radio.

Si queremos oir nuestra radio desde fuera de nuestra red local, deberemos configurar nuestro router y redireccionar el puerto 8000 hacia el ordenador servidor de la radio.




Debian 11

En Debian 11 existe un GUI para darkice llamado darksnow.
Se instala con:
   

apt-get install darksnow

Es bastante simple la configuración, y muy fácil de modificar.
Mi configuración es la siguiente:




butt
Los que no quieran utilizar darkice puede utilizar el programa
butt.
Se instala con:

apt-get install butt

Este programa funciona en modo gráfico y es fácil su configuración.









Después de todas las instrucciones para crear vuestra radio por internet, queda lo difícil, crear contenido.
Espero que os haya parecido interesante este artículo.



Saludos.
Juan Galaz



Bibliografía:

https://icecast.org/
http://www.darkice.org/
https://mixxx.org/
https://danielnoethen.de/butt/

https://www.sing-group.org/~lipido/blog/2012/01/10/hacer-streaming-de-spotify-en-ubuntu-1104-con-icecast2-darkice-y-pulseaudio/
https://federicosayd.wordpress.com/2007/10/12/una-radio-en-linux/
https://wiki.radioreference.com/index.php/Live_Audio/Ubuntu_Darkice