jueves, 17 de septiembre de 2020

Teclado virtual para flutter

        Flutter permite crear interfaces de usuario muy bellas, algo muy deseable para implementar la interfaz de un sistema embebido usando una raspberry pi y una pantalla táctil.

        Pero un inconveniente seria que el sistema operativo raspbian no tiene un teclado on-screen que aparece automáticamente al enfocar un campo de texto como en Android y iOS y se oculte cuando ya terminamos de escribir.

        En los siguientes enlaces se describen un paquete para flutter que permite implementar esa funcionalidad.


https://pub.dev/packages/virtual_keyboard

https://pub.dev/packages/keyboard_actions

jueves, 25 de junio de 2020

MCP3002 con wiringPi

    La librería wiringPi tiene funciones para leer voltajes usando un ADC mcp3002, para esto basta hacer una llamada a la función mcp3002Setup al inicio del programa y llamar analogRead para obtener las lecturas de los sensores conectados al mcp3002.
    Pero en la ultima versión publicada antes de ser declarado obsoleto (2.50), se le agrego un error al código que ejecuta corrimiento hacia la izquierda 8 bits, siendo que anteriormente recorría 7 bits que era lo correcto.
    Este error ocasiona lecturas erróneas, por ejemplo usando un potenciometro entre el mínimo y la mitad varia entre 3 y ~890 al pasa la mitad parece que regresa a 0 y vuelve a subir.
    Ya publique la corrección en github y envié un pull request a el github de wiringPi, aquí comparto el enlace.
https://github.com/WiringPi/WiringPi/pull/78

    La otra alternativa es crear una función equivalente para no tener que re-compilar wiringPi, por ejemplo: