Index of the Moto Mods Developer project:
Moto Mods Developer Part 1 - Getting Started - Virtual Machine Setup and Linux Install
Moto Mods Developer Part 2 - Getting Started - SDK Setup & Android Studio Install
Moto Mods Developer Part 3 - Firmware Setup
Moto Mods Developer Part 4 - Getting Started - Make Build-Folder, add Utility and OS files
Moto Mods Developer Part 5 - Flashing Firmware with MDK Utility
Moto Mods Developer Part 6 - Blinking an LED on the Moto Mods Perfboard
Moto Mods Developer Part 7 - Modifying the C file for the perfboard LED
Moto Mods Developer Part 8 - Configure Nuttx
Moto Mods Developer Part 9 - Updating the Hardware Manifests file
Moto Mods Developer Part 10 - Cont’d Configure and Compile Nuttx
Moto Mods Developer Part 11 - Load newly created Nuttx Firmware onto Reference Board
Moto Mods Developer Part 12 - Soldering the Test Points to use the perfboard
Moto Mods Developer Part 13 - Making custom App to control the Firmware
The Slideshow above is also below:
An app can be made in any Android Studio platform including Windows, Linux or Mac. For this I used Windows.
The MDK-Utility app that motorola provides for loading firmware uses Android CardView for the layout look. Where each “card” is a different section with a display and/or button. As Shown below:
I modified the MDK-Utility app for my own use by deleting unnecessary parts of the app that I didn’t need for my blinker app. The Information panel and switcher “cards” were kept. Other cards were deleted.
To get started with modifying this app, I needed to clone the MDK-Utility app repository to Android Studio.
Graphic View layout
Code View Layout
In MainActivity, the code for Switcher, the “switch_led” id corresponds to the id of the graphical switch on the app panel. When the switch is activated, it runs the raw personality service called blinky using the raw protocol to send the blink boolean to the reference moto mod, where the STM32 micro receives it and runs the blinky routine on its firmware.
Raw Personality Service:
Below is my custom Blinker App using parts of the MDK Utility and CardView layout