element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
IoT on Wheels Design Challenge
  • Challenges & Projects
  • Design Challenges
  • IoT on Wheels Design Challenge
  • More
  • Cancel
IoT on Wheels Design Challenge
Blog CycleOps Blog #3 - App Development Adventures and Other Coding Stories
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: RParkerE
  • Date Created: 28 Sep 2017 10:11 PM Date Created
  • Views 718 views
  • Likes 2 likes
  • Comments 3 comments
  • ionic
  • android development
  • android iot
  • ios iot
  • ios app
  • ios development
  • mobile app
  • iot design
  • iot bicycle
  • android app
  • iotonwheels
Related
Recommended

CycleOps Blog #3 - App Development Adventures and Other Coding Stories

RParkerE
RParkerE
28 Sep 2017

PREVIOUS BLOG

NEXT BLOG

 

APP DEVELOPMENT ADVENTURES

In my very first blog, I said the main IoT component of this project would be the app which all of the STM32 modules would connect to. So this week I began development on it, as I have never done any sort of app development before, and knew it would be a learning curve for me (as is learning to use mbedOs and programming the STM32). I started with what I was more comfortable with, Web Development/Web Apps. Starting here, and knowing my eventual end point of wanting an iOS or Android application, I was able to find a frame work which allowed me to cross the gap where my knowledge was limited.

Related image

 

THE EVER WATCHING I(EYE)

 

The framework which I found is called Ionic (thus the I in this subsections title, and the eye come from its logo. Ionic uses HTML, Sass (SCSS), JavaScript (Angular2), and Cordova to turn your web applications into mobile apps with access to many of the native phone components (this is very similar to the PhoneGap framework as well). I started with the documentation and some informative blogs to get me started in the right direction and then jumped right in!

 

APP DEVELOPMENT

 

To begin I just thought of a basic design. An app with a tabular navigation at the bottom of the screen, which allows you to navigate to pages which: allow you to locate and place markers at your bike(s) location(s), lock/unlock your bike(s), and POSSIBLY if your bike is stolen you can track it's location and see exactly when it was stolen, etc.

 

Since this week was the beginning of the learning curve for me, I have been able to get a lot of headway done. However, this is not an app that will be completed in a week, especially as it will depend partially on communication with the STM32 Nucleo. I have a template with the tabular navigation model, a map which defaults to your current location, and allows you to add a marker to your current location. I have also added a button which changes its icon from unlocked to locked when pressed, which will eventually communicate with the STM32 and arm the security system, and lock the bike lock from my previous blog. You can see a some images of what I have currently below:

imageimage

 

I will first be focusing on functionality of the app as I wish to complete this project, and with it being my first go at app development, I do not want to get bogged down with stylizing the app. If I have time towards the end of this project I will be going back and stylizing the app and adding a splash screen and other aesthetics.

Image result for mbed

 

OTHER CODING STORIES

 

Along with my fellow challengers I have been trying to flesh out which IDE is best to use. I, as well as others, have found that the mbed compiler looks very promising, and allows for easy IoT integration. So due to this, and the fact that I can enlist the support of the community and other challengers, I have decided to proceed with mbed's online compiler as my IDE of choice.

 

While using this I have decided to forgo the Infenion DC Motor Driver and just run the DC Motor straight from the STM32 board. There is a Servo library for the STM32 which uses a PMW pin to control the motor, so I will be using that. I have already wrote some sample code just to make sure it works (and it does!) so you can see a screen shot of the code and a video of the servo below:

 

image

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image
       

  • Sign in to reply
  • DAB
    DAB over 7 years ago

    Nice update.

     

    DAB

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • RParkerE
    RParkerE over 7 years ago in reply to jasonwier92

    Jason,

     

    I believe I will be able to share the code for the ionIc project, as to let the community follow along. However, ionic generates a very large code base in order to support the functionality of native components, and only a fraction of that is ever touched. Due to this I will make sure to highlight the code which I personally am working on in order to make sure viewers are not lost in the many supporting files which must be included.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jasonwier92
    jasonwier92 over 7 years ago

    I would be interested in seeing your code so far.  Can you share it on github or some other location please.  Then we can follow along as you develop you app too.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube