Giter VIP home page Giter VIP logo

quantum-lamps's People

Contributors

avenmia avatar bmiddha avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

omi929f

quantum-lamps's Issues

Fix client lamp state strings

Currently the lamp states are given as strings:

  • "SetLight"
  • "IDLE"
  • "IDLENotConnected"
  • "NOTIDLE"

These should be an ENUM instead of strings. Also "IDLENotConnected" is not necessary.

Clean Client Code

Currently there are a lot of todo statements, print outs, and trial code. There should be a clean working version of the client code That can be deployed to the pis for testing.

  • Create new client branch
  • Clean up client branch
  • Merge that branch with Master

Add Logger

Add a logger to the application. Logger should only print if user enters the debug flag when running the program.

Add signal when lamp data is sent and when it is received

When the lamp sends or receives data, it should give some sort of visual feedback as a confirmation of the action. There are several functions that could be used (rainbow_circle) or making a new one as some sort of strobe.

  • Add feedback for sending data
  • Add feedback for receiving data

Fix app "Timing" issues

Timing issues are timing events related to when the lamp is changing state. For example, it takes 3 seconds to determine whether or not the lamp is idle. The process of determining whether it should send the current data could be 6 seconds if the lamp goes from not idle to idle. Ideally, this should be much lower. The lamp should also include a "cool down period" when the color is set. This allows the user to reorient the lamp back to its sitting position.

  • Change time to determine idle or not idle
  • Add a "pause" feature when the lamp color is set

Deploy Web Server

Deploy the web server to Azure. Make sure it is accessible from different networks.

Function to maintain light color

Create a function that keeps the light the same color. This needs to:

  • Take in light data (This could come from an incoming websocket message or from the current state)
  • Change the light color to the current state
  • Maintain that color until either a new websocket message comes in or the lamp is no longer idle

Client update strategy

Create a strategy for deploying updates to the raspberry pi's.

Bharat's idea:
Allow the pi's on boot to connect to vpn that I can access

Things to consider:

  • Backwards compatibility
    • Version numbers
  • Auto Deployment

Test lamp functionality without websocket connection

The lamp works with a web socket connection, but should be able to work as a regular lamp if it is not connected to the web server for whatever reason. This task is about making sure the lamp still works if it is not connected to the server as well as adding functionality to check if the server is back up every x minutes or so.

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.