Robotics is moving fast, and soon enough, applications (“apps”) made specifically for robots will become a multi-billion dollar industry. The new FlowBotics Studio software development platform is the ideal tool to create such “robot apps” and includes everything you need to make your robots smarter, easier to use and more functional. The FlowBotics Developer Zone is for anyone who is interested in creating robotic apps – from the curious but inexperienced enthusiast to the seasoned robotics developer. This website has the resources for anyone to get started quickly with creating their first FlowBotics Studio application.
- The basics
- Modifying a Project from the App Store
- Modifying a Project that came with FlowBotics Studio
- Lynxmotion SSC-32 Protocol Tutorial
- Dynamixel Protocol Tutorial
- Making an App from Scratch
- Publish to App Store and Make Money
FlowBotics Studio is a software development platform which allows you to easily create stand-alone apps for your robots. Apps are made primarily using FlowBotics’ graphical interface, but can also include some blocks of Ruby code. If you haven’t yet started making projects in FlowBotics, we recommend starting with this tutorial.
Modifying a Project from the App Store
If you want to learn FlowBotics Studio by seeing what went into creating a stand-alone app and perhaps modifying it, the Phidgets series of apps were designed to make this very easy. All of these apps include both a stand-alone executable file as well as the source file which can be accessed and edited using FlowBotics Studio. We’ve also made an in-depth tutorial on how to make changes to the Phidget 8/8/8 App.
Modifying a Project that came with FlowBotics Studio
If you are modifying one of the Lynxmotion robot projects that is included with FlowBotics Studio, this programming guide will show you where to make changes.
Implementing Serial Protocols
Many hardware devices communicate with a normal computer using serial protocol; some are simple ASCII-based protocols, but others can be more complex binary. No need to worry though, as both can easily be created easily in FlowBotics. We offer a Lynxmotion SSC-32 Protocol Tutorial which is ASCII-based and a Dynamixel Protocol Tutorial which is binary.
Making an App from Scratch
Starting with FlowBotics Studio version 3.0.7, everyone can now generate their own FlowBotics App. These apps are standalone Windows executable programs (.exe files) that have an integrated activation system which makes them ready for sale in the RobotShop App Store. Here’s how to convert your project into an app.
Once you have created your FlowBotics App, you’ll probably want to sell it through the RobotShop App Store.
What is the RobotShop App Store?
The idea behind the RobotShop App Store is similar to the Apple App Store, but here the apps are specifically for robotic platforms, regardless of the manufacturer or the operating system. At the moment, we sell mostly downloadable robot apps, but we envision a future where applications will run on the “robotic cloud”. This approach will free up computation time and resources on the robots and will make a single app compatible with many different robotic platforms. You can browse the RobotShop App Store here.
I’m a developer, why should I join?
We believe the future is digital. Tomorrow, the intelligence behind your robots will not be restricted to their physical platforms; most of the intelligence dictating their behavior and actions will be in the cloud. This intelligence will be transferable to all robotic platforms, real or virtual. Information, knowledge, and skills will be instantly available everywhere. We have seen tremendous transformation in technology in the recent years and we are going to see much more in the next decades. This evolution is exponential. Robot developers are the new heroes of science and technology and they know what is coming; They understand technology’s evolution. With the vision of one robot in every home and the interconnected world where all intelligent objects are connected to Internet, robot developers understand the potential and the opportunities. Some say that there will be 50 billion connected devices by 2020. Our question to you is: how many of those do you think will be robots? Once robots are connected to the Internet, what is the next logical step? The next step is the Web for Robots where Robot apps will become a multi-billion dollar industry. Developers that will have started to experiment early, sell and build their Brand will have a huge advantage.
How much money will I make?
As a developer, you will receive 75% of the MSRP for every app sold! RobotShop retains only 25% of all transactions.
App Ideas to Get Started
Are you looking for an idea for an App that hasn’t yet been created? Take a look at some ideas below:
Phidgets Stepper Motor
- Create an interface for both the PhidgetStepper Bipolar HC (RB-Phi-179) and the Unipolar 4-Motor (RB-Phi-67).
- This would be similar to other Phidgets apps, except it would support both boards at once.
- Create an interface for the PhidgetRFID ReadWrite (RB-Phi-199).
- Support read/write access to RFID cards.
- Include a time-stamp data logger.
- Create functionality for an access list that can be exported and imported.
Arduino as an I/O board
- Use an Arduino board to create an interface similar to the Phidgets 8/8/8 app.
- Offer support for both the Arduino Uno (RB-Ard-34) and Arduino Mega 2560 (RB-Ard-33).
- Pin modes might include:
- 6 analog inputs: A0-A5
- 6 digital inputs: D2-D7
- 6 digital outputs: D8-D13
DFRobotShop Rover Sequencer
- Create an app for the DFRobotShop Rover with Bluetooth (RB-Rbo-41) and combine it with the Encoder Pair (RB-Rbo-122).
- The interface could look like Lynxmotion 2WD Rover (included in FBS)
- Use encoders and PID to keep the robot moving in straight line.
- Include WASD keyboard control and/or PS2 remote control
- Can be extended with FBS code to include a distance sensor (action: define)
- Fixed movement blocks (based on robot odometer, not time)
- Turns with configurable radius and turn length
- Connect to Roomba with RooTooth Module (RB-Spa-678).
- Displays basic sensor state information:
- Digital: 2 wheel drops, 6 cliffs, 2 bumper, 6 light touch, 2 wall, 1 battery status.
- Analogue: 4 motor currents, 3 battery info (volt/current/charge)
- Self-test sequence to run the motors, verify the performance, and produce a test report.