[Edge drivers] Modifying a driver from another developer (having the source files)

Hi, @Mariano_Colmenarejo , could you please add:
id: “Interfree-switch-4”
deviceLabel: Interfree 4 Gang
manufacturer: Interfree
model: XSSW4O
deviceProfileName: single-switch

Hi @LG0000

Sorry, This is a 4 gang switch or a single-switch?

4 gang switch

Warning: edge:channels:invitations:create is not a smartthings command.

Do you know why?


smartthings edge:drivers:publish

I follow this tutorial. When I go through the following steps, I will be prompted as follows

Hi @LG0000

Added to this driver version

 Name         Zigbee Multi Switch and Child Mc     
 Version      2022-11-11T19:08:12.526440454        
  - id: "Interfree/XSSW4O"
    deviceLabel: Interfree 4 Switch
    manufacturer: Interfree
    model: XSSW4O
    deviceProfileName: four-switch

I write command in this way

PS C:\Users\Mariano\smartthings> .\smartthings edge:channels:invitations:create

I have reached this step, which is normal under this path. It’s just that those two orders didn’t work

Hi @LG0000

If you have packaged your driver from my github code, that code is not up to date with the latest changes.

i will update it

Thank you. I see what you mean. Even in your previous version, I still cannot execute those two commands. I don’t know whether it is related to my version. This is the latest version I downloaded today

In addition, when can I test the device you just added for me? I just failed the test.

The github code is already updated with your device

If you want to install it from my pre-packaged channel, you can do it from the CLI with this command:
.\smartthings edge:drivers:install

Follow the instructions on the screen

Thank you. I’ve tried this too, but it seems that the execution result is not my new addition, but the default smartthing


You can only publish the drivers that you package in a channel of your property.

first pack the code
then publish your driver on your channel
Then install the driver on your hub from your channel or whatever channel your hub is enrolled to

We can tag @nayelyz to see the error of the publish command

Hi, @LG0000. Thanks for the tag, @Mariano_Colmenarejo!

It seems the publish command was removed, I’ll confirm that so we can update the tutorial.
You can use the assign command instead:

smartthings edge:channels:assign

Also, there’s a direct command to package, assign to a channel and install the driver:

smartthings edge:drivers:package [path_to_driverDirectory] --channel=channelId --hub=hubId

//To get the channel ID:
smartthings edge:channels
//To get the Hub's ID:
smartthings devices --type=HUB
1 Like

I think that happened in the very latest build as I was only reading the PR two or three days ago. All the aliases for commands have been removed. I think that is a good idea as there was just too much clutter in the help menus, and also when there are two ways of doing something people might assume they are different.

Update: Actually it made it into the last but one build.three days ago, and there was another one yesterday taking it out of beta. Well done to the team for that.

OK, thank you very much for your answer. I will try your suggestions, and I will reply to you in case of success or failure. So that the follow-up can also be used as a reference.!

In addition, I found that there is no driver in my custom list.
But your driver is available and can be installed
Is it because I’m missing something? Or where is it not understood correctly? I wonder if you can see the problem

The attempt was unsuccessful according to your method, as shown in the figure. Or I may not have grasped your meaning.

Thank you very much. I have successfully installed the driver to my device through this command.
smartthings edge:drivers:package [path_to_dir] --channel=ChannelID --hub=HubID

However, when sharing my driver, the following prompt appears: What is wrong with my operation?

Hi @LG0000

I think URL must be smartthings.com.

I can acces to my files now

According to your tips, it is not successful here

? Invitation name: my driver
? Invitation description: no
? Invitation owner: me
? Invitation termsUrl: smartthings.com
Can I customize the first three

Hello, here is another question.
Your routine creates 4 sub buttons for each four switch. There is only one switch icon on the APP.
Is there a routine that directly displays the four switch icons, such as the four on switch 1, four on switch 2, four on switch 3, and four on switch 4
I hope I can express my problems clearly

You have to enter the device settings menu and create the independent devices you need