pyLCI: interfaz externa para Raspberry Pi y otros dispositivos Linux

Hola



Hoy quiero mostrarles un proyecto en el que he estado trabajando durante los últimos años y finalmente lanzar la primera versión utilizable. Esto es pyLCI, la interfaz de control de Linux basada en Python , una interfaz externa para computadoras Linux que le permite interactuar con el sistema a través de pantallas de caracteres y botones. Usando aplicaciones escritas para esta interfaz, puede realizar una gran cantidad de tareas relacionadas con la administración y configuración del sistema, así como ejecutar varios scripts y ejecutar comandos. Y todo esto, ¡independientemente del monitor con teclado!

Y también mi interfaz:
  • Barato
  • Simple
  • Fácilmente ampliable
  • Universal

¿Interesado en? Pido gato.



Acerca de K ^ W ^ W Cómo comenzó todo
En mi primer artículo sobre Habré Linux EEE Pc 701 , ( ). , - , , . -, , - , - ( , ). , .

- - Raspberry Pi. , — Raspberry Pi , - . 5.25 , , HDMI- / /.. — . 3310 -, …

, — . - . - Fallout Pip-Boy, ;-) Pip-Boy , , . - , Linux- — Android . UI.
UI — , - . UI — , , UI , .
UI . , , . , . — . — , , ?

- Raspberry Pi. 4 , 2 . — , UART. — IP? ? - … UART? , . , SD- … , . .

? ?

image

.
, . , Raspberry Pi, - , , .



¿Para qué puedo usar esta interfaz?



  • ,
  • Bluetooth-
  • / ,
  • GPS


?



  • Raspberry Pi SBC Linux. , . WiFi UART ? . shutdown , SD-? . - ? .
  • . DHCP- . WiFi DHCP? -? , , , . , , — pyLCI- .
  • HTPC. , , / , , Bluetooth-.
  • . Raspberry Pi =) , .
  • … , ;-)




Recientemente decidí hacer que pyLCI sea más accesible para uso general y, como resultado de mi trabajo, les presento la versión 1.0 .

¿Qué puede hacer ella fuera de la caja?




Si bien esta es una lista bastante pequeña, pero es muy fácil de reponer. pyLCI es un tipo de marco que es fácilmente extensible por "aplicaciones" en Python para agregarle una función particular. Proporciona estas aplicaciones con dispositivos de E / S que se pueden usar para comunicarse con el usuario, así como un conjunto de elementos básicos de la interfaz de usuario, como un elemento de menú. Por lo tanto, al escribir una aplicación, no puede concentrarse en el hardware o los matices de la lógica de la interfaz de usuario (como submenús) y dedicarse por completo a resolver el objetivo principal =)



¿Qué hierro necesitas para comenzar a usar?


Necesita una pantalla compatible con HD44780. De esta manera:
imagen
un residente permanente de todo tipo de kits de inicio, con un valor de aproximadamente $ 2 (eBay).
Todavía necesito botones. Tipo de tal:
imagen
O incluso como parte de esto:
imagen
Otro 1-5 $. . Incluso utilizando las I2C-expansores ($ 1 una pieza), en realidad cumplir con los $ 7-10 / Set \

Para ser más precisos, ahora está apoyado principalmente GPIO -podklyuchonnye dispositivo (por Frambuesa Pi) y el I2C -> expansores GPIO como USB HID dispositivo entrada. Los planes:
  • Compatibilidad con la combinación Arduino + LCD y protección de botones para crear un dispositivo USB de E / S simple. El negocio es firmware para Arduino y el controlador correspondiente.
  • Creación de un terminal inalámbrico con LCD y botones para el control sin cables que se extienden por todo el lugar (ESP8266?).




Invito a todos los interesados ​​a familiarizarse con la documentación , el pozo y las instrucciones de instalación . ¿Interesado en desarrollar su aplicación? Tengo un pequeño curso intensivo y ejemplos como código para aplicaciones ya escritas .

De las desventajas:



  1. Todo el sistema en este momento es un proceso, incluidas las aplicaciones. En este sentido, y la posible cantidad de configuraciones que el sistema debería poder cambiar, es más fácil para el usuario promedio ejecutarlo bajo la raíz que configurar todos los permisos necesarios. Si es necesario, puedo enumerar qué grupos / permisos son necesarios para aplicaciones específicas y formas de conectar IO.
  2. Debian/Raspbian. , - install.sh, config.sh update.sh.
  3. sysvinit — systemd. , =)
  4. pyLCI , . , X, pyLCI — (, NumLock) . «» , HID =)


Quizás termine aquí por hoy. Estoy muy interesado en su opinión sobre mi idea / implementación, así como si está interesado en usarla para sus dispositivos Linux. Aquí puede evaluar los planes para el futuro cercano del sistema, así como una lista aproximada de aplicaciones que se agregarán al paquete estándar en el futuro.

Source: https://habr.com/ru/post/es392589/


All Articles