Arduino Polska Forum

Pełna wersja: RSSI w HC-05
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam! Mam problem z odczytaniem wartości RSSI z modułu bluetooth HC-05. Urządzenie po komendzie AT+INQ zwraca mi wartość RSSI w takiej postaci: FFA8. Nie mam zielonego pojęcia jak to odczytywać i pokazywać w -dBm albo procentach.
Cześć. STOP. Nie widzimy kodu. STOP.
Pozdrawiam
Nie wrzucałem kodu, ponieważ nie uważałem, że jest do czegokolwiek tu potrzebny. Już załączam.

Program w Arduino
Kod:
char c = ' ';
byte AtmodePin = 2;
 
void setup() 
{
    pinMode(AtmodePin, OUTPUT);
    digitalWrite(AtmodePin, LOW);
    
    Serial.begin(9600);
    Serial.println("Serial 0 ON");
 
    Serial1.begin(9600);  
    Serial.println("Serial 1 ON");
}
 
void loop()
{
    if (Serial1.available())
    {  
        c = Serial1.read();
        Serial.write(c);
    }
 
    if (Serial.available())
    {
        c =  Serial.read();

        if (c == '#')
        {
          digitalWrite(AtmodePin, HIGH);
          Serial.print("AT mode ON. $ zeby wyjsc");
        }

        else if (c == '$')
        {
          digitalWrite(AtmodePin, LOW);
          Serial1.print("AT+RESET\n\r");
          Serial.print("AT+RESET\n\r");
        }

        else
        { 
        Serial.write(c);
        Serial1.write(c);  
        }
    }
 
}

Oraz wysyp z HC-05
Kod:
AT+INQ
+INQ:E4F8:EF:C17131,5A020C,FFC4
+INQ:E4F8:EF:C17131,5A020C,FFC0
+INQ:E4F8:EF:C17131,5A020C,FFB7
+INQ:E4F8:EF:C17131,5A020C,FFBF
+INQ:E4F8:EF:C17131,5A020C,FFBC
+INQ:E4F8:EF:C17131,5A020C,FFB7
+INQ:E4F8:EF:C17131,5A020C,FFC1
+INQ:E4F8:EF:C17131,5A020C,FFBE
+INQ:E4F8:EF:C17131,5A020C,FFC6
OK


Jeżeli potrzeba czegoś więcej to piszcie.
Witam
Znalazłem kiedyś opis, z którego wynika że ostatni parametr to siła sygnału właśnie :-) 
Różni producenci stosują tu różne zakresy wartości (hex) od FFB0 do FFFF. 
Jak to się ma do dB ??? Może wujek Google pomoże ?
De facto te wartości są ujemne zatem im większa liczba (hex) tym lepiej.
Jak korzystać z komend AT znajdziesz w datasheet, ale to pewnie wiesz doskonale.
Pozdrawiam
Dokładnie, ostatni parametr to siła sygnału ale nie wiem jak to poprawnie odczytywać. Po przekonwertowaniu hex do dec wychodzi ogromna liczba, nijak podobna do dBm. Google nic nie mówi. Spróbuję z zakresu, który podałeś stworzyć własny zakres, tylko nie wiem jakie są zakresy dla dBm.
Wychodzi ogromna liczba, jeśli wartośc hex potraktuje się jako unsigned int. A to jest zwykły int, czyli ze znakiem. W związku z tym FFC4 to dziesiętnie -60, czyli wartość jak najbardziej pasująca do dBm.