Raspberry Web Kiosk - Информационное табло

 Информационное табло прочно вошло в нашу жизнь.

   

Информационная стойка состоит из:

1. Обычный телевизор
2. Raspberry PI B+
3. SD Карта 8Gb
4. HDMI Кабель
5. WIFI Адаптер Alfa AWUSO30H Realtek 8187

Сервер поставляющий контент - обычный Веб сервер с набором скриптов на базе MODX.
Контент может быть как графическим так и текстовым все зависит от ваших фантазий...

   

Raspberry Pi настраеваеться на получение данных в автоматическом режиме.
То есть от момента подачи питания и получения контента ничего делать не надо. Просто подождать.

А теперь самое интересное, как же это сделать.
Для сборки использовали стандартный дистрибутив Raspberry.

Установка
Пользователь по умолчанию
Username: pi
Password: raspberry

Обновляем прошивку
sudo rpi-update

Обновляем все пакеты
sudo apt-get -y update && sudo apt-get -y upgrade

Настраиваем Raspberry PI
sudo raspi-config
Setting Memory Split

Устанавливаем время
sudo dpkg-reconfigure tzdata
Презагружаем сервер NTP
sudo /etc/init.d/ntp restart
Проверяем сервер времени
sudo ntpq -pn
Проверяем время
date

Устраняем проблему отображения в процессах устанавливая фикс matchbox
sudo apt-get install -y matchbox

Устнавливаем браузер
sudo apt-get install -y midori

Добавляем функционал
sudo apt-get install -y unclutter build-essential git-core x11-xserver-utils xterm mpg123 libx264-dev ffmpeg libav-tools mc

Создаем скрипт запуска
echo '
#!/bin/bash
xset -dpms
xset s off
xset s noblank
unclutter &
matchbox-window-manager &
while true;do
/usr/bin/midori -e Fullscreen -a http://pr.prochor.ru/index.php?id=6
done
' > /home/pi/midori-run.sh

Устанавливаем права на исполнение и автоматический запуск
sudo chmod +x /home/pi/midori-run.sh

Запуск при старте - вписываем запуск скрипта в /etc/rc.local

sudo xinit ./home/pi/midori-run.sh

Настраиваем сеть WIFI

sudo nano /etc/network/interfaces

Первый вариант не очень удобный если сетей несколько.
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid "Your Network SSID"
wpa-psk "Your Password"

Второй вариант
Если настраивать WAP-PSK отдельно
sudo nano /etc/network/interfaces

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Далее настраиваем ssid и пароль к wifi

cd /etc/wpa_supplicant

Для получения PSK хеша
wpa_passphrase CHA 20000009 > mywifi.conf

переносим информацию из созданного файла mywifi.conf в wpa_supplicant.conf

sudo nano wpa_supplicant.conf

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="CHA"
#psk="20000009"
psk=189ada0b4778e000000000032360ca8ef23861b7bb26932defd4a03a4afcb90d
}

network={
ssid="MYWIFI"
#psk="20000000"
psk=257d127fec8b779b197754c000000000031d5b6442898bee8127ee78e4d8bc5f
}

Отключаем засыпание экрана

sudo nano /etc/lightdm/lightdm.conf

# don't sleep the screen
xserver-command=X -s 0 dpms

Для того чтобы программно не падал WIFI
sudo crontab -e

Вставляем строку
*/1 * * * * ping -c 1 8.8.8.8

Перезагружаем

sudo reboot

Далее настраиваем аппаратную часть

Вносим изменения в /boot/config.txt
1920 x 1080p HOWTO

disable_overscan=1

hdmi_group=1
hdmi_mode=16

или

hdmi_group=2
hdmi_mode=82

hdmi_force_edid_audio=1
hdmi_force_hotplug=1

framebuffer_depth=32
framebuffer_ignore_alpha=1

display_rotate=0 Стандартно
display_rotate=1 90 градусов
display_rotate=2 180 градусов
display_rotate=3 270 градусов

Примечание: я обнаружил, что в этих настройках можно получить максимальную скорость и стабильность. Ваша оценка может измениться, не стесняйтесь, поиграйте с ним. Есть люди, которым и 1 ГГц хватает.

arm_freq=800
sdram_freq=500

Включает турбо режим в момент загрузки на заданное количество секунд (до 60), либо до тех пор, пока cpufreq не установит частоту самостоятельно. Этот параметр может помочь в случае повреждения SD-карт при разгоне процессора. По умолчанию 0

initial_turbo=30

Подключаем к телевизору и наслаждаемся полученным результатом ...