Giter Site home page Giter Site logo

n01150244 / studentsensehat Goto Github PK

View Code? Open in Web Editor NEW

This project forked from six0four/studentsensehat

0.0 0.0 0.0 39.21 MB

Student Sense Hat

Home Page: https://six0four.github.io/StudentSenseHat/

License: GNU Affero General Public License v3.0

HTML 42.72% Python 2.72% Makefile 0.10% C 6.31% Shell 0.65% CSS 46.07% JavaScript 1.44%

studentsensehat's Introduction

An interface board for the Broadcom development platform also known as the Raspberry Pi

Table of Contents

  1. Introduction
  2. Student Sense Hat Specifications
  3. Student Sense Hat Electronic Design Files
  4. Student Sense Hat Assembly
  5. Student Raspberry Pi Image Creation and Test Code
  6. Enterprise Wi-Fi

Image of Prototype

Introduction

This stackable interface board for the Broadcom development platform also known as the Raspberry Pi is of a hand solderable design meant to be compatible with the devices in the Humber Parts Crib which require more skills and techniques to assemble. It has a bidirectional LED and three I2C device sockets. The bidirectional LED allows the hardware equivalent of "Hello World" to be achieved by blinking the LED. I2C is a very common hardware peripheral bus and is designed to have an analog breakout board, a Real Time Clock module, and an integrated environmental sensor module connected. It takes most individuals about a week of effort to complete these build instructions directed towards technologically inclined students especially given other commitments. Be aware that the image creation steps take at least 3 hours alone.

Student Sense Hat Specifications

NOTE: This mostly through hole design is pin compatible with original mostly surface mount sense hat design which is on the devices in the Humber Parts Crib. The Fall 2017 design is in Fritzing while the Fall 2016 design was in Eagle, if curious, take a look at using the Sparkfun Cam file. Once you have recieved your PCB the kit looks something like the following photo.

Kit Bag

For a list of materials please download the Excel file in the repository.

The more interesting components consist of:

  1. 1 bidirectional LED

  2. DDS3231S IC RTC Clk/Calendar I2C 16-SOIC http://www.amazon.com/Donop-DS3231-AT24C32-precision-Arduino/dp/B00HCB7VYS

  3. 4 channel 8 bit a/d, 1 channel d/a PCF8591T I2C-Bus D/A CONVERTER http://www.modmypi.com/raspberry-pi/breakout-boards/seeed/raspberry-pi-adda-expansion-board https://www.creatroninc.com/product/pcf8591-8-bit-i2c-adc-dac/

  4. Temperature, humidity, pressure sensor. SparkFun Atmospheric Sensor Breakout

  5. One optional surface mount resistor.

Additional items that are only added to those devices in the Humber Parts Crib
  1. Humber sense hat eeprom for i2c id <https://www.sparkfun.com/products/525 https://www.adafruit.com/product/1895\>

  2. 16 I/O pins MCP23017SO I/O Expander I2C https://www.adafruit.com/products/732

  3. Breadboarding area

Image of Crib Pi

Student Sense Hat Electronic Design Files

  1. The Fritzing file is available here: https://github.com/six0four/StudentSenseHat/tree/master/electronics/StudentSenseHatV06.fzz
  2. It has a breadboard view: Image of breadboard view Following the best practices: This work is a derivative of "http://fritzing.org/parts/" by Fritzing, used under CC:BY-SA 3.0.
  3. It has a schematic view: Image of schematic view This work is a derivative of "http://fritzing.org/parts/" by Fritzing, used under CC:BY-SA 3.0.
  4. It has a PCB view: Image of PCB view This work is a derivative of "http://fritzing.org/parts/" by Fritzing, used under CC:BY-SA 3.0.
  5. A Bill Of Materials can be exported: BOM.
  6. As well as Gerber files: RS-274X.

Student Sense Hat Assembly

  1. Please get started by ensuring that you have reviewed the six 15 second soldering videos and can comment on them. (If you are into materials, look up tin pest and tin whiskers.)
  2. Work through as much of this set of instructions as possible. (Feel free to drop through the Humber College Institute of Technology & Advanced Learning North Campus Prototype Lab in J233 for additional guidance both before and after class.) Prototype Lab
  3. For additional soldering guidance such as surface mount and desoldering:
    1. Watch some YouTube Videos.
    2. Be sure to wear safety glasses and consult an expert regarding safety, you can even start at your local hackerspace (Ideally working towards IPC J-STD-001 Requirements for Soldered Electrical and Electronic Assemblies).
  4. Please remember your eyewear (safety glasses if you don't regularly wear glasses) and select a seat in J232. Image of lab station
  5. Turn on the computer under the desk on the left side.
  6. Note the red power switch to the back right side of the workstation that controls the power to the monitor, overhead light, and test equipment.
  7. Also note the under desk grounding strap jack for wrist straps - Electronics (ELIC) students must buy the $4.99 wrist straps while both CENG and ELIC students are to have the $4.99 safety glasses.
  8. When soldering move the extraction arm flow control towards the straight through symbol as it is in the photo below.
  9. The sponge in the soldering station can be moistened at the sink in J233.
  10. Start with components kit:
    Image of Prototype
  11. Optional: try out your kit on your breadboard. Image of Prototype
  12. Create schematic.
  13. Create board add photos of equipment and guide from 555 timer/prototype lab bb/plab I drive.
  14. At this stage you should have: Image of Prototype
  15. Decide whether you will be attempting the optional surface mount resistor. Prototype Assembly
  16. Or whether you will be going with the through hole resistor. Prototype Assembly
  17. Place resistors in corresponding locations: Prototype Assembly
  18. Bend the leads to hold them in place.
    Prototype Assembly
  19. Solder the resistors from the bottom.
    Prototype Assembly
  20. Add flux if having trouble but, do not depress the end of the flux pen, just touching it is enough. Prototype Assembly
  21. Solder the resistors from the top.
    Prototype Assembly
  22. Trim and keep excess leads (hold onto them while cutting to not allow them to become projectiles). Prototype Assembly
  23. Place via wires (can be stripped solid core wire or just leftover cut off resistor/LED leads) in corresponding locations: Prototype Assembly Prototype Assembly Prototype Assembly
  24. Solder vias.
    Prototype Assembly
  25. Trim the excess via leads.
    Prototype Assembly Prototype Assembly
  26. Place MOSFETS and LED (N.B. the LED's longer leg is the same as on a red LED. Thus, when oriented the same way as the fritzing diagrams the red/green will be the opposite of those in the parts crib. Which way you put it is in your hands.) Prototype Assembly Prototype Assembly
  27. Solder one pin of each MOSFET only from bottom side, semiconductor devices are heat sensitive. Prototype Assembly
  28. Solder another pin of each MOSFET only from bottom side. Prototype Assembly
  29. Solder the third pin of each MOSFET only from bottom side. Prototype Assembly
  30. Trim the MOSFET leads and make sure that none of them have solder bridges. (Note that the LED has shifted agianst the PCB here.)
    Prototype Assembly
  31. Make sure the LED is away from the PCB. Prototype Assembly
  32. Solder the LED only from the top side, semiconductor devices are heat sensitive. Prototype Assembly
  33. Trim the excess LED leads and use for any remaining vias. Prototype Assembly
  34. Place sockets.
    Prototype Assembly Prototype Assembly
  35. Solder sockets, no lead trimming is necessary. Prototype Assembly
  36. If you soldered the through hole 1kΩ resistor into place then skip past the surface mount resistor steps. Else, if you did not solder the through hole 1kΩ resistor then remove surface mount resistor from its packaging. Prototype Assembly
  37. Note that the packaging may look empty from the back. Prototype Assembly
  38. Place a little bit of solder onto each of the pads, in this photo there is probably a little bit too much. Prototype Assembly
  39. Hold the suface mount resistor with tweezers and heat one end of the resistor with the soldering iron. Prototype Assembly
  40. It should now look something like this. Prototype Assembly
  41. Heat the other end of the resistor with the soldering iron so that it looks like the next photo. Prototype Assembly
  42. Continue to alternate reheating the ends to make it flush with the board. Prototype Assembly
  43. While considering surface mount resitors, be aware that the RTC module can charge the CR2032 battery causing damage. To permanently disable the charging circuit, please remove the 200 ohm surface mount resistor (board on left) near the unused I2C header by pushing it off the PCB (board on right) with a hot soldering iron. Prototype Assembly
  44. Place the stackable header into place.
    Prototype Assembly
  45. Solder only where necessary.
    Prototype Assembly
  46. Place the breakout board modules into their appropriate sockets adding headers as necessary. Prototype Assembly
  47. Be sure to clean up your workstation with the brush and dustpan.
  48. Test assembled hat on Vlad's test fixture (and ideally following IPC-A-610 Acceptability of Electronics Assemblies). SenseHatTester
    Prototype Assembly
  49. Use CorelDRAW X6 and laser cutter to create a case guide from plab bb.
  50. Tap holes.
  51. Mount device.
    Image of Prototype

Student Raspberry Pi Image Creation and Test Code

  1. Building the Humber image for the Sense Hat: https://github.com/six0four/StudentSenseHat/blob/master/cribpisdcard.md
    Note that apt-get puts the installed packages into /var/cache/apt/archives/ so a zip of the files from there would complement the script used by these instructions.

  2. Open a terminal and type:

    git clone https://github.com/six0four/StudentSenseHat.git
    cd StudentSenseHat/firmware
    gcc -Wall -o traffic2B traffic2B.c -lwiringPi
    sudo ./traffic2B
    

    write to your blog what happens with your LED.

  3. From the Start Menu->Preferences->Raspberry Pi Configuration->Interfaces set I2C to Enabled.

  4. Return to your terminal and type:

    make
    sudo ./ghmain

    write to your blog what happens.

  5. You can read the OS date with:

    date

    You can set the OS date with:

    sudo date –s “29 AUG 1997 13:00:00”

    You can write the OS date to the RTC with:

    sudo hwclock –w

    You can read the RTC date with:

    sudo hwclock -r
  6. Things to consider for your particular application: boot options (Gui to terminal), and permissions when auto mounting usb keys.

  7. Use http://sourceforge.net/projects/win32diskimager/ to read the image into a file.

Enterprise Wi-Fi

Connecting to Enterprise Wi-Fi can be a challenge but the graphical desktop has come a long way from where it was, please share your respective successes in situations where the GUIs do not work - here is my configuration:

  1. In /etc/network/interfaces:

    auto lo
    iface lo inet loopback
    iface eth0 inet dhcp
    allow-hotplug wlan0
    iface wlan0 inet manual
    wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
    iface default inet dhcp
    
  2. In /etc/wpa_supplicant/wpa_supplicant.conf:

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    network={
        ssid="myWi-Fi@Humber"
        proto=RSN
        key_mgmt=WPA-EAP
        pairwise=CCMP
        auth_alg=OPEN
        eap=PEAP
        identity="n12345678"
        password="aaaAAA12"
        phase2="auth=MSCHAPV2"
    }
    

    I have been told that more recently the Prototype Lab staff have said to use:

    sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
    

    Add the follow to file and fill in identity and password field save and restart RPI:

    network={
    ssid="myWi-Fi@Humber"
    priority=999
    proto=RSN
    key_mgmt=WPA-EAP
    pairwise=CCMP
    auth_alg=OPEN
    eap=PEAP
    identity="STUDENT ID"
    password="PASSWORD"
    phase1="peaplabel=0"
    phase2="auth=MSCHAPV2"
    }
    
  3. Download Humber Certificate (For HumberSecure).cer from https://its.humber.ca/wireless/humbersecure/

  4. Reboot

studentsensehat's People

Contributors

six0four 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.