I apologize if this article is a duplicate but I feel like I’ve never been able to find a concrete answer on this. I have a lot of projects built with Arduino UNO and MEGA and I would like to integrate them with the SmartThings Hub. I read that there used to be a shield for this but it was discontinued. A few articles I have read discuss a ST_Anything. Is this just a handler I can put directly into my UNO/MEGA code to send signals to my hub without a shield? As a note I am using the Arduino Ethernet Shield 2.
As the others have mentioned, ST_Anything is exactly what you’re looking for. My son and I created it originally to make it easy for users to implement an Arduino + ThingShield combination. I revised it a little over a year ago to eliminate the need for the ThingShield by adding support for an Arduino or ESP8266 to be a ‘LAN connected device’. It still sends and receives all data via the ST Hub, using very similar function calls and architecture to the old ThingShield.
If you have any questions, please post them in the main ST_Anything thread linked above and I will be happy to assist in any way possible.
I think I want to fall in love with this, but I’m struggling. I have an Arduino Uno with a W5100 ethernet shield on it. I get a compiler error looking for a type for st.
Arduino: 1.8.5 (Windows Store 1.8.10.0) (Windows 10), Board: "Arduino/Genuino Uno"
In file included from C:\Users\paull\Documents\Arduino\ST_Anything_Multiples_EthernetW5100\ST_Anything_Multiples_EthernetW5100.ino:63:0:
C:\Users\paull\Documents\Arduino\libraries\ST_Anything/Everything.h:94:16: error: 'SmartThings' in namespace 'st' does not name a type
static st::SmartThings* SmartThing; //SmartThings Shield Library object
I also had problems with some #defines for sensors… I commented them out for now to just get it to compile without problems.
Thanks… I’m using an arduino Uno and a Sainsmart W5100 ethernet shield.
For the moment, I don’t care about integration with devices… just trying to compile your W5100 Multiples arduino .ino file without errors. Eventually, I’m just looking to test for TTL-level ONs and OFFs.
That’s probably not specific to the Arduino. (I’m making a reference here to your comment about being an Arduino Newbie. (You won’t be for long.) From the Arduino you’re going to be sending to the ST Hub. What actually gets executed as a result depends on what you’re asking ST to do. Somethings are executed locally and some things in the cloud. But as far as the Arduino is concerned, the Hub is the edge of the universe.
So if I were to use the ST_Anything app to say, turn on a few relays and a zwave switch… My bet is it would actually depend on the DH if things are thrown to the ST cloud or kept local?
I have added an example UNO/5100 sketch to my GitHub repo. Please give this a try and let me know if it works for you. I left 2 x Contact Sensors, 2 x Switches, and 2 x Timed Relays in it as examples to just get you started. The sketch still has tons of other devices in it, commented out to fit in the UNO’s 2K of RAM, as examples of the other ST_Anything devices that are supported.
If you cannot get this sketch to compile, the Arduino libraries folder is probably not set up correctly.