Code Monkey home page Code Monkey logo

oshrepo's Introduction

Repository Title [version number]

License

The point of this repository is to serve as an example for how one might set-up a repo for an interactive hardware project. There doesn't seem to be any sort of agreement between developers as to how such a repo should be set up -- therefore, I'd like to propose this set-up.

This is where you describe your project in short. This will be where potential users look to understand what your project is about -- and it's your chance to catch their eye.

This specific project is an MSP430G2553 based game console. It was built for a conference and that's pretty much all I feel like writing about it because this is just an example, after all. It's a good idea to put some sort of picture of your completed project here like this -- but smaller:

alt text

Repository Contents

Here's where you'll provide a map of all the top-level contents (where applicable):

  • /src - Here's where the software for your device goes (.ino, .cpp).
  • /hardware - All the PCB design files / 3D models (.ftz, .brd, .sch, .stl).
  • /build - Files that are compiled and ready to run / upload.
  • /libraries - Any libraries that are needed to build your software for your device.
  • /examples - Example files that can be run on your hardware.
  • /img - This is where the image files for this readme are! Yay!
  • /LICENSE - The license file.
  • /README.md - The file you're reading now! :-D

Requirements and Materials

This is where you talk about what sort of libraries are required and what sort of hardware is needed:

Dependencies:

Bill of Materials:

  • 4 x push buttons
  • 12 x green LEDs
  • 1 x 4.7k resistor
  • 4 x 220 ohm resistor
  • 1 x slide switch
  • 1 x battery holder
  • 1 x breadboard
  • 1 x MSP4302553

Build Instructions

Here is where you give specific instructions about how the device is built. The more detail the better -- especially if your build is very complicated. Here you should include schematics of your build:

alt text

And a breadboard view is also a good idea. It gives the potential user a better idea of how to put the thing together. So we'll throw one in here as well.

alt text

alt_text

If there are any special instructions on how to assemble the hardware, we should note it here as well. For example, if the user should solder things in a specific order, you should give them a heads-up.

Firmware Installation

This is where you should describe how the firmware is installed onto the device. If it's really straightforward you may not need this section. However, if there are multiple libraries and componenets involved -- or if there is some sort of build process, this is a good place to put those instructions. Most users just want to be able to copy-paste and upload the firmware without having to jump through a bunch of hoops. You should set it up for them. For example:

To install:

MSP430Flasher.exe -n Unknown -w "MyGameFile_v1.2.txt" -v -g -z [VCC]

Usage

This is usually where you tell the user how the device works. Do you just upload the software and flip a switch? What sort of things does this thing do? Are there alternate settings / modes / programs that might be good to mention. This is where you tell the user exactly how the device or program is used. For example:

  • Upload the code to the thing.
  • Turn the thing on.
  • The thing will do a thing and it'll be really cool.
  • Don't forget to feed the badgers!

Team

The build team consists of:

  • Trevor Tomesh -- I did everything.
  • Joe McSchmoe -- He didn't do anything useful.
  • Alison Roberts -- She made me food.

Maybe say something about how people can contribute here?

Credits

This is where you give credit to any third parties that you borrowed from.

  • Kenneth Reitz - consultation on directory structure
  • My wonderful class. :-)

oshrepo's People

Contributors

trevortomesh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.