Drivers for Samsung Appliances controlled via SmartThings Cloud API

I will look at this later this week. Currently working a Samsung Soundbar direct LAN driver (always better for direct LAN) for the later QI model soundbars with Wifi.

1 Like

Forgive me, I am lost. I installed the drivers I needed but cannot for the life of me figure out where to enter my Smartthing ID and save it. In my list of drivers code, I can see "Samsung Washer" and the dryer I added the driver for, but after that, I'm lost.

You need to add the devices themselves. Create a virtual device and select your appliance as the device type. In the device preferences page, you'll enter the SmartThings info.

Got it. Thanks!

Fantastic work,

Super easy to setup! And finally a solution to linking all my Samsung gear to my Hubitat madness!

I read that you don’t take donations but surely I can help in some way !?!?

Thanks again @djgutheinz :smiley:

Give a donation to a charity of YOUR choice or help someone in your neighborhood when they need it. Pass on a good turn and always be king to others.

5 Likes

I’ll be sure to pass on the good deeds and drop some money to my local McMillan

Thanks again bud

Hi @djgutheinz

I will not repeat thanking you for the drive, and I liked the story of the donation, and I will do as you said, sure there is someone we can help.

I wanted to ask for your support, on the drive for HVAC, I do not understand much of the code, but with a quick overview it seems to me that should do what I commented above, to put the thermostat in cool already would turn on the air, thermostat mode set to off would also turn off.

I think this function has a problem because doing tests, the Set Thermostat Mode, no matter what is set always stays cool, I tried setting it off, heat, and the variable thermostatModel follows with content cool.

Would it be possible for you to check it?

Thanks.

What capability is HomeBridge looking for??? My inclination is to convert the driver to Capability Thermostat, removing redundant commands and capabilities. This will take a while and some verification testing.

If this helps, if I add my Nest thermostat to the popular Homebridge Integration app this is the capabilities it is sending over to Homebridge. I used to use this and it worked mostly, but there is a direct plugin for Nest on Homebridge that I use now which works better.

So maybe you do not need to remove capabilities, but just add the Thermostat one to it?

image

1 Like

Samsung Thermostat mode control.

Issue: essentially, the Samsung HVAC internal thermostat is not a common thermostat. I (usually) has only one setpoint, manual control of cool and heat. When in auto mode, it maintains the single setpoint. For the internal auto mode, I could not find documentation on temperature range.

Solution Proposed: I have created a design for mode control that uses the common capability Thermostat model as a basis. The user will have the option to use Samsung Auto or standard thermostat Auto when selecting Auto mode on the thermostat. This should allow integration with the thermostat scheduler as well as dashboard tiles (I have expanded my simulator to test this). The design documentation is below.

Comments are encouraged.

ThermostatModeControl: [
	attributes: [
		coolingSetpoint: [capability: Thermostat, method: userEntry, type: integer],
		heatingSetpoint: [capability: Thermostat, method: userEntry, type: integer],
		thermostatSetpoint: [capability: Thermostat, setOn: modeChange, type: integer]
	setThermostatMode: [
		heat: [actions: [
			note: automatically turns on HVAC,
			setThermostatMode: heat,
			setThermostatSetpoint: heatingSetpoint]],
		emergencyHeat: [actions: [
			note: not supported by Samsung HVAC,
			setThermostatMode: heat,
			setThermostatSetpoint: heatingSetpoint]]
		cool: [actions: [
			note: automatically turns on HVAC,
			setThermostatMode: cool,
			setThermostatSetpoint: coolingSetpoint]],
		dry: [actions: [
			note: automatically turns on HVAC,
			note: Samsung custom mode,
			setThermostatMode: dry]],
		wind: [actions: [
			note: automatically turns on HVAC,
			note: Samsung custom mode,
			setThermostatMode: wind]],
		off: [actions: [
			setOnOff: off]],
		auto: [prefEmulateThermostat:
			   definition: [
				   true: Emulates a standard thermostat in auto mode,
				   false: Uses Samsung HVAC internal auto mode],
			   trueOperation: [
				   tempRange: [
					   >=coolingSetpoint: [
						   thermostatMode: cool,
						   thermostatSetpoint: coolingSetpoint]
					   <=heatingSetpoint: [
						   thermostatMode: heat,
						   thermostatSetpoint: heatingSetpoint]
					   otherwise: maintains last value],
				   setpointControl: [
					   preference: setpointOffset,
					   Calculation: [
						   [setHeatingSetpoint: 
							assure coolingSetpoint >= heatingSetpoint + setpointOffset],
						   [setCoolingSetpoint: 
							assure HeatingSetpoint <= coolingSetpoint - setpointOffset]]]],
				   falseOperation: [
					   note: uses Samsung Internal auto or aIComfort settings,
					   setpointControl: [
						   defaultValue: thermostatSetpoint,
						   valueChange: setThermostatSetpoint]]]
	]
	]
]

Hi @djgutheinz

When I was using ‘HA’ I’m pretty sure I was using this as a device controller for all of my Samsung gear,

> HA SmartThings

I haven’t the slightest clue if you could implement it into your coding or use it as a reference, but I know this was working flawlessly with my ac

Thanks again

H

1 Like

Hi, excuse my total lack of knowledge. Where should I be using / adding this code? Thanks.

I have been using the Samsung TV remote with some success. I'm about to try the driver for the Samsung range. I'd like to try on my dishwasher, but note that there isn't a driver for it. Any plan to have one for the dishwasher? Thank you.

Give me a week or two, then I will get some data from you to get the driver working. I do not have one, but i have an easy way to create.

Wonderful! Thank you.

@djgutheinz . Hey Dave so I am trying to do this for my Samsung Refrigerator and seeming to get an error but will admit I am probably just missing something. Any ideas?

Samsung HVAC Driver Upate to B0.70.

A new version of the Samsung HVAC driver is now at the GitHub location.
Update instructions.

  • Install the new code into the existing driver. Save driver
  • CRITICAL: Open the device's page and run Save Preferences.

Changes:

  • A huge thanks to GitHub user andrepintorj for testing and patience while finalizing this version.
  • Updated the Capabilities, commands and attributes to allow operation as a Hubitat Thermostat as well as a mode to use the Samsung HVAC internal "auto" mode.
  • Added a command to turn on/off the panel light.

Notes on Operation.
Commands. The thermostat can be fully controlled by the following commands

  • Set Heating Setpoint: Modifies heatingSetpoint
  • Set Cooling Setpoint: Modifies coolingSetpoint
  • Set Samsung Auto Setpoint
    • Modifies samsungAutoSetpoint
    • Used when the mode is set to samsungAuto (i.e., using the HVAC-internal auto mode control)
  • Set Thermostat Fan Mode
  • Set Thermostat Mode

Thermostat Mode Notes

  • Auto Mode emulates a traditional wall thermostat
    • uses Heating Setpoint and Cooling Setpoint
    • When temperature transitions to greater than Cooling Setpoint
      • sets the Samsung HVAC mode to Cooling
      • sets the Samsung HVAC (single) setpoint to the Cooling Setpoint
    • When temperature transitions to less than Heating Setpoint
      • sets the Samsung HVAC mode to Heating
      • sets the Samsung HVAC setpoint to the Heating Setpoint
  • Samsung Auto Mode uses the internal Samsung HVAC Auto mode
    • When entering mode, Samsung HVAC is set to the Samsung Auto Setpoint
  • Heat Mode:
    • When entering mode, sets the Samsung HVAC to Heat Mode
    • Sets the Samsung HVAC to Heating Setpoint
  • Cool Mode:
    • When entering mode, sets the Samsung HVAC to Cool Mode
    • Sets the Samsung HVAC to Cooling Setpoint
  • Wind / Dry Mode simply sets the Samsung HVAC to the selected mode
  • Off: Sends off command to the Samsung HVAC
    • To get out of off, simply a different mode

Easiest Testing and use: Testing is simplified for by creating a dashboard

  • Create tile using template "thermostat". Make it 2x2 or 3x3 size for convenience.
    • This controls all modes and all temperature Setpoints EXCEPT Samsung Auto Setpoint
  • Create a tile using template "level vertical", double height.
    • Allows you to change the samsungAutoSetpoint
  • Create a tile using template attribute and attribute samsungAutoSetpoint
1 Like

First off....

This is beautiful! I was certain that I was going to have to rig up sensors to continue to have an HE integrated kitchen. Thank you so much!

I have started setting up the drivers and the first I noticed is that open/close with the fridge/freezer is very delayed. Anything that can be done about it?

Also, what info do you need to make a driver for a dishwasher?

Refrigerator: Make sure the Preference pollInterval is set to one minute. That will provide an average of 30 second notification. For most cases that should be sufficient. (I can look at more frequent if you desire, but remember that smartThings is rate limited.)

Dishwasher: Beta test version is at: https://raw.githubusercontent.com/DaveGut/Test-Code/master/Samsung_Dishwasher.groovy

This has had only a single user test, and that was cursory.

One other thing: after you get the refrigerator up and running/tested, could you get the usage statistics from the device statics page in the logs?

1 Like