Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vcclabs/nova
Nova is a compact RP2040 development board featuring a 7x10 addressable LED matrix, ideal for interactive projects and LED displays.
https://github.com/vcclabs/nova
arduino development-board diy-electronics electronics embedded fastled interactive opensource rp2040
Last synced: about 1 month ago
JSON representation
Nova is a compact RP2040 development board featuring a 7x10 addressable LED matrix, ideal for interactive projects and LED displays.
- Host: GitHub
- URL: https://github.com/vcclabs/nova
- Owner: VccLabs
- License: mit
- Created: 2024-10-23T15:08:38.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-21T21:34:00.000Z (about 1 month ago)
- Last Synced: 2024-11-21T22:21:56.712Z (about 1 month ago)
- Topics: arduino, development-board, diy-electronics, electronics, embedded, fastled, interactive, opensource, rp2040
- Homepage: https://vcclabs.com/
- Size: 14.8 MB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Nova
Nova is a super tiny [RP2040](https://www.raspberrypi.com/products/rp2040/) board featuring an integrated 7x10 addressable LED matrix. This project aims to provide an easy-to-use platform for creating interactive and visually engaging projects.
## Table of Contents
- [Features](#features)
- [Getting Started](#getting-started)
- [Arduino IDE Installation](#arduino-ide-installation)
- [Pinouts](#pinouts)## Features
- Compact size: Easy to integrate into various projects
- [RP2040](https://www.raspberrypi.com/products/rp2040/) microcontroller: Powerful and efficient
- Integrated 7x10 addressable LED matrix ([WS2812-1010](https://www.mouser.com/datasheet/2/744/WS2812B_1010_DATASHEET-3314306.pdf?srsltid=AfmBOoo3wt47VzInp2GmgZcu0IhygLrT_vyxBrGF-6aGd_k5DdkaCIo3))## Getting Started
To get started with Nova, you'll need the following:
- [Nova Board](link_to_Nova_Product_Page)
- [Arduino IDE](https://www.arduino.cc/en/software)
- Compatible power source (USB Type-C, battery, etc.)## Pinouts
## Arduino IDE Installation
### Adding Nova Board to Arduino IDE
1. **Open Arduino IDE**: Launch the Arduino IDE on your computer.
2. **Open Preferences**:
- Go to `File` -> `Preferences` (or `Arduino IDE` -> `Preferences` on macOS).3. **Add Board URL**:
- In the Preferences window, find the `Additional Boards Manager URLs` field.
- Add the following URL to the field:
```
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
```
- If there are already other URLs, separate them with commas.4. **Open Boards Manager**:
- Go to `Tools` -> `Board` -> `Boards Manager`.5. **Install RP2040 Core**:
- In the Boards Manager window, type `RP2040` in the search box.
- Look for `Raspberry Pi Pico/RP2040 by Earle Philhower` and click the `Install` button.6. **Select the Nova Board**:
- Once the installation is complete, go to `Tools` -> `Board` and select `Raspberry Pi Pico`.7. ### Install Required Libraries
- It is recommended to use the **FastLED** library for controlling the LED matrix.
#### Installing FastLED Library
1. **Open Library Manager**:
- Go to `Sketch` -> `Include Library` -> `Manage Libraries...`.2. **Search for FastLED**:
- In the Library Manager window, type `FastLED` in the search bar.3. **Install FastLED**:
- Find the **FastLED** library ([Repo](https://github.com/FastLED/FastLED)) and click the `Install` button.
#### Using FastLED with NovaHere’s a basic example of how to use the FastLED library to control a single LED on your Nova board:
```cpp
#include#define LED_PIN 22 // Data pin connected to LED0 (GP22)
#define NUM_LEDS 1 // Total number of LEDs (only LED0)CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds(leds, NUM_LEDS);
FastLED.setBrightness(10); // Set brightness to 10 out of 255
}void loop() {
// Example: Set LED0 to red color
leds[0] = CRGB::Red;
FastLED.show();
delay(1000);
// Example: Turn off LED0
leds[0] = CRGB::Black;
FastLED.show();
delay(1000);
}