Hi,
ich bin etwas verwundert...
Via Brick Viewer 2.0.8 (OS X) stelle ich folgendes ein:
- House: 1 | Receiver: D
Umgerechnet nach Dezimal müsste das ergeben:
- House: 16 | Receiver: 2 (schlagt mich, wenn ich falsch liege...)
Via PHP Bindings 2.0.11 mit PHP 5.4.17 (cli), ebenfalls OS X, kann ich aber nur schalten mit:
- House: 1 | Receiver: 8
Kann mir das jemand erklären?
-----------------------------------
Weitere Beispiele:
Brick Viewer vs. PHP Bindings
H:2, R:D H:2, R:8
und jetzt der Knüller:
H:3, R:D H:4, R:8
Ideen wieso, weshalb, warum? Ich komm nicht drauf.
Mir blieb nicht's anderes übrig als alle House- und Receiver-Codes durchzuprobieren. Für alle die das auch machen wollen, copy&paste:
<?php
require_once('Tinkerforge/IPConnection.php');
require_once('Tinkerforge/BrickletRemoteSwitch.php');
use Tinkerforge\IPConnection;
use Tinkerforge\BrickletRemoteSwitch;
$host = 'localhost';
$port = 4223;
$uid = 'foobar'; // Change to your UID
$ipcon = new IPConnection(); // Create IP connection
$rs = new BrickletRemoteSwitch($uid, $ipcon); // Create device object
$ipcon->connect($host, $port); // Connect to brickd
// Don't use device before ipcon is connected
$house = 0;
$rec = -1;
function cb_demo($param='') {
global $rs, $house, $rec;
if ($house >= 31 && $rec >= 31) {
return; // alle codes durch
}
if ($rec < 31) {
$rec++;
} else {
if ($house < 31) {
$house++;
$rec = 0;
}
}
echo "switch: ".$house." :: ".$rec."\n";
$rs->switchSocket($house, $rec, BrickletRemoteSwitch::SWITCH_TO_ON);
}
$rs->registerCallback(BrickletRemoteSwitch::CALLBACK_SWITCHING_DONE, 'cb_demo');
cb_demo();
$ipcon->dispatchCallbacks(-1); // Dispatch callbacks forever
?>
Grüße
nItro
Edit: "Fehler" im Code korrigiert.