GE Launches Seriously Cheap Wink Connected Bulb

I can’t get dimming to work with the few that I set up today. They connected just fine as Smart Power Outlets, but when I change them to the Zigbee Dimmer type, I lose all functionality. The one difference I’ve noticed is that my Hub is running firmware 000.011.00603, not 000.011.00705 like dcoult. Is there a way to force an update? My hub says its up to date.

@davidjohnson

Email support and they will load the new firmware on your hub.

Jay - The two bulbs that I had not paired with any hubs paired with the HUE hub and works flawlessly just by moving the bulbs closer to the hub.

The two bulbs I paired with the ST hub won’t now pair with the HUE hub.

I’m beginning to suspect that once a device pairs, there is something more you must do before pairing it with another hub. I need to figure that out! Any suggestions anyone would have is gratefully appreciated.

Makes sense. I remember reading of folks having trouble pairing Hue bulbs from other starter kits to their bridge due to them being pre-paired to the kit’s bridge.

Google “lampstealer” for an app that can force re-pairing of the bulb to your bridge. Note that you may need to get the bulb VERY close to your bridge to re-pair it.

Tony,

This is exactly the app you need to force the pairing. Amazon had a free BR30 bulb offer last month with their starter kits and that bulb refused to pair until i ran lamp stealer.

I managed to snag a 6 pack of these this morning at my local HD. No one had a clue what I was talking about when I asked for them but store showed 11 in stock. Somehow I got lucky enough to have a manager up front who said “I think there’s a UPS box in the back office with a few samples”… it had a sticker that said “Q3 Home Automation Promo” and they let me grab whatever I wanted. The box really only contained the A19 GE Link bulbs and the Leviton Z-Wave Dimmer model DZMX1. I decided to grab two of those, however those appear easy to find at places like Amazon and others.

Like the other reports above I decided to pair directly with my ST hub and it worked perfectly. It paired as a Zigbee switch and rather than change the device type to Zigbee Dimmer I changed it to “Zigbee Hue Bulb” and it worked flawlessly. On/Off as well as dimming work perfectly. Obviously there is a useless color swatch in the device info page but I’ll throw together a quick device handler which contains the commands for on/off/dim and dump the color picker. If anyone is interested just let me know and I can post a copy here.

Overall for $15 these appear to be great bulbs on the surface. They feel heavy and seem to be made from quality material. I primarily bought them to use in some new exterior ligh fixtures that are going in and they are very shallow meaning the bulb needs to be short. While Hue bulbs are a bit shorter overall, the light emits from the bottom of the Hue so a Hue bulb looked ugly in the fixture. The GE bulbs are a tiny bit longer but it’s mainly the glass to keep the bulb rounded. The actual LEDs where light emits from is 1-2in higher. Now instead of light flooding out the bottom of my fixture it can only be seen through the glass surrounding the fixture which looks much more clean. I’ll have a better idea tonight if I like the color temperature but at first glance it looks great. I know Philips just released the Hue lux but the price point is still double the GE @ $30 vs $15. I think the GE has potential to be the new go-to bulb for simple applications as it’s priced very well.

1 Like

@cmonroe thanks that straighten up my GE bulbs and they are working correctly dimming etc. I would be interested in the device handler.

Hey guys,

Give this a try as a device handler for the GE Link bulbs. There are still a couple of issues with it remembering the dimmer level between on/off cycles but works other than that. Improvements and/or fixes appreciated :smile:

/**
 *  ZigBee GE Link Bulb
 *
 *  Copyright 2014 Chad Monroe
 *
 *  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.
 *
 *  capabilities:
 *    actuator
 *    configuration
 *    polling
 *    pefresh
 *    sensor
 *    switch
 *    switch level
 */
metadata 
{
	definition( name: "ZigBee GE Link Bulb", namespace: "cmonroe", author: "Chad Monroe" ) 
	{
		capability "Switch Level"
		capability "Actuator"
		capability "Switch"
		capability "Configuration"
		capability "Polling"
		capability "Refresh"
		capability "Sensor"

		fingerprint( profileId: "0104", inClusters: "0000,0003,0004,0005,0006,0008,1000", outClusters: "0019" )
	}

	/* simulator metadata */
	simulator 
	{
		/* status messages */
		status "on": "on/off: 1"
		status "off": "on/off: 0"

		/* reply messages */
		reply "zcl on-off on": "on/off: 1"
		reply "zcl on-off off": "on/off: 0"
	}

	/* ui tile definitions */
	tiles 
	{
		standardTile( "switch", "device.switch", width: 2, height: 2, canChangeIcon: true ) 
		{
			state "off", label: '${name}', action: "switch.on", icon: "st.Lighting.light13", backgroundColor: "#ffffff"
			state "on", label: '${name}', action: "switch.off", icon: "st.Lighting.light11", backgroundColor: "#79b821"
		}
		
		standardTile( "refresh", "device.switch", inactiveLabel: false, decoration: "flat" ) 
		{
			state "default", label:"", action:"refresh.refresh", icon:"st.secondary.refresh"
		}
		
		controlTile( "levelSliderControl", "device.level", "slider", height: 1, width: 3, inactiveLabel: false ) 
		{
			state "level", action: "switch level.setLevel"
		}
		
		valueTile( "level", "device.level", inactiveLabel: false, decoration: "flat" ) 
		{
			state "level", label:'${currentValue} %', unit:"%", backgroundColor:"#ffffff"
		}

		main(["switch"])
		details( ["switch", "refresh", "level", "levelSliderControl"] )
	}
}

/* parse incoming device messages to generate events */
def parse(String description) 
{
	/* log.trace description */
	if ( description?.startsWith("catchall:") ) 
	{
		def msg = zigbee.parse(description)
		log.trace "catchall"
		log.trace msg
		log.trace "data: $msg.data"
	}
	else 
	{
		def name = description?.startsWith( "on/off: " ) ? "switch" : null
		def value = name == "switch" ? ( description?.endsWith( " 1" ) ? "on" : "off" ) : null
		def result = createEvent( name: name, value: value )
		
		log.debug "parse returned ${result?.descriptionText}"
		return result
	}
}

def on() 
{
	def cmds = []
    def level = device.latestValue( "level" ) as Integer ?: 0
	
    log.trace "on(): lastLevel=${level}"

    if ( ( level > 0 ) && ( level < 100 ) )
    {
    	def levelHex = new BigInteger( Math.round( level * 255 / 100 ).toString()).toString( 16 )

    	log.trace "on(): lastLevel=${level} valid, restoring to level=${levelHex}"

		sendEvent( name: "level", value: level )
		sendEvent( name: "switch.setLevel", value: level )

    	//cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 6 1 {}"
		cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 8 4 {${levelHex} 0000}"
	}
	else
	{
		sendEvent( name: "level", value: 99 )
		sendEvent( name: "switch.setLevel", value: 99 )

		cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 6 1 {}"
	}

	log.debug "on(): zigbee cmds: ${cmds}"
	cmds
}

def off() 
{
	def cmds = []
	
	log.trace "off()"
	
	sendEvent( name: "switch", value: "off" )

	cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 6 0 {}"
	
	log.debug "off(): zigbee cmds: ${cmds}"
	cmds
}

def refresh() 
{
	def cmds = []
    
	log.trace "refresh()"
	
	cmds << "st rattr 0x${device.deviceNetworkId} 1 6 0"
    
    log.debug "refresh(): zigbee cmds: ${cmds}"
	cmds
}

def poll()
{
	log.debug "poll(): calling refresh()"
	refresh()
}

def setLevel(value) 
{
	def cmds = []
	def level = value as Integer

	log.trace "setLevel($level)"

	if ( value == 0 ) 
	{
		sendEvent( name: "switch", value: "off" )

		cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 6 0 {}"
	}
	else if ( device.latestValue( "switch" ) == "off" ) 
	{
		sendEvent( name: "switch", value: "on" )
		sendEvent( name: "level", value: level )
		sendEvent( name: "switch.setLevel", value: level )
	}
	
	def levelHex = new BigInteger( Math.round( level * 255 / 100 ).toString()).toString( 16 )
	cmds << "st cmd 0x${device.deviceNetworkId} ${endpointId} 8 4 {${levelHex} 0000}"

	log.debug "setLevel(): zigbee cmds: ${cmds}"
	cmds
}

private hex(value, width=2) 
{
	def s = new BigInteger(Math.round(value).toString()).toString(16)
	
	while ( s.size() < width ) 
	{
		s = "0" + s
	}
    
	s
}

private getEndpointId() 
{
	new BigInteger(device.endpointId, 16).toString()
}
4 Likes

@cmonroe Thanks the device works good and I didn’t notice the dimmer seems ok. Thanks

There is a post on the Home Depot site indicating that this bulb won’t work with Wink hub until Sept 3. It is interesting that SmartThings platform works with it before its native platform.

I tried picking this up at my local Home Depot and they were clueless to availability though the web site said there are five.

The site should tell you what aisle and bay they’re in. In my case, it indicated there were 5 in aisle 0, bay 1. There were 4 on the very top shelf (almost unreachable), and 2 more on an endcap were Hue and Wink was.

@beckwith wink has already updated there hub so that the GE bulbs will work. Home Depot has a sale on that if you buy two wink branded items you can get the hub for .99 so I did it and it’s not on the same par as Smartthings. 99 cents couldn’t go wrong. Just wanted to see what it would do and i’m not impressed.

@scottinpollock

Here is what it says now:

“Visit or call your local Home Depot store to confirm availability.
Item must be purchased in store”

@llcanada

Where do I find this deal?

Off to Home Depot. I’ll buy them out of the 5 the website says they have…

I have already brought two bulbs and I like it better with the Smartthings hub. When you go to the Home Depot at the register that have the bar codes just tell the cashier and they will give you a 49.00 discount I got it by buying two GE link bulbs.

I just bought 2 bulbs and got the wink hub free too. Only 1 bulb left at my store, sorry for the next guy!

now lets see if it pairs to ST

Bought all 6 bulbs the maple Grove mn store had. Didn’t bother with the wink hub.

Hmmmm, getting this error after pairing the 2nd bulb:

groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.math.BigInteger#. Cannot resolve which method to invoke for [null, class java.lang.Integer] due to overlapping prototypes between: [class [I, int] [class [B, int] [class java.lang.String, int] @ line 177

I had this same thing with my control4 dimmer. Seems something to do getting the endpointId

Anyone with any thoughts?

Anyone notice the packaging? For help go to www.gelinkbulbs.com and that doesn’t even have a site on it?

Zero docs in the box, no idea how to unpair and repair?