Android App for MQTT Device Management
Budget: €250 – €750 EUR
I'm looking for an Android developer to create an application that manages hardware devices via an existing MQTT broker. This app will be crucial for monitoring several devices, sending control commands, and logging data.
Key App Functionalities:
- Device Monitoring: The app will track the status and performance of multiple devices.
Each device will provide several values which must be shown in specified fields.
- Control Commands: Users of the app will be able to send specific commands to these devices.
The user will be able to send configuration data to hardware devices by sending (publish) a fixed structure data type on a topic according the registered devices.
- Data Logging: The app will collect and log data from these devices for analysis.
The hardware devices will send data to mqtt server in fixed intervals (for example every 3minutes).
Therefore the app will be able to extract the saved data from the server and show details to the user.
User Interface:
- The app should have a clean, intuitive Graphical User Interface (GUI).
- The user will be able to capture a picture from his phone's camera and use the picture as a reference of each device. Moreover, there must be a name field so that the user can give a name to every registered device.
- The user will be able to register a new device in the app, using a unique UID number. The registration will be done either by manually enter the UID number or by scanning a QR code containing the UID number.
- The user will be able to select a device from a list of all registered devices. The current selected device, must use it's UID to connect to the mqtt server and request data from a specific topic based on it's UID.
- The app after requesting and receiving data from mqtt server, will obtain the data on the equivalent fields.
- The app will receive data only from registered devices. Therefore a topic subscription is necessary for receiving data. The subscription will be based on the registered UID.
- The app should use background service in order to handle push notifications and inform user in case of an error on the actual hardware.
-It is preferred the app to be able to obtain data from the server from the last 5 days for every registered device.
Platform Compatibility:
- The application should be built for Android and if possible for IOS.
Ideal Skills and Experience:
- Extensive experience in Android development.
- Familiarity with MQTT protocol and brokers.
- Previous work with device management apps is a plus.
- Strong skills in designing user-friendly GUI.
- Experience in data logging and monitoring applications.
DETAILS FOR THE DATA STRUCTURE AND COMMUNICATION COMMANDS WILL BE PROVIDED
The application should be build with and accessible development environment and all the project files must be provided after the completion in case for further app development or future updates.
Key App Functionalities:
- Device Monitoring: The app will track the status and performance of multiple devices.
Each device will provide several values which must be shown in specified fields.
- Control Commands: Users of the app will be able to send specific commands to these devices.
The user will be able to send configuration data to hardware devices by sending (publish) a fixed structure data type on a topic according the registered devices.
- Data Logging: The app will collect and log data from these devices for analysis.
The hardware devices will send data to mqtt server in fixed intervals (for example every 3minutes).
Therefore the app will be able to extract the saved data from the server and show details to the user.
User Interface:
- The app should have a clean, intuitive Graphical User Interface (GUI).
- The user will be able to capture a picture from his phone's camera and use the picture as a reference of each device. Moreover, there must be a name field so that the user can give a name to every registered device.
- The user will be able to register a new device in the app, using a unique UID number. The registration will be done either by manually enter the UID number or by scanning a QR code containing the UID number.
- The user will be able to select a device from a list of all registered devices. The current selected device, must use it's UID to connect to the mqtt server and request data from a specific topic based on it's UID.
- The app after requesting and receiving data from mqtt server, will obtain the data on the equivalent fields.
- The app will receive data only from registered devices. Therefore a topic subscription is necessary for receiving data. The subscription will be based on the registered UID.
- The app should use background service in order to handle push notifications and inform user in case of an error on the actual hardware.
-It is preferred the app to be able to obtain data from the server from the last 5 days for every registered device.
Platform Compatibility:
- The application should be built for Android and if possible for IOS.
Ideal Skills and Experience:
- Extensive experience in Android development.
- Familiarity with MQTT protocol and brokers.
- Previous work with device management apps is a plus.
- Strong skills in designing user-friendly GUI.
- Experience in data logging and monitoring applications.
DETAILS FOR THE DATA STRUCTURE AND COMMUNICATION COMMANDS WILL BE PROVIDED
The application should be build with and accessible development environment and all the project files must be provided after the completion in case for further app development or future updates.
Related categories:
Mobile App Development
Android
Software Architecture
Internet of Things (IoT)
Android SDK