Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remote enable with JB850SFSS #2

Open
iamralpht opened this issue Oct 8, 2014 · 2 comments
Open

Remote enable with JB850SFSS #2

iamralpht opened this issue Oct 8, 2014 · 2 comments

Comments

@iamralpht
Copy link

Hi!

I got a GreenBean and bought an oven to drive with it, but I'm having some trouble getting started. When I run the start-cooking.js sample it asks me to "enable remote", which I don't know how to do on my oven (there's no button to that effect; maybe it's a combo, but I don't know what it is). I tried doing a few writes without subscribing to remote control enable, and those didn't turn the oven on either. I subscribed to the oven state, and I can then see that when I try to write the state, I get called back with a state change where everything is zeroed out (i.e.: the write failed).

What do I need to do to get cooking remotely?

Here's my current test, derived from start-cooking.js:

var gea = require("gea-sdk");
var adapter = require("gea-adapter-usb");

var app = gea.configure({
    address: 0xcb
});

app.plugin(require("gea-plugin-range"));

app.bind(adapter, function (bus) {
    bus.once("range", function (range) {
        console.log("range version:", range.version.join("."));

        range.ovenConfiguration.subscribe(function(value) {
            console.log("oven configuration changed:", value);
        });
        range.upperOven.currentState.subscribe(function(value) {
            console.log("upper oven current state changed:", value);
        });
        range.upperOven.cookMode.subscribe(function(value) {
            console.log("upper oven cook mode changed:", value);
        });
        range.upperOven.cookMode.write({
            mode: 18,                    // convection bake no option
            cookTemperature: 350,        // degrees in fahrenheit
            cookHours: 1,                // number of hours
            cookMinutes: 0               // number of minutes
        });
    });
});

Here's the output it generates:

ralpht@darkstar:~/home/oven/node_modules/green-bean$ sudo node start-cooking.js 
range version: 0.5.2.0
upper oven cook mode changed: { mode: 0,
  cookTemperature: 0,
  cookHours: 0,
  cookMinutes: 0,
  probeTemperature: 0,
  delayHours: 0,
  delayMinutes: 0,
  twoTempTemperature: 0,
  twoTempHours: 0,
  twoTempMinutes: 0 }
upper oven cook mode changed: { mode: 0,
  cookTemperature: 0,
  cookHours: 0,
  cookMinutes: 0,
  probeTemperature: 0,
  delayHours: 0,
  delayMinutes: 0,
  twoTempTemperature: 0,
  twoTempHours: 0,
  twoTempMinutes: 0 }

@iamralpht
Copy link
Author

Actually, I see in the protocol specification document (to12) that there's an upper oven remote enable command that can be written. Is this not implemented in the gea-plugin-range code (because all the API documentation says that remote enable is read only...)

"i. Use “Upper Oven Remote Enable” ERD (0x510A) – e.g. write ERD and enable

  1. Sample data [Source Address, 0xF1 (ERD write), 0x01 (1 ERD), 0x51, 0x0A (ERD), 0x01 (size), 0x01 (enable)]"

@iamralpht
Copy link
Author

OK, I had no joy writing the oven enable command.

If I just observe, then I can use the buttons on the oven to turn on the upper oven. I see that when I press "START" the remote enable comes on -- but if I try to write any setting, then the oven immediately turns off again. It's as if my oven is speaking an older version of the protocol or something.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant