I recently developed a replacement for the old ThingShield that used to be available for SmartThings. It lets you send/receive arbitrary commands from an arduino, over zigbee. See here:
I'm happy to say it now works just as well for Hubitat!
Here is the driver code:
I have some available to try out now. Just private message me on this forum if you'd like to get one (or more) for a $15 donation (each).
Out of curiosity....is that including shipping and are you accepting donations through PayPal or some other method? I am willing to bet those will be your top two questions.
Amazing work BTW!! I got into Arduino stuff after the ThingShield was already discontinued so I never got to play with one. Been tinkering with how to build one out of an Xbee but never had the time to learn MicroPython. Great work!!
As far as software for the Arduino side of things...is it a static sketch? Or is it configurable? Or will it just come pre-loaded?
@haas - I received my HaasTI ZigBee Switch yesterday. I decided to keep things as simple as possible for right now, so all I did was plug in power to the microUSB port on the board (i.e. no Arduino/UART Serial communications for right now.) I am happy to report that the board was discovered properly by my development Hubitat hub using the driver you linked above in the first post. I am able to control each of the 4 digital outputs without any issue. The two digital inputs worked fine, as well as the 4 analog inputs.
I have not monitored the UART pins yet for serial traffic, but so far, so good! Great job and very professional looking and built board.
If you are open to some enhancement on the Groovy Side, I will be creating a Composite Device Driver for this little board which will make it fit into the Standard Capabilities available on Hubitat (and SmartThings.) This will make it easy to treat each digital output as an independent "Switch" device, the 4 analog inputs as "Voltage" devices, and the two digital inputs as either "Contact Sensor" and/or "Button" devices.
Wow, has it really been that long? I think I bought my ThingShields back in 2014.
All,
BTW - I have an upgraded driver for @haas's thingshield replacement board that I would appreciate having someone else take for a test drive before I release it to the wild. My version creates 4 child switch devices, 2 child contact sensor devices, and 4 child temperature sensor devices (since child voltage devices do not yet exist.) I am utilizing Hubitat's built-in 'Generic Component ...' drivers for the child devices, as this greatly simplifies code installation and maintenance (i.e. you only need the parent driver!) If anyone is interested in helping with the testing, private message me.
I just want to say this is very exciting and thanks to the OP for creating this. I just picked one up myself. I made a garage door controller out of the original ThingShield which has served me wonderfully for the past 4 years. Looking forward to the many new opportunities this will bring!
For anyone who wants to give my 'HaasTI Zigbee Parent' driver a try, here is my first ALPHA release.
This driver is for the board by itself. I did implement a custom command called 'sendCommand(String)' which allows you to send whatever string you'd like (up to 14 characters, I believe) if you want to mess around using the UART. It currently does not handle any responses that an attached microcontroller might reply with over the UART/Serial connection.
I have exposed most, if not all of the configuration parameters as user preferences. I also added linear conversions for each of the analog inputs to make those a little more 'engineering unit' friendly. The analog inputs all end up in Child Temperature devices for now, since there is no 'Generic Component Voltage Measurement' driver in Hubitat, yet. The 4 digital outputs are exposed as 4 Child Switch devices. The two digital inputs are exposed as a pair of child Contact Sensor devices, as well as by outputting Button Pushed events for Button 1 and Button 2.
Please provide feedback on your results and enjoy!
I think these are mostly driver questions for Dan. (Though I'll try to help once I get a chance if need be.)
For the serial monitor, the line returns are always a weird issue across different platforms. I think there's maybe a way to change them in the arduino ide or serial monitor. It's just the way the text is displayed (echoed) in the monitor. It still works fine, as you see.
Dan's driver is more complete and superior to my original, which was just meant to show basic functionality. His has the sendcommand command that lets you send a string of your choice (up to 14 bytes).
Thanks Dan and Andy!
Working great. This is going to be so much fun to play with.
One of my projects is going to be a Mona Lisa based UPS for my hub.
Adafruit 500mA Powerboost with a 1400mAh LIPO.
The Mona Lisa can tell the hub when it loses power and then shut down when the battery is low.
At some point, I will work on a new HubDuino Parent Driver for the HaasTI/MonaLisa. I just haven't found the time to sit down and work on that yet. I believe I have the essential building blocks, just need to put them altogether.
@haas - What is your official name for this board/shield? I just want to make sure I use the correct wording in any drivers/documentation that I create.