SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Cleiton Bueno
● B2OPEN SYSTEMS
● ATUAMOS COM CONSULTORIA, TREINAMENTO E PROJETOS COM
LINUX EMBARCADO E SOFTWARES
● PUBLICAMOS CONTEÚDO NO PORTAL EMBARCADOS E
ATUALMENTE PELA B2OPEN
Linux Embarcado
Linux Embarcado
• Roteadores
• SmartTV - Ex. LG WebOS
• Set-Top Box
• Relógios
• Tesla
• SpaceX
• Automotive Grade Linux
• Equipamentos Médicos
• IHM’s Industriais
• Totens
• Equipamentos de ITS
• Automação Residencial
• Cameras | DVR’s
• Rifle
• Robôs
• etc...
O poderoso Kernel Linux
O Kernel é o regente de uma orquestra que seria a Distribuição Linux
onde cada instrumento é um software/serviço.
O poderoso Kernel Linux
Navegando dentro do
Kernel Linux
Wifi/Ethernet/3G/VPN
Wifi/Ethernet/3G/VPN
Administrar conexões e interface de rede seja Ethernet ou Wireless é
com o NetworkManager.
Wifi/Ethernet/3G/VPN
$ nmcli device
DEVICE TYPE STATE CONNECTION
wlp2s0 wifi connected AP-B2OpenPub
enp1s0 ethernet unavailable --
lo loopback unmanaged --
Visualizando
informações das
interfaces com nmcli
Wifi/Ethernet/3G/VPN
$ nmcli device wifi
* SSID MODE CHAN RATE SIGNAL BARS SECURITY
* AP-B2OpenPub Infra 1054 Mbit/s 87 **** WPA1 WPA2
ServClean Infra 9 54 Mbit/s 80 *** WPA1
VIVO-B14C Infra 11 54 Mbit/s 24 * WPA1 WPA2
Visualizando redes
wireless disponíveis com
nmcli
Wifi/Ethernet/3G/VPN
$ nmcli device wifi
* SSID MODE CHAN RATE SIGNAL BARS SECURITY
* AP-B2OpenPub Infra 1054 Mbit/s 87 **** WPA1 WPA2
ServClean Infra 9 54 Mbit/s 80 *** WPA1
VIVO-B14C Infra 11 54 Mbit/s 24 * WPA1 WPA2
Visualizando redes
wireless disponíveis com
nmcli
Wifi/Ethernet/3G/VPN
$ nmcli device wifi connect "NOME REDE" password "SENHA-REDE"
Conectando em uma
rede wireless com nmcli
Wifi/Ethernet/3G/VPN
# dbus-send --print-reply --system 
--dest=org.freedesktop.NetworkManager 
/org/freedesktop/NetworkManager 
org.freedesktop.NetworkManager.GetDevices
method return time=1602011270.628625 sender=:1.10 ->
destination=:1.120 serial=8531 reply_serial=2
array [
object path "/org/freedesktop/NetworkManager/Devices/0"
object path "/org/freedesktop/NetworkManager/Devices/1"
object path "/org/freedesktop/NetworkManager/Devices/2"
]
Sua aplicação pode
obter e enviar
informações via DBUS
para NetworkManager
Bluetooth
• Bluez - É a pilha de protocolo Bluetooth oficial do Linux
• GAP (Generic Access Profile)
• GATT (Generic Attribute Profile
• 6LowPAN
• HoG (HID Over GATT)
Ferramentas: btmon(HCI Tracer), bluetoothctl(CLI Bluetooth), hcitool(administrar e
configurar interfaces)
Bluetooth
$ hciconfig -a
hci0: Type: BR/EDR Bus: USB
BD Address: 5C:C9:D3:XX:XX:XX ACL MTU: 1024:8 SCO MTU: 50:8
UP RUNNING
RX bytes:1202 acl:0 sco:0 events:75 errors:0
TX bytes:4264 acl:0 sco:0 commands:69 errors:0
Features: 0xff 0xfe 0x8f 0xfe 0xd8 0x3f 0x5b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF
Link mode: SLAVE ACCEPT
Name: 'b2-nb2'
Class: 0x10010c
Service Classes: Object Transfer
Device Class: Computer, Laptop
HCI Version: 4.1 (0x7) Revision: 0x0
LMP Version: 4.1 (0x7) Subversion: 0x25a
Manufacturer: Qualcomm (29)
Obtendo a interface
Bluetooth e suas
configurações
Bluetooth
$ hcitool -i hci0 lescan
LE Scan ...
72:23:C8:XX:XX:XX (unknown)
$Buscando por
dispositivos BLE
Aplicações Gráficas
Aplicações Gráficas
Framework Qt5 TotalCross LVGL
Aplicações Gráficas
Multiplataforma
Linguagem Oficial: C++ e
Python
Linux Embarcado:
LinuxFB, X11, Wayland e
EGLFS
Aplicações Gráficas
Multiplataforma
Linguagem Oficial: Java
Linux Embarcado: X11,
Wayland e FrameBuffer
Aplicações Gráficas
Aplicações Gráficas
Linguagem Oficial: C e
C++*
Linux Embarcado:
FrameBuffer
OTA - Over-The-Air
OTA - Over-The-Air
Assimétrico Simétrico
BOOTLOADER BOOTLOADER
OS-A
(ativo)
OS-B
(inativo)
DADOS
PERSISTENTE
OS
DADOS
PERSISTENTE
A B C
OTA - Over-The-Air
OTA - Over-The-Air
• SWUpdate
• OStree
• UpdateHub - UHU
• Mender
• RAUC
• Here OTA
• Torizon - Toradex
Fail-safe
roll-back
IPC
IPC
• Sockets
• Shared Memory
• Pipes
• Signals - Kill -l
• DBUS - Ex. Bluez(Bluetooth) e NetworkManager
• ZeroMQ - https://zeromq.org/
Contra quantos?
• GPSd - Serviço que monitora um ou mais GPS’s e disponibiliza as
informações na porta 2947/TCP
• CAN e can-utils - SocketCAN, VCAN, J1939 e pacotes de comandos
com can-utils
• libmodbus - Bibilioteca em C para ModBUS RTU e TCP
• libgpiod - Kernel >=4.8 o gpiod é um dispositivo de caractere que
disponibiliza um API via UserSpace, atualmente C, C++ e Python
Contra quantos?
• IIO - Industrial IO abstraindo ADC’s, Sensores I2C e SPI ao nivel
user-space para o usuário
• UDev - Gerenciador de Dispositivos sucessor do HotPlug,
manipulando eventos e executando ações
• Cron e Systemd Timers - Tarefas Agendadas
Referências
https://www.zdnet.com/article/from-earth-to-orbit-with-linux-and-spa
cex/
https://www.reddit.com/user/spacexfsw/
https://electrek.co/2018/05/19/tesla-releases-softwar-open-source-lic
ences/?utm_campaign=Built%20with%20Qt%202018&utm_content=7
1800933&utm_medium=social&utm_source=twitter
http://events17.linuxfoundation.org/sites/events/files/slides/elc-came
ra-dt-acpi.pdf
Referências
https://arstechnica.com/gadgets/2013/01/17000-linux-powered-rifle-b
rings-auto-aim-to-the-real-world/
https://developer.gnome.org/NetworkManager/stable/spec.html
https://www.kernel.org/doc/Documentation/networking/can.txt
Obrigado
Site: https://www.b2open.com
Contato: cleiton.bueno@b2open.com
Acesse e se cadastre no https://publicacoes.b2open.com
Obrigado

Contenu connexe

Similaire à Linux embarcado - tudo o que seu projeto precisa está aqui!

Configurando rede local
Configurando rede localConfigurando rede local
Configurando rede local
Felipe Pereira
 
Implantação de sistemas desegurança com linux
Implantação de sistemas desegurança com linuxImplantação de sistemas desegurança com linux
Implantação de sistemas desegurança com linux
SoftD Abreu
 
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
Alcyon Ferreira de Souza Junior, MSc
 
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-VPalestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
GBanin
 

Similaire à Linux embarcado - tudo o que seu projeto precisa está aqui! (20)

Configurando rede local
Configurando rede localConfigurando rede local
Configurando rede local
 
Software para redes
Software para redesSoftware para redes
Software para redes
 
Conhecendo o mikrotik
Conhecendo o mikrotikConhecendo o mikrotik
Conhecendo o mikrotik
 
Conceito Ethernet Sniffer em Visual Studio C#
Conceito Ethernet Sniffer em Visual Studio C#Conceito Ethernet Sniffer em Visual Studio C#
Conceito Ethernet Sniffer em Visual Studio C#
 
Esclarecimentos da nova prova CCNA
Esclarecimentos da nova prova CCNAEsclarecimentos da nova prova CCNA
Esclarecimentos da nova prova CCNA
 
Implantação de sistemas desegurança com linux
Implantação de sistemas desegurança com linuxImplantação de sistemas desegurança com linux
Implantação de sistemas desegurança com linux
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
 
Configurando uma rede local com acesso internet
Configurando uma rede local com acesso  internetConfigurando uma rede local com acesso  internet
Configurando uma rede local com acesso internet
 
SonicWALL - Seja o departamento do "Sim" em sua empresa
SonicWALL - Seja o departamento do "Sim" em sua empresaSonicWALL - Seja o departamento do "Sim" em sua empresa
SonicWALL - Seja o departamento do "Sim" em sua empresa
 
Curso de redes_cisco
Curso de redes_ciscoCurso de redes_cisco
Curso de redes_cisco
 
Fundamentos de VHDL em Lógica Programável v1.1
Fundamentos de VHDL em Lógica Programável v1.1Fundamentos de VHDL em Lógica Programável v1.1
Fundamentos de VHDL em Lógica Programável v1.1
 
[Cloud Summit 2010] Tecla Internet - Antonio Carlos Pina
[Cloud Summit 2010] Tecla Internet - Antonio Carlos Pina[Cloud Summit 2010] Tecla Internet - Antonio Carlos Pina
[Cloud Summit 2010] Tecla Internet - Antonio Carlos Pina
 
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
Proxmox uma solução alternativa aos virtualizadores propietários - FLISOL DF ...
 
Linux Network Fault Tolerance
Linux Network Fault ToleranceLinux Network Fault Tolerance
Linux Network Fault Tolerance
 
Aula vlans
Aula   vlansAula   vlans
Aula vlans
 
Packet Tracer
Packet TracerPacket Tracer
Packet Tracer
 
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-VPalestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
Palestra Teched Brasil 2010 - Sessão INT301 - Linux no Hyper-V
 
LEON3 e KIT ALTERA.
LEON3 e KIT ALTERA.LEON3 e KIT ALTERA.
LEON3 e KIT ALTERA.
 
Arduino Yún - À nuvem e além
Arduino Yún - À nuvem e alémArduino Yún - À nuvem e além
Arduino Yún - À nuvem e além
 
Virtualização.ppt
Virtualização.pptVirtualização.ppt
Virtualização.ppt
 

Plus de Embarcados

Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
Embarcados
 
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3CWebinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
Embarcados
 

Plus de Embarcados (20)

Webinar: Controle de motores BLDC e de indução trifásico
Webinar: Controle de motores BLDC e de indução trifásicoWebinar: Controle de motores BLDC e de indução trifásico
Webinar: Controle de motores BLDC e de indução trifásico
 
Webinar_ Julho 2023 - Embarcados.pdf
Webinar_ Julho 2023 - Embarcados.pdfWebinar_ Julho 2023 - Embarcados.pdf
Webinar_ Julho 2023 - Embarcados.pdf
 
Webinar: Especificação de Componentes Passivos
Webinar: Especificação de Componentes PassivosWebinar: Especificação de Componentes Passivos
Webinar: Especificação de Componentes Passivos
 
Webinar: Projeto de hardware utilizando Conversores DC/DC
Webinar: Projeto de hardware utilizando Conversores DC/DCWebinar: Projeto de hardware utilizando Conversores DC/DC
Webinar: Projeto de hardware utilizando Conversores DC/DC
 
Webinar: Comunicação TCP/IP segura
Webinar: Comunicação TCP/IP seguraWebinar: Comunicação TCP/IP segura
Webinar: Comunicação TCP/IP segura
 
Webinar: Desvendando o Yocto Project
Webinar: Desvendando o Yocto ProjectWebinar: Desvendando o Yocto Project
Webinar: Desvendando o Yocto Project
 
Webinar: Bancada de eletrônica profissional
Webinar: Bancada de eletrônica profissionalWebinar: Bancada de eletrônica profissional
Webinar: Bancada de eletrônica profissional
 
Webinar: Como projetar sensores de baixo consumo utilizando microcontroladore...
Webinar: Como projetar sensores de baixo consumo utilizando microcontroladore...Webinar: Como projetar sensores de baixo consumo utilizando microcontroladore...
Webinar: Como projetar sensores de baixo consumo utilizando microcontroladore...
 
Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
Webinar: Desvendando o seguidor de linha: sensores, montagem e programação co...
 
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3CWebinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
Webinar Gravado: Um Estudo sobre a I2C e o Futuro com a I3C
 
Webinar: Microcontroladores Infineon TRAVEO T2G
Webinar: Microcontroladores Infineon TRAVEO T2GWebinar: Microcontroladores Infineon TRAVEO T2G
Webinar: Microcontroladores Infineon TRAVEO T2G
 
Webinar: Introdução à Reconfiguração dinâmica parcial em FPGAs
Webinar: Introdução à Reconfiguração dinâmica parcial em FPGAsWebinar: Introdução à Reconfiguração dinâmica parcial em FPGAs
Webinar: Introdução à Reconfiguração dinâmica parcial em FPGAs
 
Webinar: Microprocessadores 32 bits, suas principais aplicações no mercado br...
Webinar: Microprocessadores 32 bits, suas principais aplicações no mercado br...Webinar: Microprocessadores 32 bits, suas principais aplicações no mercado br...
Webinar: Microprocessadores 32 bits, suas principais aplicações no mercado br...
 
Cristais e Ressonadores Murata
Cristais e Ressonadores MurataCristais e Ressonadores Murata
Cristais e Ressonadores Murata
 
Webinar: Silicon Carbide (SiC): A tecnologia do futuro para projetos de potência
Webinar: Silicon Carbide (SiC): A tecnologia do futuro para projetos de potênciaWebinar: Silicon Carbide (SiC): A tecnologia do futuro para projetos de potência
Webinar: Silicon Carbide (SiC): A tecnologia do futuro para projetos de potência
 
Webinar: Por que dominar sistema operacional Linux deveria ser a sua prioridade?
Webinar: Por que dominar sistema operacional Linux deveria ser a sua prioridade?Webinar: Por que dominar sistema operacional Linux deveria ser a sua prioridade?
Webinar: Por que dominar sistema operacional Linux deveria ser a sua prioridade?
 
Webinar: Estratégias para comprar componentes eletrônicos em tempos de escassez
Webinar: Estratégias para comprar componentes eletrônicos em tempos de escassezWebinar: Estratégias para comprar componentes eletrônicos em tempos de escassez
Webinar: Estratégias para comprar componentes eletrônicos em tempos de escassez
 
Webinar: ChatGPT - A nova ferramenta de IA pode ameaçar ou turbinar a sua car...
Webinar: ChatGPT - A nova ferramenta de IA pode ameaçar ou turbinar a sua car...Webinar: ChatGPT - A nova ferramenta de IA pode ameaçar ou turbinar a sua car...
Webinar: ChatGPT - A nova ferramenta de IA pode ameaçar ou turbinar a sua car...
 
Webinar: Power over Ethernet (PoE) e suas aplicações no mercado brasileiro
Webinar: Power over Ethernet (PoE) e suas aplicações no mercado brasileiroWebinar: Power over Ethernet (PoE) e suas aplicações no mercado brasileiro
Webinar: Power over Ethernet (PoE) e suas aplicações no mercado brasileiro
 
Webinar: Utilizando o Yocto Project para automatizar o desenvolvimento em Lin...
Webinar: Utilizando o Yocto Project para automatizar o desenvolvimento em Lin...Webinar: Utilizando o Yocto Project para automatizar o desenvolvimento em Lin...
Webinar: Utilizando o Yocto Project para automatizar o desenvolvimento em Lin...
 

Linux embarcado - tudo o que seu projeto precisa está aqui!