S17: Interactive Snake and ladder

From Embedded Systems Learning Academy
Revision as of 21:29, 15 May 2017 by Proj user2 (talk | contribs) (PCB Layout)

Jump to: navigation, search

Project Title

Snake and Ladder

Abstract

This project aims to bring the fun and simplicity of snake and ladder game with some new features. It is a snake and ladder game using SJONE board, LCD and 2 wireless remotes. LCD display is connected to the SJONE board will display the game grid. It will also have the multiplayer feature that will allow more than one players to play the game using wireless remotes simultaneously. This project explores a new dimension in the traditional snake game to make it more interesting and challenging.

Objectives & Introduction

This game aims to change the way people think of traditional snake game. It will offer the experience of commercial multilayer games to the player retaining the simplicity of traditional snake game.

  • The major objectives of this project are:
    • To create a snake and ladder game that will have all the functionality of traditional snake and ladder games.
    • Introduce multiplayer functionality in the game that will allow several players to play a game simultaneously. It should be able to give the experience of a real time multiplayer game to the players.
    • To introduce Speech output for events.


Roles & Responsibilities

Schedule

Week Start Date End Date Task Status Actual Completion Date
1 3/21 3/25
  • Requirement analysis
  • Component identification and purchase.
  • Task allocation based on different modules in project
Complete 3/25
2 3/25 3/29
  • Design Hardware schematic
Complete 3/29
3 3/29 4/9
  • PCB design and placing order for fabrication
Complete 4/10
4 3/29 4/8
  • Interface LCD with the SJOne board
  • Project report update on wiki
Complete 4/8
5 3/30 4/14
  • Establish wireless connection between boards using nordic wireless
  • Text to speech interface
  • Project report update on wiki
Complete 4/14
6 4/11 4/20
  • Algorithm design and implementation
  • Identify common data elements
Complete 4/20
7 4/20 4/22
  • Integration of modules and hardware package buildup
Complete 4/22
8 4/23 4/31
  • Integration testing and bug fix
  • Project report update on wiki
Complete 4/31
9 4/26 5/5
  • Extra feature identification and implementation
  • Project report update on wiki
Complete 5/5
10 5/5 5/14
  • Testing and Debugging
  • Project report update on wiki and final presentation
In Progress
11 5/15 5/23
  • Wiki Report completion and Final Demonstration
Plan

Parts List & Cost

Give a simple list of the cost of your project broken down by components. Do not write long stories here.

Design & Implementation

Overall System

  • The overall system is divided into 3 parts:
    • game image display(LCD): the snake and ladder image grid is mounted on the 7 inches LCD screen.
    • wireless SJONE board: the antenna is connected to SJONE board to transmit and receive signal from master. The basic use of the SJONE board with antenna is to through dice.
    • text to speech module: based on the actions performed the audio file gets executed. To make a game more effective and attractive.

All these functionalities work in parallel and have the same priorities.

Overall System Flow Chart

Hardware Design

Schematic Diagram

Below is the schematic diagram for the project. It includes the power supply, interface for LCD controller and text to speech module. CMPE244 S17 SnL Schematic Daigram.JPG

PCB Layout

Below is the PCB layout developed using Eagle PCB and Altium designer.

CMPE244 S17 SnL PCB Layout.JPG

Hardware Interface

In this section, you can describe how your hardware communicates, such as which BUSes used. You can discuss your driver implementation here, such that the Software Design section is isolated to talk about high level workings rather than inner working of your project.

Software Design

Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.

Implementation

This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.

Testing & Technical Challenges

PCB

  • Below is a list of challenges we faced during PCB designing:
    • For designing the PCB, we use EAGLE software. Which is new for us and that was a challenging task to draw layout.
    • We faced Assembly issues like dry solder on pins. So, we re-soldered the component pins.
    • There was an insufficient bypassing on PCB hence we added required value of bypass capacitor on board.
    • While testing PCB, we find a problem of shorting of a track so we use a multi meter to perform a continuity test and verification on the pins and fixed that.

LCD display

  • The main challenged faced related to display is to print a snake and ladder picture grid. Also, to determine exact coordinates of snake and ladder on grid is one of the challenges. this a tough job but we manage to do that. Tried to achieved high refresh rate on LCD to get real time display effect.

Conclusion

We successfully completed our project of interactive snake and ladder by writing various modules and our mentioned overall objectives of it. We learned a lot about Sjone board and LPC1768 micro controller. we have added extra function in project so that multiple players (more than 2) can play the game simultaneously by just connecting antenna and flashing the code on SJone board. Hence this project increased our knowledge of software and hardware.

Project Video

Upload a video of your project and post the link here.

Project Source Code

References

Acknowledgement

We would like to Thank Preetpal Kang. We used his API's of free RTOS which help us a lot to write a code for each module. The knowledge he has given us about all the interfacing buses like SPI, UART, I2C helped us in using that in our project and will help in near future.

References Used

List any references used in project.

Appendix

You can list the references you used.