Xbee will nicht!

Mmmm.
Bei mir geht ja alles.
Meinst du wenn ich einen neuen XBee anlege dann geht es nicht mehr?

Genau, so sollte es sein. Ich denke deine sind noch aus der Anfangszeit.

Hallo
Probieren wir mal einen anderen Weg ohne IPS!.
Kannst du mit X-CTU deinen XBee am Roomba remote
konfigurieren ? Also ueber Funk.
Wenn das geht funktioniert schon mal die Funkstrecke.
Wenn du den Roomba einschaltest sollte im Fenster Terminal
eine Meldung vom Roomba erscheinen:

Vielleicht kommen wir so weiter

Danke 1007,

aber ich komme erst am Dienstag wieder zum Roomba.
Bis dahin muss ich leider noch warten.

MFG Franz

So,

Xbee läuft nun mit dem Roomba. Es war doch ein Kabeldreher drin:D

Wenn ich den Roomba von Hand starte über die clean Taste und dann die Codes sende funktioniert es z.b.

$ID=11189;
RegVar_SendText($ID, chr(128)); //Start Command
IPS_Sleep (200);

RegVar_SendText($ID, chr(135));
?>

Will ich aber den Roomba aus dem Standby locken über den code 133 (Power)
reagiert er nicht.

MFG Franz

Denk dran fuer command 133 muss du im „Safe“ oder „Full“ mode sein.
Command 128 endet im „passive“ mode

Tag,

aus dem Standby wecken funktioniert nicht. Aber ist ja erstmal egal, da er ja beim laden in der Station eh an ist.

Könntet ihr mir bitte eine step by step Anleitung zukommen lassen, für das erstellen der Variablen und den Zusammenhang der Skripts. Um die Sensoren auslesen zu lassen.

Ich bin leider mit php noch nicht ganz soweit um das selber alles zu erstellen.:slight_smile:

Vielen Dank.

MFG Franz

Ich habe hier mal eine Anleitung geschrieben, wie es auf jedenfall mit XBee_SendBuffer geht.

Betrifft neu angelegte Instanz XBee!

Ist schon laenger her - weiss aber nicht mehr genau ob es aus
dem Standby ein zurueck gibt. Standby = keine Spannung am Xbee?

Fuer die sonstige Hilfe schreib mal eine PM.

Hab’ ich dir doch hier schon geschrieben,
wie du den Roomba zum Reinigen bewegen kannst, ohne vorher irgend etwas „von Hand“ zu machen:

Gruß,
Doc

Hi Doc,

ja hab es gesehen und getestet funktioniert. Danke

//Daten als dez-String auslesen 
$instr=GetValueString("WallE.RX"); 

//raus wenn nicht 80 Bytes 
$strlen = strlen($instr); 
if ($strlen <> 80) return; 

//String auflösen und prüfen der Daten 
$datenstr=""; 
for($i=0; $i<strlen($instr); $i++) { 
 $datenstr.=strtoupper(ord($instr{$i}))." "; 
    } 
SetValueString("WallE.Daten",$datenstr); //String ausgeben 
$Byte=""; 
$Byte = explode(" ",$datenstr); 

//========================================================================= 

//Anzeige Charging State 
$ChargingState = $Byte[16]; 
switch ($ChargingState) { 
case 0: 
   SetValueString("ChargingState", "Not Charging"); 
   break; 
case 1: 
   SetValueString("ChargingState", "Reconditioning Charging"); 
   break; 
case 2: 
   SetValueString("ChargingState", "Full Charging"); 
   break; 
case 3: 
   SetValueString("ChargingState", "Trickle Charging"); 
   break; 
case 4: 
   SetValueString("ChargingState", "Waiting"); 
   break; 
case 5: 
   SetValueString("ChargingState", "Charging Fault Condition"); 
   break; 
} 

//Anzeige Charging Source 
$ChargingSource = (INT)$Byte[39]; 
switch ($ChargingSource) { 
case 0: 
   SetValueString("ChargingSource", "No Charging Source"); 
   break; 
case 1: 
   SetValueString("ChargingSource", "Internal Charger"); 
   break; 
case 2: 
   SetValueString("ChargingSource", "Home Base"); 
   break; 
} 

//Anzeige OI Mode 
$OIMode = (INT)$Byte[40]; 
switch ($OIMode) { 
case 0: 
   SetValueString("OIMode", "Off"); 
   break; 
case 1: 
   SetValueString("OIMode", "Passive"); 
   break; 
case 2: 
   SetValueString("OIMode", "Safe"); 
   break; 
case 3: 
   SetValueString("OIMode", "Full"); 
   break; 
} 

// Anzeige des Stasis-Sensors 
SetValueBoolean("StasisSensor", (bool)$Byte[80]); 

//Berechnung der Batteriespannung 
$BatteryVoltage = ($Byte[17]<<8)+($Byte[18]); 
$BatteryVoltage=round(($BatteryVoltage / 1000), 1); 
SetValueFloat("BatteryVoltage", $BatteryVoltage); 
SetValueString("BatteryVoltage.Designer", $BatteryVoltage." Volt"); 

//Berechnung des Stroms aus Akku 
$BatteryCurrent = ($Byte[19]<<8) + $Byte[20]; 
if ($BatteryCurrent > 0x7fff) $BatteryCurrent |= 0xffff0000; 
SetValueInteger("BatteryCurrent", $BatteryCurrent); 
SetValueString("BatteryCurrent.Designer", $BatteryCurrent." mA"); 

//Berechnung der Restbatteriekapazität 
$BatteryCharge = ($Byte[22]<<8)+($Byte[23]); 
SetValueInteger("BatteryCharge", $BatteryCharge); 
SetValueString("BatteryCharge.Designer", $BatteryCharge." mAh"); 

//Berechnung der Batteriekapazität 
$BatteryCapacity = ($Byte[24]<<8)+($Byte[25]); 
SetValueInteger("BatteryCapacity", $BatteryCapacity); 
SetValueString("BatteryCapacity.Designer", $BatteryCapacity." mAh"); 

//Berechnung der Restbatteriekapazität in % 
$BatteryChargePercent = $BatteryCharge / $BatteryCapacity * 100; 
$BatteryChargePercent = round($BatteryChargePercent,1); 
SetValueFloat("BatteryChargePercent", $BatteryChargePercent); 
SetValueString("BatteryChargePercent.Designer", $BatteryChargePercent." %"); 

//Berechnung der Batterietemperatur 
$BatteryTemperature = (int)$Byte[21]; 
SetValueInteger("BatteryTemperature", $BatteryTemperature); 
SetValueString("BatteryTemperature.Designer", $BatteryTemperature." °C"); 

//Berechnung des zurückgelegten Weges seit letzter Abfrage in mm 
$Way = ($Byte[12]<<8) + $Byte[13]; 
if ($Way > 0x7fff) $Way |= 0xffff0000; 
 // Kompletter Weg 
//SetValueFloat("WayComplete", (GetValueFloat("WayComplete") + ($Way /1000))); 
SetValueFloat("WayComplete", $Way); 

//Berechnung des WallSensors (Analog) 
$WallSensorAnalog = ($Byte[26]<<8)+($Byte[27]); 
SetValueInteger("WallSensorAnalog", $WallSensorAnalog); 

//Berechnung des DirtSensors 
$DirtSensor = (int)$Byte[8]; 
SetValueInteger("DirtSensor", $DirtSensor);  

Was hat es denn mit den Variablen WallE.RX und WallE.Daten aufsich?

Muss ich nicht bei einer Register Variable mit Zielskript und puffer arbeiten?
Wenn ja wie schaut denn ein einfacher skript für die Auswertung der Sensoren aus?

Ich wäre euch sehr dankbar. Dieses PHP :frowning:

MFG Franz

Vielen Dank an alle,

wie man sieht habe ich es nun geschaft.

URL=http://img203.imageshack.us/i/roomba.jpg/]