Merging custom apps with Bluetooth Low Energy sensors.
Use the friendly drag-and-drop UI to create new and innovative apps integrating BLE sensors.
Pocket Code can now provide in-app help!
The goal of this project is to extend the capabilities of Pocket Code into a customizable, generic, user-friendly Smartphone application that can interact with BLE devices. The extended version of Pocket Code will have support for all the sensors in Sensor Tag and will serve as a model for young and novice app developers (who are new to the concept) as a way of seamlessly integrating external sensors within their app with the help of Pocket Code. This gives birth to a new practice in software development where peripherals are used to receive meaningful data for a mobile application contrary to majority Bluetooth peripherals in the market today which are used primarily for data output (watches, speakers etc.)
The project will allow users to use drag-and-drop UI widgets and instructions to create their own custom scripts or programs that will be sent to the SoC on Sensor Tag as instruction sets to access and retrieve data from the selected sensors.The application is a platform that allows people of all age group and from all backgrounds to develop creative android applications with the help of intuitive and informative in-app tutorials, without having to possess prior programming knowledge.
Also, users will be able to use the drag-and-drop interface to use the data from Sensor Tag in various ways to create their own applications. For example, a user might create a game that can utilize some particular sensors and integrate them in their own UI for presentation purposes. Since the UI will be based on Pocket Code, all development-related functionalities of Pocket Code can be extended to the Smartphone application, integrating the interface from Sensor Tag within it.
As shown in the UML diagram, the primary actor for our application is the Smartphone app user – including a wide range of audience, children, adults or developers. The User is our primary stakeholder, interested in making a customized application using the drag-and-drop interface on their Smartphones using Pocket Code. The User may also want to use data from BLE devices like the Sensor Tag and incorporate them in the application logic in their Pocket Code applications. This can be done seamlessly within the Pocket Code’s original drag-and-drop user interface. Finally, the User wants to run their custom-built application (games, tools, etc.) on their smart device which utilize and/or display computations and/or animations based on the sensor data and app logic.
The user will have ready access to help materials and tutorials from within the app that will explain basics like how to use a particular ‘Brick’ or ‘Widget’. This will be particularly useful when dealing with sensor bricks as their initialization and logic manipulation might not be very intuitive for all users. This help material will also be very useful for younger users who are new to programming and aspire to learn more about application development in their formative years.
The other secondary actors in our use case are the Pocket Code engine (Catrobat) and Bluetooth 4.0 framework and the Texas Instruments Sensor Tag. The Bluetooth 4.0 framework supports applications acting as a sender or receiver of data while communicating with Classic Bluetooth or BLE devices. The Sensor Tag’s System on Chip houses various sensors that can interact with the smartphone (and by extension, our enhancement to Pocket Code) through the Bluetooth Smart framework.