Вопрос или проблема
Я хотел бы узнать, существует ли метод отключения последовательной консоли на Snappy? Я использую сборку для Raspberry Pi. Мне это нужно, потому что я должен использовать /dev/ttyAMA0 для связи с аппаратным модулем.
Я хотел бы узнать, существует ли метод отключения последовательной консоли на Snappy? Я использую сборку для Raspberry Pi. Мне это нужно, потому что я должен использовать /dev/ttyAMA0 для связи с аппаратным модулем.
Я думаю, вам нужно отключить системную службу serial-getty@ из /lib/systemd/system/[email protected]
Это то, что запускает другую службу, что приводит к созданию /dev/tty<…> для последовательной связи.
У нас пока нет полного решения с стороны Snappy Ubuntu Core, но, вероятно, вы можете временно обойти это, создав маску для службы systemd в /etc/systemd/system, пока мы не получим полноценную поддержку на самой платформе.
Это сработало для меня на BeagleBone с Snappy, но нужно запускать после перезагрузки:
% sudo service serial-getty@ttyO0 stop
Кроме того, согласно этой статье, на Raspberry Pi доступен как минимум один дополнительный последовательный порт.
Я не проверял это на Ubuntu Snappy, однако на Ubuntu Server файл cmdline.txt загружается из /boot/firmware вместо просто /boot.
Удалите терминал последовательного порта, отредактировав этот файл и удалив console=serial0,115200
, сохраните и перезагрузите.
Если вам нужно включить сам последовательный порт, вы можете добавить enable_uart=1
в /boot/firmware/usercfg.txt и перезагрузить.
Вы можете редактировать эти файлы, используя nano
, и вам нужно будет выполнить это с правами суперпользователя с помощью sudo
, например:
sudo nano /boot/firmware/usercfg.txt
sudo nano /boot/firmware/cmdline.txt
Нажмите Ctrl + X, чтобы выйти из Nano, он попросит вас подтвердить изменения, введите y
и нажмите enter.
В этой статье мы рассмотрим, как отключить последовательную консоль на Ubuntu Snappy, что необходимо для использования порта /dev/ttyAMA0
для связи с аппаратным модулем. Последовательная консоль по умолчанию может мешать, если вы хотите использовать последовательный порт для других задач.
Сначала вам нужно остановить службу serial-getty
, которая управляет последовательной консолью. Для этого выполните следующую команду:
sudo systemctl stop serial-getty@ttyAMA0.service
Эта команда остановит сервис на текущей сессии, но после перезагрузки он может снова запуститься. Поэтому важно также замаскировать его, чтобы предотвратить автоматический запуск.
Для того чтобы полностью отключить автоматический запуск службы serial-getty
, выполните команду маскировки:
sudo systemctl mask serial-getty@ttyAMA0.service
Эта команда предотвратит запуск службы serial-getty@ttyAMA0
при следующей загрузке системы.
Также необходимо внести изменения в файл конфигурации загрузки, чтобы удалить использование последовательного порта как консоли. На системах Snappy, как правило, файлы конфигурации загрузки находятся в /boot/firmware/
.
Откройте файл cmdline.txt
с помощью текстового редактора:
sudo nano /boot/firmware/cmdline.txt
Найдите строку, содержащую console=serial0,115200
и удалите этот параметр. Это отключит последовательную консоль.
Сохраните изменения, нажав Ctrl + X
, затем Y
и Enter
.
Если вы хотите включить последовательный порт для использования, убедитесь, что в файле usercfg.txt
указана строка enable_uart=1
. Откройте этот файл с помощью:
sudo nano /boot/firmware/usercfg.txt
Убедитесь, что строка enable_uart=1
присутствует и не закомментирована.
После внесения всех изменений перезагрузите Raspberry Pi:
sudo reboot
Выполнив эти шаги, вы отключите последовательную консоль на Ubuntu Snappy, что позволит использовать /dev/ttyAMA0
для связи с вашим аппаратным модулем. Убедитесь, что после перезагрузки система работает корректно и все необходимые параметры настроены для успешного использования последовательного порта.
Если у вас возникли дополнительные вопросы или проблемы, не стесняйтесь обращаться за помощью на форумы или в сообщества, посвященные работе с Raspberry Pi и Snappy Ubuntu.