What You Need to Know Before You Start
When home automation just seems to work, it is always the result of hard work. Home automation is fascinating and requires a considerable investment of your time. Here are some key considerations especially for new users. To be successful, you will need to:
- Start slowly and one step at a time
- Be prepared to learn
- Remain flexible in how you want to achieve your goal
- Celebrate all the small successes
Remember, myServer is just a computer program. The computer will only do what you tell it to do. myServer can provide many default solutions that are easy to setup. On the flip side, the more you insist that everything should look and work exactly as you want it, the more work you will have to do. myServer is fully customizable, but doing so will require substantial effort on your part.
After you have read the documentation for myServer, you will have:
- Identified on which computer you will run myServer
- Learn how to install myServer, as well as all other software that is needed to run myServer
- Learn how your smart devices communicate with myServer; how to make myServer give commands to your smart devices; and how you can interact with myServer
Keep your focus. For almost everything, there is more than one way in myServer to achieve a goal or perform a task. Initially, this can be frustrating and confusing, but it also gives great flexibility and does not mandate the use of certain devices or tools.
You may need to learn more about computers than you currently do. But this may not be a problem as you are reading the documentation of software that will enable you to do home automation yourself.
Lastly, be prepared to start a new hobby: home automation.
Basic functions can be achieved in myServer rather quickly, e.g., switch lights on at a certain time. Others will require much more efforts and thoughts, e.g., how do I determine that someone is home, including guests, but not counting pets? The myServer forum is a great place to learn and discuss.
A Quick Overview
myServer communicates electronically with smart and not-so-smart devices, performs user-defined actions and provides web-pages with user-defined information as well as user-defined tools to interact with all devices. To achieve this, myServer segments and compartmentalizes certain functions and operations. The following table gives a top-level description of the most important concepts as well as a link to more information:
|Templates||are the myServer component that provides the user interface to interact with myServer devices, apps and services.||see below|
|Drivers||are the software components that know how to communicate with your devices||click for more info on Drivers|
|Commands||are the statements that tell Drivers what you want it to do||see below|
|Macros||are commands that are executed in a sequence||click for more info on Macros|
|Rules||that perform automatic actions (in its simplest form: if "this" happens, myServer will do "that")||click for more info on Rules|
|Apps||is the myServer (software) that contain rules to perform a particular function. Like a "music app".||click for more info on Apps|
While the table above gives an overview, please remember that it is incomplete and a simplification of myServer for the sake of this overview. More elements will be introduced in later chapters of the documentation. All the above Concepts are explained in more depth on other pages that can be accessed either through the sidebar or the links in the table above.
Drivers are software packages that are installed by the user in myServer. The main purpose of Drivers is to establish the connection between your myServer controller and your Device. Drivers communicate with your device and translate all commands to and from myServer and your Device.
Drivers are provided at the Software Updater within myServer Dashboard. Here you will find a searchable list of several hundred drivers to support as many devices as possible. New drivers are regularly added as developers integrate more devices into myServer.
For each driver, detailed instructions and examples are provided that include guidance on configuration (if any) of the driver itself, the definition of Device supported by this binding and the example user interface the Template provides. In most cases, the description also contains a fully worked out example that includes common use cases and their configuration.
While You Are Getting Started
To all newcomers: please read the section myServer 6 Installation. That section provides you with step-by-step instructions for your first easy setup.
myServer runs on most popular platforms such as Raspberry OS, Linux, Windows and MacOS and on almost any hardware ranging from Raspberry Pis to desktop computers and server PCs. You can find specific installation instructions for these and other platforms in the Installation Overview article. If you have a strong preference towards a particular platform, then that platform is probably your best choice.
You can install myServer on your desktop computer for evaluation purposes if you already have any of these systems available for use, but we recommend using a dedicated system in the long run. If you feel serious about home automation it may be better to start with a dedicated system right away.
For anyone undecided: many people find that the simplest way to experiment with myServer is to purchase a myServer Controller from Allonis (highly recommended for success). You can also purchase Allonis's preloaded USB with the myServer 6 Master Image installed. Finally, you can download and install the Master Image to your own USB / SDMicro memory stick. Power up the controller and configure the system for your particulars. While myServer offers a streamlined and simplified way to get up and running quickly, it is a complete myServer home automation system easily capable of automating your entire home. However, it is worth noting two potential limitations of Raspberry Pis: RPi 3 and older are limited in RAM (1 GB of memory or less) and may not perform well when additional memory hungry applications such as databases and data visualization programs are installed. Two or more GB should be fine. Running Raspberries off the internal SD card only may result in system instabilities as these memory cards can degrade if the controller is powered down ungracefully. We recommend a PI4 using a fast USB3.0 boot drive.
Once you have myServer up and running, the Configuration article contains everything you need to know to get your myServer installation talking to different devices around your home.
You will quickly discover that you may want to learn more about Drivers, Apps, Templates, and more. To do so, we highly recommend that you read the next chapter titled Concepts. It provides a more in-depth descriptions of Things, Items, Drivers, etc. that will help you as you dive deeper into myServer.
The amount of information provided here can be overwhelming, so please come back to these sections often as you develop your home automation system.
Along the way, you may have some questions; the myServer community is here to help.
The myServer Community
myServer is not just software - it is also a community of users, contributors and maintainers, working together on an open-source, interoperable approach to home automation. The center of this community is the myServer community forum. It is an active and responsive community of experienced users who generally respond quite quickly to forum questions. Mind the rules, please.
Remember that myServer is not an open-source development. Please be kind and courteous, it will be most appreciated by those that will try to help you.
In many occasions, you will notice that your problem has already been raised by others; and discussed and resolved by the community before. You can search previous conversations and issues to see if your question has already been answered. It is best practice and generally considered to be good etiquette to check fairly thoroughly before posting your own question.
If it is your first time posting a question, please read How to help us helping you for information on what information you will need to provide.
Putting it into Practice
Once you are getting a first overview, it is time to practice. Here a short list of the steps that you will need to consider to get myServer up and running as your home automation system:
- Install myServer
- If you already own a smart device, search the addons for the brand or technology used by that device (or simply browse the list of add-ons for any technologies or services you may recognize)
- Install a Driver (in myServer)
- Configure a “Device”
- Edit / Add a button to run a Device specific command in myDesigner 6
- Save your changes
- Press your button on the UI and see your command run and your Device execute it!
Most of the above can be done in myServer through point-and-click processes in a graphical user interface. But remember, there is always more than one way to achieve your goal in myServer.
A final word for the DIY enthusiasts. myServer is very flexible and can support many DIY devices. However, you will quickly realize that DIY often literally means that you "do it yourself". Working with DIY solutions often requires a deeper level of understanding, as well as more patience and perseverance than the integration of ready-to-use devices from commercial providers. The choice is yours of course, but you will need to be prepared spending either money or time (and sometimes both) to make your home automation goals a reality. And quite often, the investment will be significant.
Don’t give up, myServer is very powerful and flexible and most likely can help you achieve your home automation goals, whichever they are. But it comes with a rather steep learning curve.
Allonis is also available for programming / configuration / user interface development work that is billed by the hour.
A Deeper Dive: myServer Structure for Advanced Users
myServer 6 is developed in .NET Core and is compiled to multiple operating systems. The user interfaces are built in Allonis's myDesigner 6 application which runs on Windows only. The user interfaces can be run on any HTML5 modern browser that supports Web Sockets.
myServer is highly modular software that can be extended through "Drivers", "Apps", and "Templates". Add-ons give myServer a wide array of capabilities, from User Interfaces, to the ability to interact with a large and growing number of physical Devices and Services. Add-ons come from the myServer 6 distribution.
If you are new to myServer, we suggest you continue to the Concepts chapter where we introduce many fundamental ideas that are used throughout myServer.