Java GPS MQTT IoT Firebase Android Studio Android

Cylock

Cylock is the final project I developed for my Android development diploma. This page will explain my experience developing the project, focusing on the technical challenges and design decisions, rather than specific technical details.

You can download the original project report (it is in Spanish).

Overview

Cylock is an IoT solution aimed at preventing bike theft by tracking and localizing the bike. The project was guided by two main goals:

  1. Low-cost: The IoT device had to be affordable for general bike users.
  2. User-friendly experience: The system should be simple to configure and easy to use without needing advanced technical knowledge.

Architecture

MQTT Architecture schema

The architecture consists of three main components:

IoT Device

The IoT device is built using an Arduino Nano, a SIM800L GPRS module, and a Li-Ion battery. This setup provides geolocation and internet access via a SIM card.

IoT schema

Key features of the device include:

Cylock (Android App)

The Android app serves as the main interface for users, allowing them to interact with the IoT device. It subscribes to MQTT messages and acts as the control center for the alarm system.

Cylock application

The app’s core functionality includes:

Cylock application flow

Challenges & Decisions

IoT Device Design


Related entries

SIDERA's Datawarehouse
Curiosity
Proficiency
LoreEngine
Curiosity
Proficiency
Good practices
My Custom Linux Desktop Environment
Curiosity
Resilience
Linux and Face Recognition Authorization
Curiosity
Fixing a Broken Rooted Tablet
Curiosity
Resilience
Problem resolution
SIDERA
Team work
Leadership
Catenary Energization Algorithm for SIDERA
Performance
Curiosity
Best practices
SENDA
Best practices
Proactivity
Team work
Proficiency
Leadership
Genetec SDK Integration in SIDERA
Best practices
Proactivity
Problem resolution
Proficiency