ssh через последовательный порт с raspberry pi

Я пытаюсь использовать мой raspberry pi через последовательную связь с моим ноутбуком ubuntu, как в этом учебнике.

Я убедился, что:

  • /boot/config. txt в моем raspberry pi есть строка enable_uart=1 внизу
  • Проводка правильная (кабель TX в RX raspi, и наоборот)
  • Raspi загружается и зеленый индикатор мигает
  • Я могу получить доступ к pi с помощью ssh через wifi
  • На моем ноутбуке установлены screen и minicom

На моем ноутбуке я пытался найти, какие порты usb работают (dmesg | grep tty) Я получил следующее возвращение, которое заставило меня поверить, что мой raspi подключен к /dev/ttyUSB0:

console [tty0] enabled ttyS4 at I/O 0x4060 (irq = 19, base_baud = 115200) is a 16550A pl2303 converter now attached to ttyUSB0 ttyS5 at MMIO 0x4010002000 (irq = 20, base_baud = 7500000) is a 16550A pl2303 converter now disconnected from ttyUSB0 pl2303 converter now attached to ttyUSB0

Проблема:

Когда я открываю экран (sudo screen /dev/ttyUSB0 115200), появляется пустой экран терминала и ничего не меняется. Я пробовал нажимать enter и переподключать raspi. Я также пробовал использовать minicom, с теми же результатами.

При попытке cat /dev/ttyUSB0, я получаю device or resource busy error

Также я использую ubuntu 20.04 на ноутбуке и raspian на raspberry pi

Есть ли у кого-нибудь предложения, как решить эту проблему? Работа вокруг проблемы (т.е. использование кабеля ethernet или wifi) не является вариантом, поскольку я использую raspberry pi zero (и тестирую на pi 4) и пытаюсь использовать кабельное соединение через контакты GPIO.

1
задан 20 April 2021 в 08:41

1 ответ

Десять лет назад я использовал аналогичный последовательный вход с использованием нуль-модемного кабеля (который отличается от обычного последовательного кабеля данных). Вот мои записи того времени о том, как установить успешное последовательное соединение. Надеюсь, они помогут:

На безголовом компьютере (сервере) откройте последовательный порт и оставьте его открытым.

# getty -L ttyS0 115200 vt100

На портативном компьютере с последовательным портом (клиентом) установите приложение экрана, затем используйте его в качестве эмулятора терминала для подключения через последовательный порт.

# apt-get install screen
# screen /dev/ttyS0 115200
  (Hit return once or twice)

Когда закончите с экраном, выйдите с помощью команды (CTRL + A, затем обратная косая черта)

Вы должны иметь возможность войти на сервер с клиента.

Если у вас возникли проблемы:

  • Убедитесь, что вы не запустили несколько сеансов screen (они мешают)
  • Убедитесь, что ни одна машина не запускает getty и screen на одном и том же порте (они мешают). Одна машина должна запускать getty, другая - screen.
  • Убедитесь, что обе стороны используют одинаковую скорость (115200). Эта настройка модема не поддерживает автоматическое согласование скорости!
  • Попробуйте изменить, какая служба запускается первой. После каждой попытки отключать и экран, и сервисы getty (но только getty, работающие на этом порте!)
0
ответ дан 23 April 2021 в 23:21

Другие вопросы по тегам:

Похожие вопросы: