Group Assignment
Compare as many tool options as possible
This week, Dr. Kadam Sir and I began exploring different toolchains for developing IoT control applications. Since we were new to this area, we didn’t have any prior experience with these tools. As part of our group assignment, we took this opportunity to research and understand how various platforms work for building IoT-based mobile or web applications. Our goal was to figure out which tools are best suited for beginners, support popular IoT hardware like Arduino or ESP boards, and allow easy communication using protocols like Bluetooth, HTTP, or MQTT.
Here’s a list of the tools we explored:
A block-based mobile app builder, ideal for beginners. It supports Bluetooth, HTTP, and MQTT (via extensions) and works well with Arduino and ESP8266/32 boards.
MIT App Inventor, enhanced with IoT extensions, is a beginner-friendly platform designed to help users create Android mobile applications through a visual, block-based programming interface. It's particularly well-suited for basic IoT projects, especially those involving Arduino or ESP8266/ESP32 microcontrollers. The platform supports common IoT communication protocols like Bluetooth (HC-05 and HM-10), HTTP (for REST API integration), and MQTT (through community-developed extensions), allowing users to build mobile apps that can control or monitor sensors and actuators wirelessly. Its intuitive interface makes it ideal for students, educators, and hobbyists who want to quickly prototype smart applications without prior coding knowledge. For instance, users can create apps that turn lights on/off via Bluetooth, read temperature data from sensors, or send values to a cloud dashboard using HTTP or MQTT. However, MIT App Inventor has some notable limitations. It only supports Android devices, excluding iOS users from running these apps. Additionally, it does not natively support advanced IoT protocols such as CoAP, Zigbee, or LoRaWAN, which are commonly used in industrial and large-scale applications. While workarounds exist, such as using external gateways or middleware, they often require additional technical effort. Moreover, the user interface components are fairly basic, lacking the customization and modern UI design options found in more advanced tools. Despite these drawbacks, its simplicity, strong community support, and ability to integrate with affordable hardware make MIT App Inventor a popular starting point for those entering the world of IoT development.
Go to MIT APP and sign up for a free account.
A powerful platform for creating IoT dashboards with minimal coding. It supports MQTT, HTTP, and BLE and offers mobile apps for controlling devices.
Blynk is a versatile IoT platform that allows users to control and monitor devices like Arduino, ESP32, and Raspberry Pi through a simple mobile app interface. It enables real-time interaction using protocols such as MQTT, HTTP, and Bluetooth Low Energy (BLE), making it ideal for building smart home or automation projects without extensive coding. With its drag-and-drop widgets, users can create custom dashboards to control LEDs, motors, or read sensor data from anywhere using their smartphones. Blynk also provides cloud connectivity and device management features, making it a powerful solution for both beginners and advanced developers in IoT control applications.
Go to BLYNK APP and sign up for a free account.
A flow-based development tool ideal for Raspberry Pi and automation projects. It has support for a wide range of IoT protocols like MQTT, CoAP, HTTP, and more.
Node-RED is a flow-based development tool that is particularly useful for projects involving Raspberry Pi and automation. It supports a variety of IoT protocols such as MQTT, CoAP, and HTTP, making it versatile for connecting different devices and services. With its user-friendly interface, Node-RED allows developers to create applications by wiring together different components, enabling quick prototyping and automation solutions. It's widely used in IoT projects due to its ease of use and ability to integrate with many platforms and protocols.
Go to NODERED
A block-based platform similar to MIT App Inventor, but it supports both Android and iOS. It allows integration with IoT devices using HTTP, MQTT (via plugins), and Bluetooth.
Thunkable can be a powerful platform for building IoT applications due to its drag-and-drop interface and integration with various hardware and cloud services. With Thunkable, you can create mobile applications that interact with IoT devices using protocols like MQTT or HTTP. For example, you can design an app to control smart home devices, monitor sensors, or receive data from IoT systems in real-time. Thunkable’s ability to integrate with services like Firebase or ThingSpeak allows users to collect, visualize, and analyze data from IoT devices, making it a suitable tool for both prototyping and production-ready IoT applications.
Go to thunkable app Go for link
An advanced version of MIT App Inventor with more components and flexibility. It supports HTTP, MQTT, and Bluetooth and is focused on Android development.
Kodular is another great platform for building IoT applications, especially for users who want to create Android apps without needing to write complex code. By using Kodular's block-based interface, you can easily design mobile applications that interact with IoT devices via Bluetooth, Wi-Fi, or cloud services. For instance, you can develop an app to control and monitor smart devices, retrieve sensor data, or manage home automation systems. Kodular supports integration with APIs like Firebase and ThingSpeak, which enables real-time data exchange and visualization from IoT devices. This makes it an ideal tool for quickly prototyping and deploying IoT solutions without the need for advanced programming skills.
Go to Kodular APP Go for link
A no-code IoT dashboard tool that supports Raspberry Pi, Arduino, and ESP boards. It provides quick visualization and control via a web or mobile app.
Cayenne is an easy-to-use IoT platform that allows you to connect, monitor, and control IoT devices remotely. By creating an account on the platform, you can add devices like Raspberry Pi or Arduino and view real-time data from sensors or control actuators such as lights or motors. You can manage these devices through the web interface or mobile app, allowing you to automate actions or receive alerts based on sensor data. Cayenne makes it simple to control IoT devices without needing advanced programming skills, making it ideal for both beginners and experienced users.
Go to CAYENNE Go for link
A Flutter app allows you to control IoT devices from your mobile phone.It communicates with devices using Bluetooth, MQTT, or HTTP.Ideal for tasks like switching LEDs or reading sensor data in real time.
Flutter is an excellent framework for building cross-platform mobile applications, including IoT applications. With Flutter, you can develop apps that communicate with IoT devices using protocols like MQTT or HTTP. By integrating with cloud services or local networks, Flutter allows you to control and monitor IoT devices in real time. You can create user-friendly interfaces to display sensor data, control smart devices, and even automate actions based on sensor readings. Flutter’s rich set of widgets and performance optimizations make it an ideal choice for creating fast, responsive, and scalable IoT applications across both Android and iOS platforms.
Go to Flutter APP Go for link
Platform | Type | Ease of Use | Customization | Integration with IoT | Key Features |
---|---|---|---|---|---|
MIT App Inventor | Drag-and-Drop App Builder | Very Easy | Limited | Supports Bluetooth, Wi-Fi | User-friendly interface, good for simple IoT apps, visual programming |
Blynk | IoT Platform & App Builder | Easy | High (with coding) | Supports MQTT, HTTP, Wi-Fi | Pre-built widgets for IoT, real-time control, cloud integration |
Node-RED | Flow-based Development Tool | Moderate | Very High (programming) | Supports MQTT, HTTP, CoAP | Visual programming for IoT workflows, integrates with many services |
Thunkable | Drag-and-Drop App Builder | Easy | Moderate | Bluetooth, HTTP, Firebase | Cross-platform, integrates with various IoT services, real-time control |
Kodular | Drag-and-Drop App Builder | Easy | Moderate | Bluetooth, Wi-Fi | Focus on Android, flexible with IoT integration, good for prototyping |
Cayenne | IoT Platform for Device Control | Easy | Low (mainly preset actions) | MQTT, HTTP, Wi-Fi | Easy device control, cloud-based, mobile app support, great for smart home projects |
Flutter | Cross-platform App Development Framework | Moderate (coding required) | Very High | Supports MQTT, HTTP, local/remote device integration | Powerful for custom apps, cross-platform, rich UI, extensive libraries |
With the help of Chat Gpt, identified different tool chains and explored the different interfacing application for IOT