4 Host Application
In a bootloader context, the host is the system responsible for sending the application code to the device. This is usually a computer or a CPU that can be connected to the target device to perform the application code upgrade or a CPU host on the same circuit board.
There are very few limitations on how to make a host application, if the user is able to communicate with the target device. The simplest host applications have only a basic command line interface, while more complex apps have Graphical User Interfaces with several layers of security and advanced configuration settings.
Over-The-Air (OTA) programming is also possible if the device has wireless connectivity. This makes it easier to add software upgrade features from a smartphone application, or other ways of upgrading many devices without having to physically connect each device to a computer or a programmer.