Próbuję przeprowadzić komunikację szeregową pomiędzy Ubuntu 12.04 a modułem Bluetooth bluetooth JY-MCU podłączonym do Arduino.Jak skonfigurować komunikację szeregową w Processing to/dev/rfcomm0
Stworzyłem tę konfigurację w pliku /etc/bluetooth/rfcomm.conf
rfcomm0 {
# # Automatically bind the device at startup
bind yes;
#
# # Bluetooth address of the device
device 00:12:11:19:08:54
# # RFCOMM channel for the connection
channel 1;
# # Description of the connection
comment "Linvor Bluetooth Module";
}
mogę używać kit do komunikowania się z rfcomm0 port szeregowy/dev/i to działa doskonale.
Jednak pomimo wielu prób po prostu nie mogę zobaczyć, jak utworzyć port szeregowy w przetwarzaniu, który działa w jakikolwiek sposób.
Na przykład:
println(Serial.list());
drukuje nic.
Gdybym wykonać:
String portName = "/dev/rfcomm0";
myPort = new Serial(this, portName, 9600);
println(myPort);
widzę to na monitorze:
[email protected]
Ale gdybym wtedy zadzwonić:
myPort.write('9');
uzyskać wyjątek:
java.lang.NullPointerException
at processing.serial.Serial.write(Serial.java:572)
...
Nie mogę zrozumieć, dlaczego to się nie udaje. Postępowałem zgodnie ze wszystkimi instrukcjami zawartymi w książce "Making Things Talk" Toma Igoe, ale to po prostu nie działa tak, jak mówi ...
Każda pomoc byłaby świetna!
Dzięki,
Bob
Czy można debugować, jeśli naprawdę utworzono myPort? Może coś wewnątrz myPort ma wartość zerową i daje wyjątek, gdy chcesz coś napisać. Spróbuj też użyć terminala po obu stronach, więc wiesz, że połączenie jest ustawione prawidłowo. Po stronie arduino możesz użyć innego urządzenia linuksowego, jeśli masz dostępne. –
Naprawdę nie mam pojęcia o przetwarzaniu ... Mogę komunikować się z Arduino, jeśli piszę rutynę w pythonie lub poprzez putty, ale po prostu w przetwarzaniu, co jest moim celem ... – gratefulfrog
Wydaje się, że jest to przetwarzanie, więc nie z tym niestety, niestety. Potrzebujesz uprawnień sudo/admin? Domyślam się, że wcześniej byłby to błąd, gdybyś tak zrobił. –