Goto page Previous 1, 2, 3 Next
Atlantis
Guest
Tue Oct 29, 2013 10:20 pm
W dniu 2013-10-29 07:20, Marek pisze:
Quote:
Może jednak moduł jest ustawiony na 19200 stąd cisza przy 9600...
Ok, dokonał się mały postęp. Początkowo faktycznie rozmawiałem z
zapomnianym modemem, który siedzi w tym laptopie. Na drugim porcie
panowała kompletna cisza. Zacząłem przełączać ustawienia prędkości,
kilka razy próbowałem poprawić połączenia na płytce stykowej (chociaż
wizualnie wszystko było z nimi w porządku) itd. Za którymś razem coś
zaskoczyło.
Teraz sytuacja wygląda następująco:
Łącze się HyperTerminalem albo BrayTerminalem tak jak do tej pory (9600
bps, 8 bitów danych, 1 bit stopu, brak parzystości). Gdy wpiszę komendę
"AT" natychmiast wyskakuje mi "OK". Moduł nie czeka na \r tylko
momentalnie wysyła odpowiedź. Sama odpowiedź też nie zawiera znaku nowej
linii ani powrotu karetki. Nie ma także echa. Po paru razach w terminalu
mam tylko coś takiego "OKOKOKOK".
Ze względu na takie zachowanie nie jestem w stanie skonfigurować modułu...
Natomiast jeśli połączę się z modułem od strony Androida, mogę w końcu
przesyłać znaki w obydwie strony.
Ktoś ma jakąś hipotezę, która tłumaczyłaby takie zachowanie?
Marek
Guest
Wed Oct 30, 2013 12:14 am
On Tue, 29 Oct 2013 22:20:10 +0100, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
Ktoś ma jakąś hipotezę, która tłumaczyłaby takie zachowanie?
Po takim zachowaniu niemiałbym kompletnie zaufania do
komputera/systemu (z naciskiem na system, bo faktycznie co biedny
komp winny) jaki używasz. Jesteś pewien że tylko Ty "gadasz" z tym
portem a nie wraz z jakimś softem który jest aktywny i np. skanuje
porty szukając modemow? Tłumaczyloby to nieoczekiwane kilkakrotne
OKOK.
Inna, bardzo luźna hipoteza, to być może jest niestabilność prędkości
przesyłania, Tobie się wydaje, że wysyłasz tylko AT a jednak uart
moduł odbiera coś więcej.
--
Marek
Jacek Radzikowski
Guest
Wed Oct 30, 2013 2:18 am
Atlantis wrote:
Quote:
W dniu 2013-10-29 07:20, Marek pisze:
[...]
Łącze się HyperTerminalem albo BrayTerminalem tak jak do tej pory (9600
bps, 8 bitów danych, 1 bit stopu, brak parzystości). Gdy wpiszę komendę
"AT" natychmiast wyskakuje mi "OK". Moduł nie czeka na \r tylko
momentalnie wysyła odpowiedź. Sama odpowiedź też nie zawiera znaku nowej
linii ani powrotu karetki. Nie ma także echa. Po paru razach w terminalu
mam tylko coś takiego "OKOKOKOK".
Ze względu na takie zachowanie nie jestem w stanie skonfigurować modułu...
Natomiast jeśli połączę się z modułem od strony Androida, mogę w końcu
przesyłać znaki w obydwie strony.
Ktoś ma jakąś hipotezę, która tłumaczyłaby takie zachowanie?
Tanie chińskie moduły BT wymagają żeby bardzo szybko im wpisywać polecenia.
Ten który miałem w rękach musiał mieć znaki podawane z przerwą nie większą
niż 0.3 czy 0.5 sekundy. Dłuższa przerwa oznaczała zakończenie wprowadzania.
Odpowiadał nie kończąc linii ani \n ani \r, czyli bardzo podobnie jak u
Ciebie. Wprowadzanie poleceń z klawiatury nie wchodziło w grę, natomiast
działało wpisanie tekstu w innym okienku (terminal, edytor, itp) i wklejenie
ze schowka. Sprawdź czy twój moduł też się tak nie zachowuje.
pzdr.
j.
Atlantis
Guest
Wed Oct 30, 2013 8:00 pm
W dniu 2013-10-30 02:18, Jacek Radzikowski pisze:
Quote:
Tanie chińskie moduły BT wymagają żeby bardzo szybko im wpisywać polecenia.
Ten który miałem w rękach musiał mieć znaki podawane z przerwą nie większą
niż 0.3 czy 0.5 sekundy. Dłuższa przerwa oznaczała zakończenie wprowadzania.
Odpowiadał nie kończąc linii ani \n ani \r, czyli bardzo podobnie jak u
Ciebie. Wprowadzanie poleceń z klawiatury nie wchodziło w grę, natomiast
działało wpisanie tekstu w innym okienku (terminal, edytor, itp) i wklejenie
ze schowka. Sprawdź czy twój moduł też się tak nie zachowuje.
Wygląda na to, że masz rację. Spróbowałem wysyłać dane przez Bray
Terminal, ale poprzez ręczne wpisywanie poszczególnych znaków, ale z
linijki "send". Okazuje się w dodatku, że ignorowane są komunikaty
wysyłane z \r na końcu. O końcu wprowadzania polecenia decyduje timeout.
Oczywiście jednak byłoby zbyt pięknie, gdyby to rozwiązało wszystkie
problemy. Wpisuję "AT" - dostaję "OK".
Wpisuję "ATE1". Nic.
Wpisuję "ATN?". Nic.
Wpisuję "ATN=Nazwa". Nic.
Wpisuję "ATL?". Nic.
Naszło mnie, żeby spróbować czegoś innego.
"AT+NAME?". Przychodzi odpowiedź: "OKsetname"
"AT+NAME=nazwa". To samo: "OKsetname".
Co z nim dalej zrobić. Nie wygląda mi to na BTM-112, przynajmniej biorąc
pod uwagę rozbieżności pomiędzy rzeczywistością, a spisem komend z
dokumentacji...
Atlantis
Guest
Wed Oct 30, 2013 8:08 pm
Ok, chyba znalazłem.
AT+VER dało mi punkt zaczepienia, od którego mogłem rozpocząć poszukiwania:
http://club.dx.com/forums/forums.dx/threadid.924057
Quote:
There is no /r/n at the end if you put them there it won't respond and seam to be dead!
The supported commands are:
AT+VERSION Returns the software version of the module
OKlinvorV1.5
AT+BAUDx Sets the baud rate of the module
The command AT+BAUD8 sets the
baud rate to 115200
1 >> 1200
2 >> 2400
3 >> 4800
4 >> 9600 (Default)
5 >> 19200
6 >> 38400
7 >> 57600
8 >> 115200
9 >> 230400
OK115200
AT+NAMEOpenPilot Sets the name of the module
Any name can be specified up to 20 characters
OKsetname
AT+PINxxxx Sets the pairing password of the device Any 4 digit number can be used, the default
pincode is 1234
OKsetPIN
AT+PN Sets the parity of the module
AT+PN >> No parity check
OK None
Marek
Guest
Wed Oct 30, 2013 11:30 pm
On Wed, 30 Oct 2013 20:00:04 +0100, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
"AT+NAME?". Przychodzi odpowiedź: "OKsetname"
Moim zdaniem masz cos zdrowo pochrzanione z komunikacja między
terminalem a modulem.
Urządzeń komunikujacych się po AT przerobiłem kilkadziesiąt ale żadne
nie zachowywało się w taki sposób że sklejalo z OK inny string, czy
nie czekało na CR na koncu polecenia. Bałagan w odpowiedzi sugeruje
że sa po drodze gubione albo przestawiane bajty , nie wierze że
moduł tak się zachowuje.
Nie wiem jakim dokumentem sie podilkujesz, al, skoro w nim piszą że
domyślna predkosc to 9600, to ten dokument nie dotyczy btm-112, te
moduły domyślnie mają 19200.
--
Marek
Grzegorz Niemirowski
Guest
Thu Oct 31, 2013 12:09 am
Atlantis <marekw1986NOSPAM@wp.pl> napisał(a):
Quote:
Co z nim dalej zrobić. Nie wygląda mi to na BTM-112, przynajmniej biorąc
pod uwagę rozbieżności pomiędzy rzeczywistością, a spisem komend z
dokumentacji...
Bo to nie ma nic wspólnego z BTM-112. Oszukali Cię na Allegro i wcisnęli
EGBT-046S (nalutowane na płytkę ze stabilizatorem).
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express:
http://www.grzegorz.net/oe/
Uptime: 17 days, 10 hours, 38 minutes and 59 seconds
Jacek Radzikowski
Guest
Thu Oct 31, 2013 3:42 am
Ja miałem DXowe HC05 i trzeba było z nimi rozmawiać przez copy+paste. Jak
już przez przebrnąłem nie miałem żadnych problemów z konfiguracją i
połączeniem z tabletem androidowym.
pzdr.
j.
Atlantis wrote:
Quote:
Ok, chyba znalazłem.
AT+VER dało mi punkt zaczepienia, od którego mogłem rozpocząć
poszukiwania:
http://club.dx.com/forums/forums.dx/threadid.924057
There is no /r/n at the end if you put them there it won't respond and
seam to be dead!
The supported commands are:
AT+VERSION Returns the software version of the module
OKlinvorV1.5
AT+BAUDx Sets the baud rate of the module
The command AT+BAUD8 sets the
baud rate to 115200
1 >> 1200
2 >> 2400
3 >> 4800
4 >> 9600 (Default)
5 >> 19200
6 >> 38400
7 >> 57600
8 >> 115200
9 >> 230400
OK115200
AT+NAMEOpenPilot Sets the name of the module
Any name can be specified up to 20 characters
OKsetname
AT+PINxxxx Sets the pairing password of the device Any 4 digit number can
be used, the default pincode is 1234
OKsetPIN
AT+PN Sets the parity of the module
AT+PN >> No parity check
OK None
Atlantis
Guest
Thu Oct 31, 2013 7:13 pm
W dniu 2013-10-30 00:14, Marek pisze:
Quote:
Tłumaczyloby to nieoczekiwane kilkakrotne OKOK.
Nie rozumiesz. Kilkakrotne "OK" nie jest wcale nieoczekiwane. Jest
odpowiedzią na KILKAKROTNIE wpisane przeze mnie "AT". Nic nie pojawia
się samo z siebie. Po prostu kolejne komunikaty są ze sobą sklejane, a
sam moduł również nie przyjmuje komend zakończonych \r. Timeout jest
jedynym sposobem potwierdzenia polecenia.
Atlantis
Guest
Thu Oct 31, 2013 7:21 pm
W dniu 2013-10-30 23:30, Marek pisze:
Quote:
Moim zdaniem masz cos zdrowo pochrzanione z komunikacja między
terminalem a modulem.
Szczerze wątpię. Po zestawieniu połączenia między modułem a smartfonem
komendy przechodzą w obydwie strony bez żadnych problemów, nie ma
żadnych przekłamań transmisji, gubionych znaków ani pojawiających się
krzaczków.
W przypadku komend AT też występuje pełna powtarzalność. Za każdym
razem, na daną komendę moduł reaguje dokładnie w taki sam sposób. Po
prostu reaguje inaczej niż wynikałoby to ze spisu dla BTM-112, więc jak
już ktoś stwierdził - sprzedano mi inny model. ;)
Quote:
Urządzeń komunikujacych się po AT przerobiłem kilkadziesiąt ale
żadne nie zachowywało się w taki sposób że sklejalo z OK inny
string, czy nie czekało na CR na koncu polecenia.
Nic nie poradzę na to, że ten się tak właśnie zachowuje.
Quote:
Bałagan w odpowiedzi sugeruje że sa po drodze gubione albo
Bałaganu tam nie ma. Jest pełna powtarzalność i da się nad tym
zapanować, po prostu sposób sterowania jest jakiś taki dziwny, zupełnie
inny niż w BTM-112.
Quote:
jakim dokumentem sie podilkujesz, al, skoro w nim piszą że domyślna
predkosc to 9600, to ten dokument nie dotyczy btm-112, te moduły
domyślnie mają 19200.
Parametry transmisji (9600 bps, 8 bitów danych, 1 bit stopu, brak
parzystości) były wymienione w opisie aukcji. Próbowałem też kilku
innych prędkości, m.in. 19200 bps, ale wtedy nie było żadnego rezultatu.
Atlantis
Guest
Thu Oct 31, 2013 7:22 pm
W dniu 2013-10-31 00:09, Grzegorz Niemirowski pisze:
Quote:
Bo to nie ma nic wspólnego z BTM-112. Oszukali Cię na Allegro i wcisnęli
EGBT-046S (nalutowane na płytkę ze stabilizatorem).
To chyba jedyne logiczne wyjaśnienie. Trudno. Drogi nie był, a i tak
miał służyć głównie do eksperymentów i przetestowania paru koncepcji.
Marek
Guest
Thu Oct 31, 2013 10:47 pm
On Thu, 31 Oct 2013 19:13:32 +0100, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
Nie rozumiesz. Kilkakrotne "OK" nie jest wcale nieoczekiwane. Jest
żadne urządzenie nie może odpowiedziec OKOK, każde OK musi być
owiniete \r\nOK\r\n, więc nie da to na terminalu stringu "OKOK".
Jeśli jednak tak robi, to za samo łamanie standardu moduł należy
umieścić w pojemniku przeznaczonym na recycling sprzetu
elektronicznego.
--
Marek
J.F.
Guest
Thu Oct 31, 2013 11:53 pm
Dnia Thu, 31 Oct 2013 19:13:32 +0100, Atlantis napisał(a):
Quote:
W dniu 2013-10-30 00:14, Marek pisze:
Tłumaczyloby to nieoczekiwane kilkakrotne OKOK.
Nie rozumiesz. Kilkakrotne "OK" nie jest wcale nieoczekiwane. Jest
odpowiedzią na KILKAKROTNIE wpisane przeze mnie "AT". Nic nie pojawia
się samo z siebie. Po prostu kolejne komunikaty są ze sobą sklejane, a
sam moduł również nie przyjmuje komend zakończonych \r. Timeout jest
jedynym sposobem potwierdzenia polecenia.
A jak z parzystoscia ? No i z 7/8 bit ?
Bo tu moze byc jakis numer - nie rozpoznaje bo sie parzystosc nie
zgadza, ale echo odsyla i terminal dobrze pokazuje, choc 8-my bit
obcina.
J.
Atlantis
Guest
Fri Nov 01, 2013 7:51 am
W dniu 2013-10-31 23:53, J.F. pisze:
Quote:
A jak z parzystoscia ? No i z 7/8 bit ?
8 bitó danych, 1 bit stopu, brak parzystości.
Quote:
Bo tu moze byc jakis numer - nie rozpoznaje bo sie parzystosc nie
zgadza, ale echo odsyla i terminal dobrze pokazuje, choc 8-my bit
obcina.
Echa NIE odsyła. Sprawdzę inne ustawienia, chociaż ta hipoteza wydaje mi
się błędna. Gdyby tak było, to dlaczego po zestawieniu połączenia
bluetooth mam bezproblemową transmisję znaków w obydwie strony?
Wygląda na to, że on przyjmuje polecenia AT, po prostu ich format jest
jakiś taki "z kosmosu".
Grzegorz Niemirowski
Guest
Fri Nov 01, 2013 12:51 pm
Atlantis <marekw1986NOSPAM@wp.pl> napisał(a):
Quote:
Wygląda na to, że on przyjmuje polecenia AT, po prostu ich format jest
jakiś taki "z kosmosu".
No to czemu nie zapoznasz się z dokumentacją tego formatu? Podałem Ci
przecież jaki masz moduł, znalezienie do niego dokumentacji jest więc
trywialne:
http://www.rasmicro.com/Bluetooth/EGBT-045MS-046S%20Bluetooth%20Module%20Manual%20rev%201r0.pdf
Wszystko masz tam dokładnie opisane. Format nie jest bardzo kosmiczny, jego
kosmiczność głównie polega na plusach po AT:
AT+VERSION?
AT+NAME=Atlantis
Co do zakończeń linii:
Important note: All commands must be terminated
by <CR><LF>. If the host controller send a <CR>
only, EGBT-045MS will repeatedly send a respond
that will stop only when <LF> is issued by the host
controller
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express:
http://www.grzegorz.net/oe/
Uptime: 18 days, 23 hours, 9 minutes and 39 seconds
Goto page Previous 1, 2, 3 Next