Skip to content
Rainbowduino with Networkduino equals Cube4Fun
Swift Other C++ Objective-C++ Objective-C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Arduino
Cube4Fun.xcodeproj
Cube4Fun
bin
LICENSE
README.md

README.md

Cube4Fun

alt text

Index

  1. Overview
  2. Requirements
  3. Software
  4. Hardware
  5. Arduino controller

Overview

  • Create your own cool 3D animations and tag them
  • Upload to your Cube4Fun
  • Use the animation-tag from any internet service/device by sending GET/ request to activate animations
  • Share your animations with everybody on this site:

alt text

Requirements

Software

Hardware


Arduino with network shield and SD card

This component is a main controller. The main objectives are:

  • Handle the communication like receiving animation requests and process
  • Save and read animations from SD card
  • Send data to the Rainbowduino

TODO: More details to come

Rainbowduino:

This component receives data over I2C protocol and displays it on the cube. It has also some animations. In case there is no data to display it plays default animations. There is no much logic on this side. For more details please check the Rainbowduino Wiki

Implemented functions:

The communication is only one way and without call backs to achive maximum frames per second. Every sent character or number is exactly one byte. So basically it's a byte stream with following format:

Command Format Description Examples
Blink red/green/blue b(r|g|b) Blink for couple of seconds with specified color br
Clear frame d Turn all LEDs off d
Stream mode s<64bytes>n<64bytes>S Displays an unlimited number of frames in stream mode. Draws a frame as soon as 64 bytes (one frame) are received s010001 ... n0100011 ... n000011100 ... S

Cube4Fun Application

The application is written in a new apple programming language Swift. The communication part is using the Poco Library which is written in C++. So it's easy to create a new application for any other device and don't care about TCP/IP communication.

You can’t perform that action at this time.