Romo, the iPhone robot, is back! šŸ¤–šŸ“²

Foti Dim
4 min readFeb 17, 2019

--

Quite a while ago I stumbled upon a certain little iPhone robot on Amazon. It seemed interesting and familiar at the same time. I recalled having seen a kickstarter campaign for that very same robot. Apparently the project had been funded and was somewhat successful and that was why I was able to find it for sale on Amazon.

After some short research I figured out that Romotive, the company behind it, didnā€™t exist anymore which could mean that the robot would be unsupported. Long story short, it was too intriguing to resist so order was placed.

2 Romos for $32!

The price would literally be a steal, IF the robot would work. That was the big question in my mind considering the lack of information online. A few days later the package arrived, Romo was unboxed and there came the first problem.

Size

Apparently size matters when it comes to robots. Romo was made for iPhone 5, a considerably smaller device than you current iPhone X. I had an iPhone 5S lying around which as expected fitted perfectly. I also had an iPhone 6S which was bigger but eventually also fitted with some minor squeezing. Not really a problem. So far so good!

App

The second disappointment came shortly after as the advertised app was no longer on the App Store. I guess Romotiveā€™s Apple account was not renewed after the company went out of business and with that the apps were taken down from the App Store.

That was a major blocker. My first idea was to try to find an old IPA. This not a beer but instead an iOS appā€™s executable. That is easier said than done because on iOS it is hard to get your hands on IPA files and even if you do it would require a jailbroken phone to be able to run it on your device.

Another path that I wanted to explore was finding perhaps something open sourced on GitHub or elsewhere. After some fiddling with unmaintained or incomplete repos I managed to assemble the complete source code of the Romo app and the SDK! Apparently, Romotive before shutting down, kindly did this:

ā€œWeā€™ve decided to completely open-source every last bit of Romoā€™s smarts. All of our projects live in this repo and youā€™re free to use them however you like.ā€

Hooray! Thing finally start looking great.

Not so fast... What I had in my hands a pretty outdated and massive codebase with lots of errors, warnings and incompatibilities. Luckily I am an iOS developer so I could make use of what I had in my hands. This would be no easy task and there was no guarantee that it would actually work at the end.

Fast forward to today

After lots of hours of work and breaking down the task into smaller chunks I managed to clean up the mess and have almost everything working!

Now all old and newer iOS versions are supported. You can use Romo with any iOS from iOS 6 to iOS 12! There was significant work put just into backwards compatibility so that you could all use your old 30 pin Romos and old iPhones.

You can use any device up to iPhone 8! I bet Romo makers didnā€™t see that coming šŸ˜Ž

You can use Romo X Control to control your Romo robot from another iOS device in the same network.

There were major cleanups and optimizations with the app now being so lightweight that even an iPhone 3GS can handle it.

Romo Developers

The ultimate goal was to enable exiting or new communities of makers, tutors and researchers to get actively engaged with the Romo platform and smartphone robotics in general.

I see a lot of potential with the hardware packed in smartphones lately. And having this horsepower on wheels certainly opens up new possibilities.

I wanted to make it easy for developers to adopt Romo and start writing apps for it in no time. That is why now the Romo SDK is open source and offered on CocoaPods.

We have seen already other Romo projects like this cool project which puts Romo in augmented reality.

I hope the adoption of CocoaPods will help see more and more projects like this!

Whatā€™s next

Having said that I have almost everything working is accurate however I wish I could remove the word almost from my sentence. The only thing missing is telepresence, the ability to login remotely to your Romo and control it. It is a cool and useful feature that many users have been asking for.

If you want to see that happen as much as I do visit my Patreon page and please do support me. You can see the goals set and how far we are from those. You can find Romo X and Romo X Control on the App Store.

My Romo army says hi!

Special thanks to all the people that worked to make Romo happen in the first place and also my supporters on Patreon.

--

--

Foti Dim

Software craftsman ā€” iOSšŸ“± MachineLearningšŸ¤– AutonomousDrivingšŸš™ ARšŸ‘“ BassšŸŽø NintendošŸŽ®