CentraLite Keypads

Once you publish the device type to yourself, following the instructions in the FAQ, then when a new device joins your network that has the exact “fingerprint” specified in that device type, smartthings will assign that device type to that new device.

If you joined a new device to your network and you have not yet published the device type to yourself, there won’t be any matching fingerprint. So the device will be joined, but it will just be a “thing”.

If you joined the device before you published the device type to your account

You can still go ahead and publish the device type to yourself after the device is joined, which is also the reason why you can paste in a new device type, or update the device type code, or change to a different version of the device type.

In that sequence, you then have to go to the individual devices listed under “my devices” in the IDE, edit its information, and manually change its Device type to the one that you actually want to use.

Anytime you remove the device from the network and then rejoin it, the first thing that smartthings will do is look to see if it has a device type with a matching fingerprint that is published to your account.

So if you do have to do the manual edit method, you might have to do that again anytime you take that particular device off the network and then rejoin it again. You don’t have to publish the device type to yourself again, it’s already in your account library. But you might have to go to your “my devices” list, find the entry for the device you’re working with, and manually change it to device type to the one that you wanted to use.

Or it may be that SmartThings will assign it correctly through the automatic process the next time. It really just depends on whether there was an exact fingerprint match. If the only reason you had to do it the first time was because you haven’t yet gotten around to publishing the device type to yourself, it should catch it automatically the second time. But if it doesn’t, you can always do the manual edit again.

(Actually, the most common reason why you would have to edit the IDE every time you rejoin the device is if there is an existing device type that has the right fingerprint, but you don’t want to use that one, you want to use a different one. That happens when the community comes up with a device type that has more features than the current official device type with that fingerprint. So in that sequence, the automatic process assigns it to one device type based on matching fingerprint, and then you go in and manually edit it to use a different one. )

SmartThings doesn’t care if you publish device types to your account that don’t have real devices to go with them. You’re just building a library of device types you might use.

So, you can publish device types to yourself all day long without having any physical devices to go with them. They just get added to your account and they’re sitting there waiting for a device to show up with a matching fingerprint.

When you do join a physical device to your network, SmartThings looks for a device type in your account library with that fingerprint. If it finds one, it uses that device type automatically. If it doesn’t find one, it still joins the device as a generic “thing” and then you have the option to go into the IDE and manually edit the device description to use the type you want to use.

Two possible sequences

So there are two different possible processes.

At the time you add a new device to your network, if there is already a device type handler published to your account library with a matching fingerprint, that will be automatically assigned to the new device.

But if there wasn’t already one with a matching fingerprint, or if for some reason you want to use a different one, you can go into the IDE and manually assign a device type to the device once the device joined.

Of course, you still have to have published the device type you want to use to your account library, but the point is you can do the sequence either way, either add the device type to your account library first and then join the physical device, or join the physical device, add the device type to your account library, and then manually edit the physical device’s information in the IDE to use that device type.

And as always, publishing a smart app is a different process than publishing a device type. So you need to make sure you put the right code in the right section. :sunglasses: