Giter VIP home page Giter VIP logo

galactic-unicorn-project's Introduction

Galactic Unicorn Project ๐Ÿฆ„๐ŸŒŸ

A project to display useful information on Pico display boards.


Getting Started

Hardware Requirements

The project is based on using a Raspberry Pi Pico-W microncontroller with a supported RGB LED matrix display. The two variants of this that we have used are:

  1. Galactic Unicorn

    Comes with Pico-W microncontroller already onboard.

or

  1. Pico Unicorn.

    This doesn't have a Pico-W onboard, so you need to buy it seperately:

New to Pico microcontrollers?

  • This guide covers the basics of using a Pico microcontroller.
  • This repo contains some demo programs for the Unicorn Pack.

Installation

  • Install the non-screen specific version of the pico-w micropython firmware (eg. pimoroni-picow-v1.20.2-micropython.uf2).

  • Clone the repo:

git clone https://github.com/DaveTrainor/galactic-unicorn-project.git
cd galactic-unicorn-project
  • Create a virtual Python environment in the project's root directory.
    This guide explains how & why.

  • Install project dependencies:

pip install -r requirements.txt
  • Make changes to or create the settings.py (depending on your usage) in the root directory:
screen = {
    'driver': 'pico_unicorn',
    # 'driver': 'galactic_unicorn'
}

network = {
    'driver': 'pico_w',
    'ssid': '<wifi network name>',
    'password': '<wifi network password>',
}

locale = {
    'coordinates': (0.00, 0.00), #replace with lattitude / longitude values (Google maps)
    'timezone': 'Europe/London', #replace with correct zone from https://worldtimeapi.org/api/timezone/
}
  • Connect to the Pico:

    Get your device address (eg. /dev/cu.usbmodem2101):

    mpremote devs

    Enter the device address in .pico-up.ini:

    [device]
    address = '/dev/cu.usbmodem2101'
  • Deploy to the Pico ๐Ÿ‘‡


Deployment

  • Deploy to the Pico:

    pico-up push
  • After deployment the display should show the following patterns:

    Pattern Meaning
    Green Column The screen is connected.
    Green Column + Flashing Blue Column Connecting to WiFi.
    4 Green Flashes WiFi connected. This pattern shows very briefly, then the display shows one of the installed programs.
  • These patterns indicate an error:

    Pattern Meaning
    Red Column Device failed to set up properly.
    Red LEDs in each corner There's an error in the code.

Use

  • After successful deployment & WiFi connection the Pico will run one of the installed programs.
  • Cycle through the installed programs by holding the Y button (bottom-right) for 2 seconds.

Debug

  • run mpremote devs to get your device address. E.g. /dev/cu.usbmodem2101
  • mpremote connect [put address here] then ctrl D to see outputs in the terminal
  • ctrl ] to exit

Resources

galactic-unicorn-project's People

Contributors

acodeninja avatar davetrainor avatar bushraabdullahi avatar devarrowsmith avatar

Watchers

Denise T avatar  avatar

galactic-unicorn-project's Issues

Menu System

What?

Display a menu system.

  • Top and bottom left hand buttons navigate up and down a list
  • Top right hand button selects the item
  • Column of pixels on left hand side indicate menu position

Tidy up codebase

  • Fix syntax in readme code block
  • Add timezone setting to settings.py in app
  • Fix button references in pico unicorn class
  • Delete pycache directories and Add *.pyc to gitignore
  • Delete all commented out codeblocks
  • Delete prepare_image.py
  • Remove numpy and pillow from requirements
  • Delete static-text.py
  • Delete usage readme
  • Add section to readme on developing
    • pip install -r requirements.dev.txt
    • test with pytest
    • how to create venv
    • how to active venv

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.