LINUX.ORG.RU

консоль поверх rfcomm


0

1

Добрый день.

Имеется плата с АРМом и ПК. Связал их по блютусу, на уровне rfcomm. Если на плате cat /dev/rfcomm0, а на ПК в minicom на /dev/rfcomm0 печатать символы, они (символы) отображаются в терминале на плате. Всё ок, связь налажена.

Теперь хочу консоль на АРМе. Что куда нужно прописать, чтобы можно было зайти на плату в консоли через minicom на уровне rfcomm, подобно тому, как это делается через ttyS0?

Алексей.



Последнее исправление: alexvm (всего исправлений: 1)

/etc/inittab вестимо

ktk ★★★★
()
# Format:
#  <id>:<runlevels>:<action>:<process>
1:2345:respawn:/sbin/mingetty --noclear tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Example how to put a getty on a serial line (for a terminal).
#
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100

название файла уже подсказали. тут всё просто ;)

aol ★★★★★
()
Ответ на: комментарий от aol

добавил в inittab

# Put a getty on the serial port
rfcomm0::respawn:/sbin/getty -n -L /dev/rfcomm0 115200 vt100

ситуация не изменилась. cat /dev/rfcomm0 <> minicom /dev/rfcomm0 работает, в консоль не захожу...

alexvm
() автор топика
Ответ на: комментарий от alexvm

найди несколько отличий:

T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
rfcomm0::respawn:/sbin/getty -n -L /dev/rfcomm0 115200 vt100

и потом надо ребут или telinit -q, кажется

aol ★★★★★
()
Ответ на: комментарий от aol

у меня inittab сгенерирован buildroot'ом, я сделал по аналогии с ttyS0:

ttyPS0::respawn:/sbin/getty  -n -L ttyPS0 115200 vt100 # GENERIC_SERIAL
rfcomm0::respawn:/sbin/getty -n -L /dev/rfcomm0 115200 vt100 

ребут сделал, само собой...

alexvm
() автор топика
Ответ на: комментарий от alexvm

скорость твоего порта рфкомм действительно 115200? и терминал на такую настроен?


и что в ttyPS0 пишется или нет?

aol ★★★★★
()
Ответ на: комментарий от aol

aol

скорость твоего порта рфкомм действительно 115200? и терминал на > такую настроен?

и что в ttyPS0 пишется или нет?

скорость настроена правильно, cat /dev/rfcomm0 < minicom /dev/rfcomm0 и echo 'Hello world' > /dev/rfcomm0 > minicom /dev/rfcomm0 работает.

ttyPS0 работает правильно.

alexvm
() автор топика
Ответ на: комментарий от alexvm

CONFIG_BT_RFCOMM_TTY при компиляции ядра установлено.

alexvm
() автор топика
Ответ на: комментарий от alexvm

не то читаешь.
что пишется в ttyPS0 с новым иниттабом. жалоб нет? и в логах уточни.

и если уж «по аналогии», то "-L rfcomm0", а не так, как ты написал.

aol ★★★★★
()
Ответ на: комментарий от aol

понятно. В ttyPS0 после строки

Connected /dev/rfcomm0 to 00:xx:xx:xx:xx:EC on channel 1
Press CTRL-C for hangup

ничего не пишется, rfcomm крнсоль завешивает:

# who
root            pts/0           00:00   Jan  1 00:04:46  10.0.0.150

а в логах чего смотреть?

alexvm
() автор топика
Ответ на: комментарий от aol

гугли по словам getty rfcomm

это первое, что я сделал, ещё до того, как здесь вопрос задать ))

alexvm
() автор топика
Ответ на: комментарий от aol

добавил

start() {
        echo -n "Starting bluetoothd: "
        sleep 1
        hciconfig hci0 up piscan
        sleep 1
        bluetoothd        
        rfcomm bind all
        rfcomm release /dev/rfcomm0
        sleep 1
        rfcomm connect /dev/rfcomm0 #xx:xx:xx:xx:2A:EC


        while true;
            do
            rfcomm show rfcomm0 > /dev/null 2> /dev/null
            if [ "$?" != "1" ] ; then
                /sbin/getty -w -L rfcomm0 115200 vt100;
            fi
            sleep 1;
        done

        echo "OK"
}

в скрипт загрузки - не помогло...

alexvm
() автор топика
Ответ на: комментарий от alexvm

однако, если выкинуть

 rfcomm connect /dev/rfcomm0 #xx:xx:xx:xx:2A:EC

из скрипта, а делать это вручную, поле логина через телнет, то консоль появляется...

alexvm
() автор топика
Ответ на: комментарий от AptGet

почему не rfcomm listen? Только что попробовал запустить getty вручную на rfcomm0, консоль работает

поменял connect на listen, разницы нет. Консоль появляется, только если после логина по телнету вручную скомандовать rfcomm connect/listen. Похоже, при старте системы что-то не инициализируется, как надо...

alexvm
() автор топика
Ответ на: комментарий от alexvm

ещё интересный момент:

# rfcomm
rfcomm0: xx:xx:xx:xx:0A:57 -> xx:xx:xx:xx:2A:EC channel 1 connected [reuse-dlc release-on-hup tty-attached]

пишет, что tty attached, но в миникоме консоли нет.

alexvm
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.