fliperamacomraspberry

 

Há duas opções para o download do Raspbian, sendo uma com ambiente Desktop e outra sem o ambiente (somente linha de comandos).
Obviamente, o desejado para um servidor é a versão sem ambiente desktop.
Como configurar IP estático (fixo) nos Raspbian em modo texto?
Utilizar o arquivo /etc/dhcpcd.conf as configurações:
interface eth0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8

Para definir um IP fixo para interface wireless (wlan0). inserir as configurações desejadas no mesmo arquivo (/etc/dhcpcd.conf), veja um exemplo:

interface wlan0
static ip_address=192.168.1.10/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1 8.8.8.8
Modificar nome da rede para evitar conflitar caso estejam na mesma subrede (eth0 e wlan0).
Caso utilize ambas as interfaces, lembre-se que somente 1 gateway padrão (routers) é configurado para evitar duplicidade e conflito.

 
 

Como compilar a última versão do Kernel Linux, direto do código fonte da árvore GIT do seu criador, para nossa Raspberry Pi 3B+.
A Raspberry Pi Foundation fornece uma distribuição Linux para suas placas baseada na famosa distribuição Debian.
A última versão do Raspbian vem com o Kernel Linux v4.14,

O repositório oficinal com o código fonte do Kernel para a Raspberry Pi é github.com/raspberrypi/linux que é um fork do
repositório oficial do Kernel Linux, a árvore GIT do seu criador Linus Torvalds: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
Sempre usar versões LTS (Long Term Support), que recebe correções de bugs por um período de tempo maior, caso ache alguma falha ou instabilidade no sistema, reportando a mesma através do Linux Kernel Mainling List.

Para compilar o Kernel:
1- Instalar os seguintes pacotes via linha de comando: sudo apt-get install git bc kpartx u-boot-tools gcc-arm-linux-gnueabihf libssl-dev device-tree-compiler

2- Baixar o código fonte do repositório do Linus Torvalds
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/ cd linux

3- Com todo o código do Kernel configure a compilação :
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- multi_v7_defconfig

O retorno deve ser parecido com o da figura em anexo.

O que o comando significa:
ARCH=arm: Estamos dizendo ao make, nossa ferramenta de gerenciamento de build, que vamos compilar o Kernel para a arquitetura ARM. O processador da nossa Raspberry Pi o BCM2837 é um ARMv8;

CROSS_COMPILE=arm-linux-gnueabihf-: Estamos compilando o Kernel em uma máquina rodando em um processador Intel x86. Então precisamos dizer para o make que vamos “cross compilar” o Kernel utilizando os compiladores do pacote arm-linux-gnueabihf-;

multi_v7_defconfig: Por fim o último argumento é o arquivo de defconfig (definição de configuração).

 
 

4- Se navegarmos dentro das pastas do código fonte do Kernel Linux podemos chegar até os arquivos de configuração necessários:
bcm2835_defconfig
multi_v7_defconfig

No caso da Raspberry Pi 3B, 3B+, e outras placas baseadas na arquitetura ARM, vamos utilizar as configurações definidas no multi_v7_defconfig.

5 -Após escolher as configurações compilar usando o comando:

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules dtbs -j 8

Como resultado devemos ter o que é mostrado na segunda imagem indicnado

Com isso teremos gerado a imagem do Kernel para nosso Raspberry Pi 3B+.

 
 

zImage : é o tipo de imagem do Kernel que queremos como output da compilação, o zImage é uma imagem comprimida que se auto extrai durante o boot;

modules : a Raspberry Pi utiliza alguns periféricos, por exemplo WiFi. O chip do WiFi precisa de um driver no Kernel, esse driver na configuração da imagem do Kernel é selecionado como module, um driver que pode ser carregado ao sistema sem precisar fazer parte da imagem do Kernel, um arquivo a parte. Passando o argumento modules estamos dizendo ao make para compilar todos os drivers e módulos (são as saídas de arquivos com extensão *.ko que vemos durante a compilação do Kernel);

dtbs : esse argumento diz ao make para compilar todos os Device Trees configurados pelo defconfig. Os Device Trees são de grande importância para descrição do hardware para o Kernel, são eles que irão definir quais periféricos utilizarão quais GPIOs e os estados dos pinos, output, input, pull down e etc;

-j 8 : o argumento -j ou –jobs diz ao make para compilar nosso Kernel utilizando processos em paralelo. Por exemplo meu computador tem 8 núcleos então eu posso passar “-j 8” para o make e ele ira compartilhar tarefas durante a compilação a todos os meus núcleos. Isso diminui bastante o tempo total de compilação.

 
 

6 – Para testar nossa nova imagem do Kernel vamos utilizar uma instalação do Raspbian já gravada em um SD card. Conecte e monte o SD card no seu Linux. Vamos copiar os seguintes arquivos para a partição boot do SD card:
Conecte e monte o SD card no seu Linux. Vamos copiar os seguintes arquivos para a partição boot do SD card:

cp arch/arm/boot/zImage /media/castello/boot/ cp arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dtb /media/castello/boot/

Você copiou o arquivo zImage, e o Device Tree Binary com a descrição de hardware que o Kernel precisa para o Raspberry Pi 3B+, o arquivo bcm2837-rpi- 3-b-plus.dtb.

7 – Copiar os módulos, arquivos com extensão *.ko criados durante a compilação

sudo make INSTALL_MOD_PATH=/media/castello/rootfs/ modules_install

sudo é necessário aqui por que estamos copiando os módulos para uma partição ext, rootfs do SD card

8- Troque os caminhos /media/castello/rootfs/ e /media/castello/boot/ dos comandos acima pelo caminho aonde estará montado a partição boot e rootfs do SD card do Raspbian no seu computador.

9 – configurar o bootloader da Raspberry Pi para carregar nosso novo Kernel, já que os novos arquivos não seguem o padrão que ele irá procurar. Abra o arquivo config.txt da partição boot do SD card e inclua o seguinte no final do arquivo:

  1. latest kernel
    kernel=zImage
    device_tree=bcm2837-rpi-3-b-plus.dtb
    Com isso o bootloader irá saber que ele tem que carregar para a memória a nova imagem e o device tree binary atualizado para o novo Kernel
10 – ligar nossa Raspberry Pi 3B+ e verificar se a nossa última versão do Kernel está funcionando corretamente:

cat /proc/version

 
 

Construção de fliperamas em Raspberry
Componentes elétricos eletrônicos
Micro Switch Botão 5V
Porta USB 5V
Placa USB Joystick
Capacitores/Resistor/LED/Conectores
Controle Joystick
4 micro switch com 4 chapas de contato
Placa USB Joystick
Como testar: Ligar no terminal com 4 pinos
o adaptador USB direto do PC

Acionamento da placa Raspberry
1- criar um comando para ativar o HD
Tudo mediante a testes anteriores para saber
O hardware que necessita o projeto e o que melhor se adequará à placa raspberry

2- Fazer todos os testes de energia da placa, testando o cartão SD. “HD”.

A imagem escolhida foi Retropie. O que foi feito para o Retropie funcionar?
Instalar imagem de Linux com Kernel compilado para funcionar o Raspberry e colocar no SD que deverá ser encaixado na placa do Raspberry, ligar a fonte de energia da placa e a saída de vídeo HDMI, a placa quando ligada deverá bootar o sistema.

Depois montar o Joystick

 
 

dd if=/imagemorigem of=/discodestino

/home/amplo/Downloads/imagens*para*fliperama/Lakka-RPi2.arm-2.2.2.img
Gravando o sistema no sd do seu Raspaberry :

dd if=/imagemorigem of=/discodestino

dd if=/home/amplo/Downloads/imagens-fliperama/retropie-4.5.1-rpi2_rpi3.img of=/dev/mmcblk0p1

ou outro exemplo de origem: /home/amplo/Downloads/imagens-fliperama/Lakka-RPi2.arm-2.2.2.img

 
 

site: instructables.com
Relacionado a projetos de games

Ergonomia dos Fliperamas e Games:
- Analisar posição dos botões e joystick que fique confortável para os gamers. (Jogador)
-
Calcular ponto a ponto as bases (estrutura) do nosso fliperama.
- Verificar aonde serão as saídas de refrigeração e audio e vídeo.
-
Estruturar o Design da sua máquina, o que chama a atenção?
- Estudar sua postura corporal perante o projeto.
-
Qual o número de de botões e joysticks que necessito no projeto?
- Decifrar poisção para destros e canhotos, facilitar a vida do jogadoCurso em andamento:
-
Montar esquema (croqui) do projeto. 3D (cima, laterais/embaixo)
- Fazer cálculo das furações de cada componente (seu espaço físico).
-
Retangular/ Quadrado/Circular.
— Fazer cálculo do sobresalto → se for o caso.
Ex: Tampa do gabinete com dobradiças para abertura em caso de manutenção.

2° Dia
Preparo para Monatagem do Fliperama
1º Lig:
1º Ligar/(Conectar) Todos os botões e o Joystick na placa USB joystick.
2º Fazer todos os testes dos componentes.
3º Iniciar croqui “(3D)” (Laterais, vista de cima (tampa), cálculo das bases (estrutura).
4º Utilizar se possivél um molde improvisado para posicionar o joystick, botões e componentes eletrônicos (Raspberry e USB joystick).

 
 
 BUG RECALBOX PERDA DA CONFIGURAÇÃO DOS BOTÕES DOS CONTROLES 

DRAGONRISE GENERIC JOYSTICK

forum.recalbox.com/topic/4156/zero-dela...

bugs.launchpad.net/ubuntu/+source/linux...

Hipótese: Deixar no mesmo padrão ambos os controles, ou seja, ligar os cabos que vão nos botões na mesma ordem no player 1 e no player 2 na plaquinha zero delay, isso serve para os controles também (alavanca) tem que estarem com o conector para mesma direção (plug do cabo no controle de ambos para direita > > por exemplo). Se tiver algum botão invertido ou não esteja para o mesmo lado o plug do controle, quando configurar o controle invertido vai desconfigurar o outro e vise e versa. Isso com certeza é um bug do sistema pois entendo que deveria ser independente uma coisa da outra mas dependendo como foi feito e configurado o sistema da nisso mesmo

 
   

ATUALIZAÇÕES – RASPBIAMPLO B10

linuxdicasesuporte.blogspot.com/2019/09...

www.edivaldobrito.com.br/raspbian-para-.../

www.recalbox.com/pt-br/blog/post/blog-2.../

archive.recalbox.com/