Code Monkey home page Code Monkey logo

stoneassistant's Introduction

stoneAssistant

This repository contains (pcb, firmware, mechanical) design files for the stoneAssistant project. The stoneAssistant is meant to be a home-entertainment device built around a raspberry pi.

Planned features:

  • Raspberry Pi 3
  • LCD Touch Screen (official Raspberry Pi Touch Screen)
  • 15W Stereo sound
  • 12V Supply
  • 3 USB Ports
  • Speech Commands
    • microphone preamp
  • Pushbuttons for optional control (Home button, Play/Pause, etc)
  • ATtiny
    • RGB LED for nice appearance
    • Shutdown and Power Control
    • Controlable Fan
    • Serial Commands
  • 3D-printed enclosure

The device is powered by a 230VAC/12VDC switching supply and another 12VDC/5VDC DC/DC converter that powers the Raspberry Pi, ATtiny and USB Ports. For power control (5V on Raspberry Pi, Software controlable mains switch), fan control and the RGB LEDs an ATtiny2312 chip is used. The chip implements a serial command interface on the uart to talk to the Raspberry Pi and vice versa. The software (RingoWare) for touch screen control, media, etc is currently developed by https://github.com/Ringo96 and there will be a repo by him soon. All the mechanical design files are drawn in FreeCAD 0.16. All the screw holes are designed to work with M3 screws. The PCBs sitting on top of the raspberry pi are meant to be held in place by standard M3 PCB spacers.

Files:

PCB files (Eagle 8)

  • /PCBs/stoneAssistant_pwrMgmt.sch Power management and pwm schematic
  • /PCBs/stoneAssistant_pwrMgmt.brd Power management and pwm board

Firmware files (Atmel Studio 7)

  • /ATtinyFirmware/stoneAssistantController Atmel Studio Solution for the ATtiny on the pwrMgmt board

Mechanical files (FreeCAD 0.16)

  • /Mechanical/buttonPrototype Prototype for Button with stopper
  • /Mechanical/Frontplate Frontplate that holds the raspberry pi display, buttons and speakers - prototype, did not fit in 3d printer
  • /Mechanical/RPIMount Mounting that holds the raspberry pi + PCBs on the raspberry pi display
  • /Mechanical/Housing Model of the housing !!!!!Moved all mechanical files to thingiverse

Serial Command Interface:

The serial command interface is using the uart and is based on a simple protocol, described below:

1 packet: [Startbyte(0xaa)][Length][payload 0][payload 1] ... payload[length - 1][Stopbyte(0x55)]

In the payload of this protocol, the commands are transmitted. The following commands are implemented:

  • [R][x] set red led intensity to x (0-255) (rpi->attiny)
  • [G][x] set green led intensity to x (0-255) (rpi->attiny)
  • [B][x] set blue led intensity to x (0-255) (rpi->attiny)
  • [F][x] set fan speed to x (0-255) (rpi->attiny)
  • [C][0] shutdown in 15s (rpi->attiny)
  • [C][1] shutdown request (attiny->rpi)
  • [C][6] cut rpi power and turn it on again in 15s (rpi->attiny)
  • [C][9] hard reset rpi immediately (rpi->attiny)
  • [C][10] hard shutdown immediately (rpi->attiny)

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.