Aeon micro motor controller DSC14104


(Dennis Tegenbosch) #1

Hello,

I bought a Aeon micro motor controller DSC14104 for my roller shutters. But smartthings sees it as a dimmer. Now i think i need a custom device type, but i cannot seem to find it on this forum ( yes i tried :smile: ). At this moment it works for going up and down, but since it sees it as a switch/dimmer it will not stop half way down, like i should be able to use it.

Hope anyone can help me.


Curtain hardware information?
Curtain hardware information?
(Bruce) #2

I was just messing with one of these. Have you tried putting it into button mode? In button mode it should go down-stop-up-stop with successive button pushes.


(Dennis Tegenbosch) #3

@bravenel

Yes i tried button mode. But it works perfect when i press the button on the switch, but i’d like a device type for the switch. Then i van use it in the applike i want, since it just isn’t a dimmer and smartthings only gives me the options that belong to a dimmer (on/off and ‘how much %’)


(Bruce) #4

I found these commands. Will take a crack at a device controller.

UP: 0x26, 0x04, 0x60, 0x00
DOWN: 0x26, 0x04, 0x20, 0x00
STOP: 0x26, 0x05


(Dennis Tegenbosch) #5

Nice, thanks Bravenel. i’ll try to make a device type myself with these commands if theres not a existing one out there.


(Bruce) #6

I should have it done this morning. Not much to it really. Just have to add the command for stop().

What are you going to do for an app?


New Virtual Switch Request, Whole House fan speed control Hi/LOW
(Bruce) #7

Here is the device type for it, in Github. It has three new commands: up(), down() and stop(). I have tested it with the real device and it works. I used a modified version of Button Controller to allow one button on a Minimote to control it, where each successive button push steps through up() stop() down() stop(). After you add the device to ST, go into the IDE and change it’s type to Aeon Motor Controller.


Motor controller that work with st
Motorized Roller Shades options
(Bruce) #8

Here are a couple of screenshots of the device:


(Tim Slagle) #9

Love these forums. Always pumping out awesome stuff!!!


(dennis) #10

Thanks Bravenel,

You just made what i was looking for, credits for being awesome :smile: also just saw your pm, sorry for the late response.
I am currently building my home, so i don’t have much time for programming or being very active.

Thanks once again, i will be using this!


(Martin Jersonsky) #11

I am new to smartthings, how do I use this file?


(Bruce) #12

You install the custom device type in the IDE (https://graph.api.smartthings.com), in My Device Types, and Publish it (For me). Then after you have added the DSC14104 motor controller into your system, again in the IDE under My Devices, you edit its Type to be Aeon Motor Controller (that’s the custom device type you installed in the first step). After that, you will need an app to control it, such as Button Controller+, which you can find on my Github:
https://github.com/bravenel/SmartThings/blob/master/Button%20Controller%2B


(Dennis Tegenbosch) #13

@bravenel I have a problem with the aeon micro motor controller. I am using your devicetype, but when i use the sunset/sunrise smartapp, i cannot pick the devicetype you made. Since i then i can only choose for switches. I have the same problem with Sharptools, which i use with tasker to let the roller shutters (which the aeon micro motor controller is attached to) go up or down on voice command. I hope you can help me :smile:


(Bruce) #14

What you need to do is make a modified version of the sunset/sunrise smartapp that allows for that device type instead of or in addition to switches. The device type you need is capability.doorControl.

Another way would be to use virtual switches as intermediaries, with an app that maps the virtual switches into the motor controller.

Send me a PM if you need more help.


(Bruce) #15

Since you have more than one SmartApp that you want to control the shades, this little app below allows you to use two Momentary Button Tiles (which you can create in the IDE), one for Up and one for Down. Then you can use these virtual switches in the apps that you want to control the motor controller. All of this assumes that you don’t need to use the Stop command. I haven’t tested this, but it should work. Check it out and let me know.

Note: in each case you want to turn On the virtual switch to cause the motor to run Up or Down.

/**
 *  Virtual Shade Mapper
 *
 *  Copyright 2015 Bruce Ravenel
 *
 *  Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 *  in compliance with the License. You may obtain a copy of the License at:
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
 *  on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
 *  for the specific language governing permissions and limitations under the License.
 *
 */
definition(
    name: "Virtual Shade Mapper",
    namespace: "bravenel",
    author: "Bruce Ravenel",
    description: "Use virtual switches to control Aeon motor controller",
    category: "Convenience",
    iconUrl: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience.png",
    iconX2Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png",
    iconX3Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png")


preferences {
	section("Select the motor controller") {
            input "motor", "capability.doorControl", title: "Which one?", required: true
	}
    
    section("Select the virtual switches") {
            input "upSwitch", "capability.switch", title: "Which switch for Up?", required: true
            input "downSwitch", "capability.switch", title: "Which switch for Down?", required: true
    }
}

def installed() {
	initialize()
}

def updated() {
	unsubscribe()
	initialize()
}

def initialize() {
    subscribe(upSwitch, "switch.on", upHandler)
    subscribe(downSwitch, "switch.on", downHandler)
}

def upHandler(evt) {
	motor.up()
}

def downHandler(evt) {
	motor.down()
}

Curtain hardware information?
(Dennis Tegenbosch) #16

@bravenel /Bruce, you are amazing!
Fast reply and a perfect solution. I tried it as soon as i came home and it works. I now also understand the use of virtual switches. it works for the sharptools & Sunset app, since it are switches now. Once again, thanks!


(Bruce) #17

Thanks!

Upon further thought, I just added capability “Switch” to the device type. device.on() is the same as device.up(), and device.off() is device.down(). This way, the device can be included directly into Hello Home phrases, shortcut actions, Sunrise/Sunset, and other apps where all you need is up and down functionality.

Source is on Github:


(Dennis Tegenbosch) #18

Hi Bruce,

I tested it and it works! This is indeed better since i have 3 motor controllers and thus would have 6 virtual switches. I am very grateful for your help :smile: it also gave me a better insight in how to program with smartthings.
Thanks Bruce!


(Ahmad) #19

from where did you get it ?


(Bruce) #20

I got mine from this site:

Aeon Micro Motor Controller at zwaveproducts.com