pyLCI - interface externa para Raspberry Pi e outros dispositivos Linux

Oi



Hoje, quero mostrar um projeto em que trabalho nos últimos anos e finalmente lançar a primeira versão utilizável. Esta é a pyLCI - a Interface de Controle do Linux baseada em Python , uma interface externa para computadores Linux que permite que você interaja com o sistema através de telas e botões de caracteres. Usando aplicativos criados para esta interface, você pode executar um grande número de tarefas relacionadas à administração e configuração do sistema, além de executar vários scripts e executar comandos. E tudo isso - independentemente do monitor com o teclado!

E também minha interface:
  • Barato
  • Simples
  • Facilmente expansível
  • Universal

Interessado em? Eu peço gato.



Sobre K ^ W ^ W Como tudo começou
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 que posso usar essa interface?



  • ,
  • Bluetooth-
  • / ,
  • GPS


?



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




Decidi recentemente tornar o pyLCI mais acessível para uso geral e, como resultado do meu trabalho, apresento a versão 1.0 .

O que ela pode fazer fora da caixa?




Embora esta seja uma lista muito pequena, mas é muito fácil reabastecer. O pyLCI é um tipo de estrutura que é facilmente extensível por "aplicativos" no Python para adicionar uma função específica a ele. Ele fornece a esses aplicativos dispositivos de E / S que podem ser usados ​​para se comunicar com o usuário, além de um conjunto de elementos básicos da interface do usuário - como um item de menu. Portanto, ao escrever um aplicativo, você não pode se concentrar no hardware ou nas nuances da lógica da interface do usuário (como submenus) e dedicar-se completamente à solução do objetivo principal =)



Que ferro você precisa para começar a usar?


Precisa de um monitor compatível com HD44780. Assim:
imagem
um residente permanente de todos os tipos de kits iniciais, que vale cerca de US $ 2 (eBay).
Ainda precisa de botões. Tipo disso:
imagem
ou mesmo como parte disso:
imagem
outros 1-5 $. Mesmo usando expansores I2C (US $ 1 cada), é realmente dentro de US $ 7-10 / set. \

Mais precisamente, agora atualmente mais suportados são os dispositivos conectados a GPIO (para Raspberry Pi) e os expansores I2C -> GPIO, além de dispositivos USB HID entrada. Os planos:
  • Suporte para a combinação Arduino + LCD e proteção de botão para criar um dispositivo USB de E / S simples. Os negócios são firmware para o Arduino e o driver correspondente.
  • Criando um terminal sem fio com LCD e botões para controle sem fios que se estendem por todo o lugar (ESP8266?).




Convido todos os interessados ​​a se familiarizarem com a documentação , o poço e as instruções de instalação . Interessado em desenvolver seu aplicativo? Eu tenho um pequeno curso intensivo e exemplos como código para aplicativos já escritos .

Das desvantagens:



  1. Todo o sistema no momento é um processo, incluindo aplicativos. Nesse sentido, e o número possível de configurações que o sistema deve poder alterar, é mais fácil para o usuário médio executá-lo na raiz do que configurar todas as permissões necessárias. Se necessário, posso listar quais grupos / permissões são necessários para aplicativos específicos e maneiras de conectar o IO.
  2. Debian/Raspbian. , - install.sh, config.sh update.sh.
  3. sysvinit — systemd. , =)
  4. pyLCI , . , X, pyLCI — (, NumLock) . «» , HID =)


Talvez eu termine aqui por hoje. Estou muito interessado na sua opinião sobre minha ideia / implementação, bem como se você está interessado em usá-la para seus dispositivos Linux. Aqui você pode avaliar os planos para o futuro próximo do sistema, bem como uma lista aproximada de aplicativos que serão adicionados ao pacote padrão no futuro.

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


All Articles