Raspberry Pi

Работаем с 64 битным образом Загрузить образ на флешку Raspberry Pi OS Lite 64 (img.xz)

unxz 2022-09-22-raspios-bullseye-arm64-lite.img.xz
dd if=/home/feser/Desktop/Download/2022-09-22-raspios-bullseye-arm64-lite.img bs=1M of=/dev/sdq status=progress && sync

Подключаем монитор и клавиатуру, загружаемся. В первоначальной настройке задаём нового пользователя pi с паролем.

Включаем сервис ssh

ssh-keygen ssh-keygen -t ed25519
sudo systemctl enable ssh --now
sudo apt install nginx uwsgi uwsgi-plugin-python3 python3-venv python3-dev mc git lightdm openbox rpd-plym-splash

Разворачиваем проект в домашней папке пользователя pi

cd ~
mkdir ~/www  ~/www/log
cd www 
git clone ...

добавляем ссылки на конфигурации uwsgi, nginx, etc и home
копируем конфигурацию для logrotate удаляем /etc/nginx/sites-enabled/default

chown root:root crond_teploobmen
chown root:root /etc/logrotate.d/tepl
chown pi:www-data prod_uwsgi.ini
/etc/systemd/journald.conf
[Journal]
SystemMaxUse=50M
SystemKeepFree=10M
SystemMaxFileSize=50M
sudo raspi-config

[System options] --> [Splash screen] On
[Interfacing Options] --> [Serial port]:
  login shell <No>
  hardware to be enabled <YES>
[Localisation Options] --> Locale ru_RU.UTF-8  Timezone Moscow



sudo systemctl set-default graphical.target
sudo mount -o rw,remount /dev/mmcblk0p1 /boot

Вставить в файл /boot/config.txt

[all]
enable_uart=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt=800 480 60 6 0 0 0
hdmi_drive=1  

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

sudo reboot

https://www.willhaley.com/blog/debian-fullscreen-gui-kiosk/

Проверка Modbus RTU

modpoll -b 9600 -p none -a 11 -r 105 -t3 -c2  /dev/ttyS0

Отключение синхронизации времени по сети

sudo systemctl disable systemd-timesyncd

Отключение Bluetooth

sudo systemctl disable hciuart.service
sudo systemctl disable bluealsa.service
sudo systemctl disable bluetooth.service  

/boot/config.txt

dtoverlay=i2c-rtc,ds3231

# Disable Bluetooth
dtoverlay=pi3-disable-bt

[all]
enable_uart=1

/etc/rc.local

# часы уже настроены - не нужно
#echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
#sleep 5

hwclock -s

/home/pi/www/plc-m/confs/etc/rc.local.plc-m

Mariadb

apt-get install mariadb-server

pip3 install pymysql mysqlclient
sudo mysql --user=root
DROP USER 'root'@'localhost';
CREATE USER 'root'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

CREATE DATABASE plcm;
CREATE USER 'pi'@'localhost' IDENTIFIED BY 'pipassword';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON plcm.* TO 'pi'@'localhost';

Прошивка модема

Подробно здесь:

bash-5.0$ ./balong-usbdload usblsafe-3372h.bin 
 
 Аварийный USB-загрузчик Balong-чипсета, версия 2.20, (c) forth32, 2015
 
 * Удалена процедура flash_eraseall по смещению 00001258
 
 Компонент    Адрес    Размер   %загрузки
------------------------------------------
 raminit    00000000     3412   100%
 usbboot    57700000  5922289   100%
 
 Загрузка окончена
bash-5.0$ ./balong_flash -p /dev/ttyUSB0 E3372h_22.333.01.00.00_WEBUI_19.100.11.10.03_HILINK.exe 
 
 Программа для прошивки устройств на Balong-чипсете, V3.0.282, (c) forth32, 2015, GNU GPLv3
--------------------------------------------------------------------------------------------------
 
 Код файла прошивки: f (FW_ISO_WEBUI)
 
 Цифровая подпись: 3750 байт
 Хеш открытого ключа: 778A8D175E602B7B779D9E05C330B5279B0661BF2EED99A20445B366D63DD697
 Версия прошивки: 22.333.01.00.00
 Платформа:       BV7R11HS__1
 Дата сборки:     2019.11.19 15:42:45
 Заголовок: версия 1, код соответствия: HWEW11.1
 Режим цифровой подписи: FW_ISO_WEBUI (3750 байт)
 Версия протокола: 7200B--SKCBADZM
 Идентификатор устройства: HUAWEI BV7R11HS
----------------------------------------------------
 
##  ---- Имя раздела ---- записано
00  Fastboot              100%
01  M3Boot_R11            100%
02  M3Boot-ptable         100%
03  Kernel_R11            100%
04  VxWorks_R11           100%
05  M3Image_R11           100%
06  DSP_R11               100%
07  Nvdload_R11           100%
08  System                100%
09  APP                   100%
10  Oeminfo               100%
11  CDROMISO              100%
12  WEBUI                 100%
 
 Перезагрузка модема...