It’s been four years since my last post, mostly because I haven’t found a project that I can spend my limited free time on. Lately I’ve been trying to encourage my daughter’s interest in robots. A year ago I bought the MiP for her and since then we’ve discussed the possibility of programming it to do whatever we want it to do. Sure, there are SDKs available for both Android and Apple. But we have no Android devices in our household, nor do we have an Apple workstation for developing iOS apps.
Thus, I bought the SparkFun ProMini-Pack and installed it on a MiP I bought just for this project. When I bought the ProMini-Pack I knew that the Arduino library was still very crude. Support for one of the two most important functions was missing, that being the ability to read data from the MiP. The ability to write to the MiP was provided, as it should be or the project would never get off the ground. But the ability to read data from the MiP is absolutely required in order to treat the MiP like a “true” robot – one that exercises the “sense, think, act” model.
There are a couple demonstrations of the ProMini-Pack installed on the MiP but neither of them demonstrate that the content originator ever implemented the read function. You can see these demos here:
I’m sure you noticed the first video was provided by SparkFun. They clearly spent more time dressing up the MiP to look like something from MadMax than they did writing the code. Ah, well, then I wouldn’t have anything to do, except make my MiP look like MadMax. The second video also shows that the content provider just slapped the ProMini-Pack on his MiP and filmed it driving in circles. Wow.
Myself and one other contributor have been working on the library for the ProMini-Pack that SparkFun provides on GitHub. A getMessage() function has been implemented but it’s only partially working. It reads the first four bytes of data with no problems, returning valid values for volume, voice chip hardware, and answers to boolean questions. Unfortunately any message longer than four bytes starts getting garbled at the fifth or sixth byte.
Other getters and setters are still being implemented but until getMessage is able to return the long messages without garbling the transmission functionality will remain limited. If anyone out there has what it takes to debug getMessage, please feel free to fork the SparkFun MiP library.