Update 02-11-2017: Here is an alternate thread discussing Xiaomi Zigbee devices. It has handlers and information that is more up to date than what I have posted:
I have created a simple device type for the Xiaomi Smart Button that can be found various places for around $10. Other users have stated that this device loses connectivity to the hub after a while, but I have only had the device in hand for a couple hours so I’ll report back what I find.
The device should work with SmartApps that work with button devices like the Aeon minimote. It registers as button 1 pressed, and button 1 held if you hold it down for 4 seconds (configurable in preferences, but a lower number may affect reliability of the device properly distinguishing the two).
Edit: Seems like what @Kriskit reported is true. Two of my devices are not communicating with the hub after a few hours. I will try to figure out what is going on, but without documentation it might be a lost cause.
As of the SmartThings Hub v2 Update on 2/29, this no longer seems to be the case. See post 25.
Also works with my SmartApp to adjust lights in a very customizable manner:
Edit: with my SmartApp button 1 is for pressed and button 5 is for held. I know it doesn’t make sense, but the app was designed for the Aeon Minimote and the Enerwave Scene controller. I’ll consider changing it in the future.
Edit 3/5/2016: Here is a simple device handler for the motion sensor: