Some smart home programs are customizable and have open source software that goes with them -- meaning that you don't need any special training to program the software, and as long as you understand the programming language, you can make modifications without having to pay someone to change it for you. This is a strength because it allows for an almost limitless application of smart home technology to your own particular situation.
Smart home technology can be expensive. It can also require expensive add-ons that will replace existing fixtures -- for example, light switches and controls may need to be changed out from basic light switches to "smart" controls that are able to accept input from the programs that you have in place to run the software that keeps your smart home together. A standard light switch may cost forty cents, while a "smart" light switch might cost $40.
Most smart home technology and compatible devices are wireless and can be installed with a minimum of tools and expertise, using only the information provided in the owner's manual. This also helps if there is ever a problem or an expansion necessary to your smart home, because you can fix or add on to it yourself without paying a professional.
The wireless signals for smart home technology can often be interrupted by complex electronic devices such as televisions and computers, and this can lead to phantom signals, weak signals and unreliable operation. Any additional electronic device added to a smart home can potentially cause problems with the existing wireless smart home technology.