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

Switches connected to Telldus Live through TelldusCenter do not work #1

Closed
pkempe opened this issue Nov 18, 2015 · 37 comments
Closed

Comments

@pkempe
Copy link

pkempe commented Nov 18, 2015

I have a couple of self-learning Nexa switches that I connect to Telldus live using a Tellstick Duo. The switches appear all right in Telldus Live. When starting homebridge, I get the log message

'Device "Fönsterlampa" is defined with unsupported model type "unknown", please contact developer or add it yourself and make a pull request.'

Using TelldusCenter 2.1.2 on Mac OS X Yosemite.

@johnlemonse
Copy link
Owner

I've seen this issue before but never been able reproduce it myself since I don't have any of those devices. However I've tried my best to reproduce it and make it as simple as possible for you to solve.

There is a branch called "unknown-model-support" which I would like you to try. It will be used for updates until it works.

Please follow these instructions to remove the old version and install the branch:

$ sudo npm remove -g homebridge-telldus
$ sudo npm install -g git+https://github.com/jchnlemon/homebridge-telldus.git#unknown-model-support

Hopefully you should see something like this:

homebridge-telldus@0.0.3 /usr/local/lib/node_modules/homebridge-telldus
└── telldus-live@0.2.1 (underscore@1.5.1, oauth@0.9.14)

Next step is to start homebridge (should result in the same issue that you saw earlier)

$ homebridge
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
...
...
Loaded plugin: homebridge-telldus
Registering platform 'homebridge-telldus.Telldus'
---
Loaded config.json with 0 accessories and 1 platforms.
---
Loading 1 platforms...
[Telldus Live] Initializing Telldus platform...
[Telldus Live] Loading devices...
Loading 0 accessories...
[Telldus Live] Logged in with user: your@email.com
[Telldus Live] Found 1 devices.
[Telldus Live] Device "Test" could not be mapped to homebridge-telldus. Device information:
{"device":{"id":"968078","name":"Test","state":"2","statevalue":null,"methods":"4","type":"device","client":"132686","protocol":"arctech","model":"selflearning-bell:nexa","online":"1","editable":1,"parameter":[{"name":"house","value":"46421036"},{"name":"unit","value":"1"}],"status":"off"},"name":"Test","id":"968078","model":"selflearning-bell","manufacturer":"nexa"}

Now to the solution that might work. I've added support for a field called "unknown_accessories" : [ ] in config.json, add that to you config-file. The purpose for this field is to define these "unknown" devices to map against a HomeKit service such as lightbulb, doorbell etc... Each device should be defined with id(found in the printed logs on start) and model (see supported models below). For this example (with the printed info above) we should have something like this:

{
"platform": "Telldus",
"name": "Telldus Liv!e",
"public_key": "telldus public key",
"private_key": "telldus private key",
"token": "telldus token",
"token_secret": "telldus token secret",
"unknown_accessories": [
{
"id": 968078,
"model": "unknown-dimmer"
}
]
}

Supported models

This should be more flexible, but haven't had time to implement it so that it would be easy to define services with out having to use code.

  • unknown-switch - on and off
  • unknown-dimmer ´on and off, brightness

Please try this and come back to me if it works or not :)! (If it does not work please add the logs).

@pkempe
Copy link
Author

pkempe commented Nov 22, 2015

Following your instructions below does indeed make it work! The devices appear in the HomeKit app I use, and I can control them as expected. Cheers!

20 nov. 2015 kl. 01:43 skrev John Lemón notifications@github.com:

I've seen this issue before but never been able reproduce it myself since I don't have any of those devices. However I've tried my best to reproduce it and make it as simple as possible for you to solve.

There is a branch called "unknown-model-support" which I would like you to try. It will be used for updates until it works.

Please follow these instructions to remove the old version and install the branch:

$ sudo npm remove -g homebridge-telldus
$ sudo npm install -g git+https://github.com/jchnlemon/homebridge-telldus.git#unknown-model-support

Hopefully you should see something like this:

homebridge-telldus@0.0.3 /usr/local/lib/node_modules/homebridge-telldus
└── telldus-live@0.2.1 (underscore@1.5.1, oauth@0.9.14)

Next step is to start homebridge (should result in the same issue that you saw earlier)

$ homebridge
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
...
...
Loaded plugin: homebridge-telldus

Registering platform 'homebridge-telldus.Telldus'

Loaded config.json with 0 accessories and 1 platforms.

Loading 1 platforms...
[Telldus Live] Initializing Telldus platform...
[Telldus Live] Loading devices...
Loading 0 accessories...
[Telldus Live] Logged in with user: your@email.com
[Telldus Live] Found 1 devices.
[Telldus Live] Device "Test" could not be mapped to homebridge-telldus. Device information:
{"device":{"id":"968078","name":"Test","state":"2","statevalue":null,"methods":"4","type":"device","client":"132686","protocol":"arctech","model":"selflearning-bell:nexa","online":"1","editable":1,"parameter":[{"name":"house","value":"46421036"},{"name":"unit","value":"1"}],"status":"off"},"name":"Test","id":"968078","model":"selflearning-bell","manufacturer":"nexa"}

Now to the solution that might work. I've added support for a field called "unknown_accessories" : [ ] in config.json, add that to you config-file. The purpose for this field is to define these "unknown" devices to map against a HomeKit service such as lightbulb, doorbell etc... Each device should be defined with id(found in the printed logs on start) and model (see supported models below). For this example (with the printed info above) we should have something like this:

{
"platform": "Telldus",
"name": "Telldus Liv!e",
"public_key": "telldus public key",
"private_key": "telldus private key",
"token": "telldus token",
"token_secret": "telldus token secret",
"unknown_accessories": [
{
"id": 968078,
"model": "unknown-dimmer"
}
]
}

Supported models

This should be more flexible, but haven't had time to implement it so that it would be easy to define services with out having to use code.

unknown-switch - on and off
unknown-dimmer ´on and off, brightness
Please try this and come back to me if it works or not :)! (If it does not work please add the logs).


Reply to this email directly or view it on GitHub.

@johnlemonse
Copy link
Owner

Great! I'll try to make a better version of this later. It would be awesome if you could test it when it is ready.

@pkempe
Copy link
Author

pkempe commented Nov 25, 2015

Sure, just let me know when to do it!

22 nov 2015 kl. 10:41 skrev John Lemón notifications@github.com:

Great! I'll try to make a better version of this later. It would be awesome if you could test it when it is ready.


Reply to this email directly or view it on GitHub #1 (comment).

@tvillingett
Copy link
Contributor

This works fine for me, it only worked with the dimmer unit on the main branch, but with this all units worked.

@tvillingett
Copy link
Contributor

Now I have updated my setup with a Telldus Znet Lite, and the two units I have added to that one is not working:
Motorvärmare2 is a Fibaro Zwave device with power consumption, a FGWPF-102
The other is a normal 433.92MHz device, but mapped to the Znet lite device. I use both that and my old Telldus net, on the same location.

[Telldus Liv!e] Device "Motorvärmare2" could not be mapped to homebridge-telldus. Device information:
{"device":{"id":"1050875","name":"Motorvärmare2","state":"2","statevalue":null,"methods":"3","type":"device","client":"184080","protocol":null,"model":null,"online":"1","editable":1,"parameter":[],"status":"off"},"name":"Motorvärmare2","id":"1050875","model":"unknown","manufacturer":"unknown"}
[Telldus Liv!e] Device "Lysrör garage" could not be mapped to homebridge-telldus. Device information:
{"device":{"id":"1051218","name":"Lysrör garage","state":"2","statevalue":null,"methods":"3","type":"device","client":"184080","protocol":null,"model":null,"online":"1","editable":1,"parameter":[],"status":"off"},"name":"Lysrör garage","id":"1051218","model":"unknown","manufacturer":"unknown"}

It would be great if the power consumption could be taken care of from that switch. It is reported as a power value under sensors, and also together with the switch in the telldus live page now.

@gustafnilklint
Copy link

When is this issue going to be resolved "for real" or is this workaround the final solution?
I can confirm that it works if you manually add all the switches to the configuration.
But this is not dynamic to changes in the telldus setup.. it is cumbersome to manually update the config..

@johnlemonse
Copy link
Owner

As of now it will be in a separate branch since I haven't figured out a better solution and I'm not very happy with the current one. I will give this project some time end of September/beginning of October and if I can't figure out a better solution, then I will merge this solution. Unfortunately I think it is hard to make it more dynamic.

@SpareHook
Copy link

Does this mean that The unknown-model-support approach is The only Way to get this to work at The moment?

@johnlemonse
Copy link
Owner

Yes

@SpareHook
Copy link

Ive tried the above but all devices registers but they are all marked as "no answer" in homekit.
When I push any of the devices anyway I get something like "bool changed to 1" or "bool changed to 2"

Nothing else happens.

@SpareHook
Copy link

I installed eve on my phone and via eve everything seems to work.
But not via homekit app "home"

If I try to change anything like switching a dimmer on via Home (even if it says no response) I get "[Dimmer] Updated state int : 1".

But if I try sending a on command via Eve I get:
"[Dimmer] Executing command int : 1"

And it works.

So does this mean that the fault is within how home handles recive and transive commands?

@gustafnilklint
Copy link

@SpareHook I have the exact same issue with the "Home"-app. It works with siri and other homeKit apps.. Very Annoying!
But olavHaugen claims to have fixed this issue in his fork of this repository:
olavhaugen@360e811

@olavhaugen
Copy link

Removing the characteristic "get" handler solved it for me, but it was based more on trial and error than anything. A more solid solution would be better.

My fork repository (master branch) also have commits fixing some issues I had with dimming through the Home app. The code now works well with scenarios, but switching on a dimmer through the home app does not work. It had to be disabled in order to make the dimming work.

Well, this works for me, as I'm just using Scenarios, and not turning lights on or off manually. However, I was reluctant to create a pull request from my "experiments", as it still contains bugs.

johnlemonse pushed a commit that referenced this issue Oct 4, 2016
added one more temp sensor model
@mifi
Copy link
Collaborator

mifi commented Oct 9, 2016

Big pull request #11 has been merged now, so in master everything should be working now. I'm using this code with unknown dimmers and switches and its working fine.

npm install -g git+https://github.com/jchnlemon/homebridge-telldus.git
(NB requires node v4 now)

@metalic112
Copy link

Hi! I use this unsupported branch and it's been working great except getting "no answer" in the Home app (everything else including Siri works). I have my config configured as instructed above with the ID and type of unknown device. Love to get this going if possible.

Updating to the new master, I get the following error:
[Sat Oct 15 2016 15:05:16 GMT+0200 (CEST)] [Tells Live!] Found 16 devices in telldus live. [Sat Oct 15 2016 15:05:19 GMT+0200 (CEST)] [Tells Live!] Cannot read property 'split' of null Unhandled rejection TypeError: Cannot read property 'split' of null at Object.TelldusDevice (/usr/local/lib/node_modules/homebridge-telldus/index.js:76:35) at /usr/local/lib/node_modules/homebridge-telldus/index.js:124:46 at Array.map (native) at /usr/local/lib/node_modules/homebridge-telldus/index.js:124:32 at tryCatcher (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/promise.js:510:31) at Promise._settlePromise (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/promise.js:567:18) at Promise._settlePromise0 (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/promise.js:612:10) at Promise._settlePromises (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/promise.js:691:18) at Async._drainQueue (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/async.js:138:16) at Async._drainQueues (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/async.js:148:10) at Immediate.Async.drainQueues [as _onImmediate] (/usr/local/lib/node_modules/homebridge-telldus/node_modules/bluebird/js/release/async.js:17:14) at processImmediate [as _immediateCallback] (timers.js:368:17)

@mifi
Copy link
Collaborator

mifi commented Oct 15, 2016

Hi.
Can you install homebridge from my fork:
npm install -g git+https://github.com/mifi/homebridge-telldus.git

And then start homebridge with this environment variable like so:
DEBUG=homebridge-telldus homebridge
And share the log output here (especially the getDeviceInfo responses)

@gustafnilklint
Copy link

If I remember correct, you need to change your config file.
The devices used to be specified as "unknown-dimmer" and "unknown-switch". You need to change those into "selflearning-switch" "code-switch" etc.

@mifi
Copy link
Collaborator

mifi commented Oct 15, 2016

That's correct @gustafnilklint.
For example:
"unknown_accessories": [
{
"id": 1234,
"model": "selflearning-switch",
"manufacturer": "Nexa"
}
Valid models are currently: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity

However I don't think using the wrong model names should cause that error.

@metalic112
Copy link

So I ran with your fork mifi and now everything works fine. The home app is also showing the different lights. I'm attaching the complete log. Is there any difference in running your fork vs the master one?

homebridge-telldus getSensors response +0ms [ { id: '2412590', name: 'badrum', lastUpdated: 1476561001, ignored: 0, client: '138140', clientName: 'Hemma1', online: '1', editable: 0, battery: 254, keepHistory: 0, protocol: 'fineoffset', model: 'temperaturehumidity', sensorId: '167' }, { id: '3884268', name: 'inomhus', lastUpdated: 1476560938, ignored: 0, client: '138140', clientName: 'Hemma1', online: '1', editable: 0, battery: 254, keepHistory: 0, protocol: 'fineoffset', model: 'temperature', sensorId: '151' }, { id: '3884271', name: 'utomhus', lastUpdated: 1476561375, ignored: 0, client: '138140', clientName: 'Hemma1', online: '1', editable: 0, battery: 254, keepHistory: 0, protocol: 'fineoffset', model: 'temperature', sensorId: '152' } ] [Sat Oct 15 2016 21:57:32 GMT+0200 (CEST)] [Tells Live!] Found 3 sensors in telldus live. [Sat Oct 15 2016 21:57:32 GMT+0200 (CEST)] [Tells Live!] Filtered out 0 sensor due to empty name. homebridge-telldus getDevices response +339ms [ { id: '679361', clientDeviceId: '7', name: 'Alla lampor', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '815481', clientDeviceId: '12', name: 'Element', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '683515', clientDeviceId: '9', name: 'Fönster', state: 16, statevalue: '128', methods: 19, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'dim' }, { id: '1206549', clientDeviceId: '13', name: 'Fönster-Avpå', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '679360', clientDeviceId: '6', name: 'Garderob', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '1210732', clientDeviceId: '16', name: 'Garderob nedre', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '815480', clientDeviceId: '11', name: 'Kök', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '815443', clientDeviceId: '10', name: 'Nattlampa', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '679356', clientDeviceId: '2', name: 'Soffa', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '1210735', clientDeviceId: '17', name: 'T1', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '679362', clientDeviceId: '8', name: 'Taklampa', state: 1, statevalue: '178', methods: 19, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '679355', clientDeviceId: '1', name: 'Taklampa Hall', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '1206550', clientDeviceId: '14', name: 'Taklampa-Avpå', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '679359', clientDeviceId: '5', name: 'Tv', state: 2, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'off' }, { id: '1210730', clientDeviceId: '15', name: 'Vardagsbord', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' }, { id: '679358', clientDeviceId: '4', name: 'Vitrin', state: 1, statevalue: '0', methods: 3, type: 'device', client: '138140', clientName: 'Hemma1', online: '1', editable: 0, ignored: 0, status: 'on' } ] [Sat Oct 15 2016 21:57:33 GMT+0200 (CEST)] [Tells Live!] Found 16 devices in telldus live. homebridge-telldus getDeviceInfo response +3s { id: '679361', name: 'Alla lampor', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } homebridge-telldus getDeviceInfo response +20ms { id: '815481', name: 'Element', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +16ms { id: '683515', name: 'Fönster', state: '16', statevalue: '128', methods: '19', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'dim' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-dimmer homebridge-telldus getDeviceInfo response +16ms { id: '1206549', name: 'Fönster-Avpå', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +15ms { id: '679360', name: 'Garderob', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +16ms { id: '1210732', name: 'Garderob nedre', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +16ms { id: '815480', name: 'Kök', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +18ms { id: '815443', name: 'Nattlampa', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +17ms { id: '679356', name: 'Soffa', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +17ms { id: '1210735', name: 'T1', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +17ms { id: '679362', name: 'Taklampa', state: '1', statevalue: '178', methods: '19', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-dimmer homebridge-telldus getDeviceInfo response +18ms { id: '679355', name: 'Taklampa Hall', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +17ms { id: '1206550', name: 'Taklampa-Avpå', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:35 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +16ms { id: '679359', name: 'Tv', state: '2', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'off' } [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +18ms { id: '1210730', name: 'Vardagsbord', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch homebridge-telldus getDeviceInfo response +17ms { id: '679358', name: 'Vitrin', state: '1', statevalue: '0', methods: '3', type: 'device', client: '138140', protocol: null, model: null, online: '1', editable: 0, parameter: [], status: 'on' } [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Unknown accessory match found selflearning-switch [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'badrum'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] [badrum] Your device (model temperaturehumidity, id 2412590) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): "unknown_accessories": [{ "id": 2412590, "model": "MODEL", "manufacturer": "unknown" }] Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'inomhus'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] [inomhus] Your device (model temperature, id 3884268) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): "unknown_accessories": [{ "id": 3884268, "model": "MODEL", "manufacturer": "unknown" }] Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'utomhus'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] [utomhus] Your device (model temperature, id 3884271) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): "unknown_accessories": [{ "id": 3884271, "model": "MODEL", "manufacturer": "unknown" }] Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Alla lampor'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] [Alla lampor] Your device (model null, id 679361) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): "unknown_accessories": [{ "id": 679361, "model": "MODEL", "manufacturer": "unknown" }] Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Element'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Fönster'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Fönster-Avpå'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Garderob'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Garderob nedre'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Kök'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Nattlampa'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Soffa'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'T1'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Taklampa'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Taklampa Hall'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Taklampa-Avpå'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Tv'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Vardagsbord'... [Sat Oct 15 2016 21:57:36 GMT+0200 (CEST)] [Tells Live!] Initializing platform accessory 'Vitrin'...

@mifi
Copy link
Collaborator

mifi commented Oct 15, 2016

Yes. In my fork, in addition to adding optional debug output, I added a fix for model=null from the telldus api, which is the problem in your case. In my case model field from telldus api shows "n/a", dunno why it's different. So now it will no longer crash with model=null.
I updated the fork now so it should auto detect sensors too. (temperature and temperaturehumidity, so you don't need them in your unknown_accessories)
I made a pull request #19

@mifi mifi mentioned this issue Oct 15, 2016
@metalic112
Copy link

Wow great support! Thanks! I'll run with your fork in the meanwhile.

@napthemax
Copy link

Your fork works great without "unknown_accessories" except for Oregon Scientific temperature/humidity sensor THGN132N. It reports being a '1A2D'

This is my result: [Veranda] Your device (model 1A2D, id xxxxxxx) is not auto detected from telldus live ...

I understand that 1A2D is not of the "valid models" so I'm just asking if you know if it is possible to set it up properly?

@mifi
Copy link
Collaborator

mifi commented Oct 20, 2016

Have you tried added your accessory to unknown_accessories with model: "temperaturehumidity" ?

@napthemax
Copy link

napthemax commented Oct 20, 2016

This in config.json:

"unknown_accessories": [
                        {
                        "id": "4878760",
                        "model": "temperaturehumidity",
                        "manufacturer": "Oregon"
                        }
                        ],

Still gets (I had this before your fork. Didn't work then either ...) :

[Veranda] Your device (model 1A2D, id 4878760) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer):
"unknown_accessories": [{ "id": 4878760, "model": "MODEL", "manufacturer": "unknown" }]
Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity

@matsekberg
Copy link

matsekberg commented Oct 23, 2016

I have the same problem. Sensors not working.
Get this in the log:

Oct 23 12:07:10 rpi1 homebridge[1476]: [2016-10-23 12:07:10] [Telldus Liv!e] [Hallen] Your device (model temperaturehumidity, id 2256277) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): Oct 23 12:07:10 rpi1 homebridge[1476]: "unknown_accessories": [{ "id": 2256277, "model": "MODEL", "manufacturer": "unknown" }] Oct 23 12:07:10 rpi1 homebridge[1476]: Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity Oct 23 12:07:10 rpi1 homebridge[1476]: [2016-10-23 12:07:10] [Telldus Liv!e] Initializing platform accessory 'Krypgrund'... Oct 23 12:07:10 rpi1 homebridge[1476]: [2016-10-23 12:07:10] [Telldus Liv!e] [Krypgrund] Your device (model temperaturehumidity, id 2212899) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): Oct 23 12:07:10 rpi1 homebridge[1476]: "unknown_accessories": [{ "id": 2212899, "model": "MODEL", "manufacturer": "unknown" }] Oct 23 12:07:10 rpi1 homebridge[1476]: Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity Oct 23 12:07:10 rpi1 homebridge[1476]: [2016-10-23 12:07:10] [Telldus Liv!e] Initializing platform accessory 'Ölkyl'... Oct 23 12:07:10 rpi1 homebridge[1476]: [2016-10-23 12:07:10] [Telldus Liv!e] [Ölkyl] Your device (model temperaturehumidity, id 2318971) is not auto detected from telldus live. Please add the following to your config, under telldus platform (replace MODEL with a valid type, and optionally set manufacturer): Oct 23 12:07:10 rpi1 homebridge[1476]: "unknown_accessories": [{ "id": 2318971, "model": "MODEL", "manufacturer": "unknown" }] Oct 23 12:07:10 rpi1 homebridge[1476]: Valid models are: selflearning-switch, codeswitch, selflearning-dimmer, temperature, EA4C, temperaturehumidity

And I havre this in config.json:

"unknown_accessories": [ { "id": 2318971, "model": "temperature", "manufacturer": "ClasO1" }, { "id": 2212899, "model": "temperaturehumidity", "manufacturer": "ClasO2" }, { "id": 2256277, "model": "temperaturehumidity", "manufacturer": "ClasO3" } ],

Latest node.js, 0.0.4 homebridge-telldus, 0.4.5 homebridge.

UPDATE:

It works with: npm install -g git+https://github.com/jchnlemon/homebridge-telldus.git

Update 2:

It works without any config in config.json !!

@napthemax
Copy link

UPDATE:
It works with: npm install -g git+https://github.com/jchnlemon/homebridge-telldus.git

Update 2:
It works without any config in config.json !!

For EA4C (guess that's fineoffset protocol), all works for me too with the mifi fork. 1A2D, Oregon protocol does not. Not with mifi, nor with jchnlemon. Unfortunately.

@mifi
Copy link
Collaborator

mifi commented Oct 23, 2016

Please post telldus api response (see comment above about DEBUG env variable)

@napthemax
Copy link

DEBUG file attached. I now have everything working except the '1A2D' Oregon sensors with your 'mifi' fork.

Did try a workaround found on Telldus (http://forum.telldus.com/viewtopic.php?f=1&t=6129&start=30#p34172) but my index.js looks different from the one referenced, so I'm keeping my hopes on you ;-)

HomebridgeDEBUG.pdf

@mifi
Copy link
Collaborator

mifi commented Oct 24, 2016

I added the definition for the 1A2D sensor in the code on my fork now, so it should work now if you do a reinstall.

As for why it's not working when you were defining the 1A2D sensors as temperaturehumidity in unknown_devices, that I cannot explain. Did you add ALL the unknown 1A2D's like this?

"unknown_accessories": [
{ "id": 8588095, "model": "temperaturehumidity", "manufacturer": "unknown" },
{ "id": 2545592, "model": "temperaturehumidity", "manufacturer": "unknown" },
{ "id": 4878760, "model": "temperaturehumidity", "manufacturer": "unknown" },
{ "id": 3311973, "model": "temperaturehumidity", "manufacturer": "unknown" },
{ "id": 8617635, "model": "temperaturehumidity", "manufacturer": "unknown" }
]

@napthemax
Copy link

Yes, I had all of them in the "unknown_accessories" when I started looking into this (at least with an older version of homebridge-telldus).

But anyway, with your latest update all '1A2D' sensors works like a charm in homebridge! Many thanks! Just bring your updated code into the master, and I guess more users will enjoy having Oregon sensors '1A2D' working.

@mifi
Copy link
Collaborator

mifi commented Oct 24, 2016

Great. I have a pending pull request which now also includes the 1A2D, but someone needs to merge it. Maybe someone could give me admin access to this project. I'd be happy to maintain it. If not I could instead publish my fork to npm under another name.
We should also close this issue when the pull request is merged and a new version is published.

@napthemax
Copy link

napthemax commented Oct 24, 2016

Perfect. Now we only need a way to implement Telldus Live->homebridge-telldus with multiple homes. I have a summer house and but those sensors and switches appears where I run the server, i.e. at home. They appear (see sensors and switches with a dot before the name in my DEBUG above), but I would like to sort them under another home in HomeKit). If you also find a solution to that, I'll buy you a coffee ;-)

@johnlemonse
Copy link
Owner

@mifi I've added you as an admin to this project. Awesome if you could help out since I don't have that much time.

@mifi
Copy link
Collaborator

mifi commented Oct 27, 2016

Thanks, will you also add me to npm (user mifi) so I can publish new versions or do you want to have responsibility for that?
@napthemax I'm not sure how multiple homes work in HomeKit, so I'm not sure how this would be solved.

@napthemax
Copy link

I'm not sure how multiple homes work in HomeKit, so I'm not sure how this would be solved.

Don't know either, but in Telldus Live they are defined as "places" in the web interface. In homebridge-telldus, all devices in all places comes in one list ("predefined room"?) instead of sorted by place. I'll search the Telldus Wiki for information and let you know. I can't see that setting up another bridge would solve the problem either, the only way would be to create another Tells Live account and move one place to that account, loosing any Pro functionality.

[Maybe this discussion should be in a new development thread instead of the (non related) issue we are writing in now]

@mifi
Copy link
Collaborator

mifi commented Nov 1, 2016

Indeed, feel free to make a new issue. I'm closing this.

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

10 participants