TV Box - Tutorial - Smart - Campus - Tutorial - TV - Box - TX2
TV Box - Tutorial - Smart - Campus - Tutorial - TV - Box - TX2
TV Box - Tutorial - Smart - Campus - Tutorial - TV - Box - TX2
Inicialmente, deve-se substituir o sistema operacional Android que vem instalado por
Linux. Para isso será necessário um cartão de memória (mínimo 8gb), onde iremos gravar o
programa Multitool e esse programa será responsável pela gravação da imagem do Linux -
distribuição Armbian, específica para a Tv Box (RK322X). As operações de ligar e desligar a
tv box devem ser feitas retirando o conector de energia do dispositivo.
Passo 1
Fazer o download do multitool em https://users.armbian.com/jock/rk322x/multitool/
O arquivo estará compactado com xz, para descompactar pode-se utilizar o
comando unxz multitool.img.xz (caso necessário, instale o pacote xz-utils: sudo apt-get
install xz-utils).
Passo 2
Gravar a imagem do Multitool no cartão de memória. Para isso pode-se utilizar o
programa gravador de imagem USB presente em distribuições Linux como Ubuntu, por
exemplo. Neste programa você deverá indicar a imagem de origem multitool.img e destino o
cartão de memória. Outra forma é através do comando: dd if=multitool.img of=/dev/sdb
status=progress (trocar o caminho e o nome do device sdb conforme seu sistema).
Aguardar até o término da gravação.
Passo 3
Inserir o cartão de memória na tv box desligada, ligar e aguardar a tela inicial, neste
momento será feita a expansão do sistema de arquivos para utilizar todo o cartão, após
essa etapa desligar a tv box e retirar o cartão.
Passo 4
Baixar a imagem do Linux, distribuição Armbian, que será utilizada através do
endereço:
https://imola.armbian.com/archive/rk322x-box/archive/
Em nosso caso utilizamos a imagem:
Armbian_23.5.1_Rk322x-box_bookworm_current_6.1.30.img.xz
Ela não possui interface gráfica. Após o download, descompactar a imagem com
unxz e gravar o arquivo .img na pasta Images do cartão de memória na partição Multitool. É
nesta pasta que o Multitool irá procurar imagens para gravar na tv box.
Passo 5
Inserir o cartão na tv box desligada, ligar e aguardar o início do Multitool, escolher a
opção de gravar imagem, escolher o destino e a imagem que deseja gravar, após o término
do processo, escolher a opção shutdown e remover o cartão.
Passo 6
Religando a tv box, o sistema operacional novo já deverá funcionar. Aguarde um
momento até solicitar a nova senha de root e criação de um usuário do sistema. Serão
solicitadas algumas configurações de timezone, linguagem / teclado e terminal (bash).
Os comandos sudo rk322x-config, armbian-config e nmtui poderão ser úteis para
configurar Wi-Fi, teclado layout, etc.
Verificamos que o mac address da interface Wi-Fi muda a cada reboot, caso seja
necessário fixar um valor utilize umas das opções:
1 - adicionar a linha abaixo com o mac desejado no arquivo /etc/network/interfaces:
pre-up ifconfig wlan0 hw ether XX:XX:XX:XX:XX:XX
2 - através do Network Manager pelo comando:
nmcli con modify SSID 802-11-wireless.cloned-mac-address
XX:XX:XX:XX:XX:XX
3 - adicionar no arquivo /etc/NetworkManager/system-connections/SSID no bloco
[wi-fi] cloned-mac-address=XX:XX:XX:XX:XX:XX
Referências:
https://forum.armbian.com/topic/12656-csc-armbian-for-rk322x-tv-boxes/
https://www.youtube.com/watch?v=-jCgbhX5NNU
Instalação kiosk
Passo 1
Crie o arquivo kiosk-installer.sh com o conteudo abaixo:
#!/bin/bash
# be new
apt-get update
# get software
apt-get install \
unclutter \
xorg \
chromium \
openbox \
lightdm \
locales \
-y
# dir
mkdir -p /home/kiosk/.config/openbox
# create group
groupadd kiosk
# rights
chown -R kiosk:kiosk /home/kiosk
Section "ServerLayout"
Identifier "ServerLayout0"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
EndSection
EOF
# create autostart
if [ -e "/home/kiosk/.config/openbox/autostart" ]; then
mv /home/kiosk/.config/openbox/autostart
/home/kiosk/.config/openbox/autostart.backup
fi
cat > /home/kiosk/.config/openbox/autostart << EOF
#!/bin/bash
while :
do
xrandr --auto
chromium \
--no-first-run \
--start-maximized \
--disable \
--disable-translate \
--disable-infobars \
--disable-suggestions-service \
--disable-save-password-bubble \
--disable-session-crashed-bubble \
--incognito \
--kiosk "https://www.prefeitura.unicamp.br/apps/noticia.php"
sleep 5
done &
EOF
echo "Done!"
Passo 2
Adicione permissão de execução ao script e execute:
chmod +x kiosk-installer.sh
./kiosk-installer.sh
Reinicie o sistema.
Caso necessário, o arquivo de configuração onde consta a url do site a exibir está
em: /home/kiosk/.config/openbox/autostart
Referência
https://github.com/josfaber/debian-kiosk-installer
Instalação Bridge - usando proxy arp
AP ---> TV BOX [WI-FI] --> rede cabeada [eth0] --> cliente rede cabeada
Passo 1
Trocar o nome da interface de rede end0 para eth0. Para isso criar o arquivo
/etc/systemd/network/10-eth0.link com o mac da interface e o nome eth0
[Match]
MACAddress=xx:xx:xx:xx:xx:xx
[Link]
Name=eth0
Passo 2
Criar e executar o script bridge-tvbox.sh com o conteúdo abaixo:
#!/usr/bin/env bash
set -e
# Configure dhcp-helper.
cat > /etc/default/dhcp-helper <<EOF
DHCPHELPER_OPTS="-b wlan0"
EOF
[Service]
Type=forking
# Restart until wlan0 gained carrier
Restart=on-failure
RestartSec=5
TimeoutStartSec=30
# clone the dhcp-allocated IP to eth0 so dhcp-helper will relay for the correct subnet
ExecStartPre=/bin/bash -c '/sbin/ip addr add $(/sbin/ip -4 -br addr show wlan0 |
/bin/grep -Po "\\d+\\.\\d+\\.\\d+\\.\\d+")/32 dev eth0'
ExecStartPre=/sbin/ip link set dev eth0 up
ExecStartPre=/sbin/ip link set wlan0 promisc on
ExecStart=-/usr/sbin/parprouted eth0 wlan0
ExecStopPost=/sbin/ip link set wlan0 promisc off
ExecStopPost=/sbin/ip link set dev eth0 down
ExecStopPost=/bin/bash -c '/sbin/ip addr del $(/sbin/ip -4 -br addr show wlan0 |
/bin/grep -Po "\\d+\\.\\d+\\.\\d+\\.\\d+")/32 dev eth0'
[Install]
WantedBy=wpa_supplicant.service
EOF
systemctl daemon-reload
systemctl enable parprouted
systemctl start parprouted dhcp-helper
Passo 3
Conecte um equipamento na porta RJ45 do tv box e configure ip dinâmico.
Referências:
https://gist.github.com/yoss85/a4c022f14ca1d10ae26369415ceb1c05
https://unix.stackexchange.com/questions/733080/debian-11-rename-network-interfa
ces
Instalação Bridge - usando nat
AP ---> TV BOX [WI-FI] --> rede cabeada [eth0] --> cliente rede cabeada
Passo1
Instale os pacotes a seguir, e responda Não para salvar as regras atuais do iptables.
sudo apt-get update && sudo apt-get install dnsmasq iptables iptables-persistent -y
allow-hotplug end0
iface end0 inet static
address 172.24.0.1
netmask 255.255.255.0
network 172.24.0.0
broadcast 172.24.0.255
dns-nameservers 1.1.1.1 1.0.0.1
#########{Static}###########
up ip addr add 172.24.0.1/24 dev end0
Passo2
Execute os comandos abaixo:
Passo 3
Edite o arquivo /etc/dnsmasq.conf deixando-o apenas com o conteúdo abaixo:
interface=end0
listen-address=172.24.0.1
bind-interfaces
server=1.1.1.1
domain-needed
bogus-priv
dhcp-range=172.24.0.100,172.24.0.250
Edite o arquivo /etc/sysctl.conf e adicione as linhas abaixo no final do arquivo:
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.all.forwarding=1
Passo 4
Execute os comandos:
systemctl enable dnsmasq
systemctl enable iptables
Passo 5
Conecte um equipamento na porta RJ45 do tv box e configure o ip estático
172.24.0.101 / 24, GW 172.24.0.1
Referências:
https://forum.armbian.com/topic/20516-how-to-internet-source-from-wifi-to-ethernet-b
ridge-wifi-to-ethernet/