Skip to content

KU SmartAccess is an iOS and Android mobile application that grants permission to users who have the right to access various areas in Kasetsart University.

Notifications You must be signed in to change notification settings

Thanabardi/KU-SmartAccess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 

Repository files navigation

KU-SmartAccess

KU SmartAccess is an iOS and Android mobile application that grants permission to users who have the right to access various areas in Kasetsart University. This project is split into 3 parts.

  1. smartaccess-terminal: Android-based mobile application that connects to the access point.
  2. smartaccess-mobile: Mobile application that integrates with the NisitKU and KULife applications.
  3. door-controller: Door controller that controls the hardware on the access point.

Table of Contents

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js installed on your local machine.
  • Expo CLI installed globally (Expo SDK 49)
    npm install -g expo-cli
  • Java SDK
  • Android SDK (via Android Studio)
  • Arduino IDE
  • Expo GO (to use with terminal-mobile)

Installation

To install and set up the project, follow these steps:

  1. Clone the repository:

    https://github.com/Thanabardi/KU-SmartAccess.git
  2. Installation & Usage

    1. Terminal application (Android Only)

      1. Navigate into the project directory
        cd smartaccess-terminal
      2. Install dependencies
        npm install
      3. Install Java SDK on Expo CLI
        1. Create and add local.properties file in android folder
          sdk.dir = /Users/<username>/Library/Android/sdk
        2. Run Prebuild
          npx expo prebuild
        3. Connect to mobile phone through USB and ensure both devices share the same network
        4. Allow debug mode in mobile phone
      4. Usage
        1. Start a development server

          npx expo run:android
        2. Setup application configuration and connect to the door controller via Bluetooth Low Energy Note: To set up via a QR code, ensure to follow this specified template and can make sure that it can parse into JSON format:

          {
              "appPassword":"",
              "logLimit":0,
              "isMultifactor":false,
              "apiKey":"",
              "apiSecret":"",
              "terminalKey":"",
              "tokenAPI":"",
              "participantsAPI":"",
              "faceRecogAPI":""
          }
    2. Mobile Application (Android and iOS)

      1. Navigate into the project directory
        cd smartaccess-mobile
      2. Install dependencies
        npm install
      3. Usage
        1. Start a server for developing
          npx expo start
          or
          npx expo start --tunnel
        2. Scan QR CODE with Expo GO on mobile phone Note: ensure both devices share the same network
    3. Door Controller

      1. Navigate into the project directory
        cd door-controller
      2. Install depencies
        1. Following Install KIDBRIGHT guide
        2. In library tab
          • Adafruit_NeoPixel
          • ArduinoJson
            Note: BLE should come with the ESP32 hardware in arduino IDE
      3. Select port from computer that connect to Kidbright
      4. Port connection
        • IN1: Contact sensor
        • IN2: Button
        • IN3: Light sensor
        • IN4: Infrared distance sensor
        • OUT1: 2 Relay Module
        • OUT2: LED ring strip
      5. Select Verify & Upload
      6. Usage
        1. Press S1 button to sharing bluetooth (name: Doorcontroller)

About

KU SmartAccess is an iOS and Android mobile application that grants permission to users who have the right to access various areas in Kasetsart University.

Topics

Resources

Stars

Watchers

Forks