RG 1/144 Nu Gundam Rainbow LED
This project takes too much time to build because most of the time has spent on the TV shows. And finally, it is completed. Total of 220 LEDs were used in this build. This is a new record of my work.
Various light and sound effects, including:
- Theme music playback.
- Eye, Head, Rocket Jet and Vulcan Gun light effect.
- Up to 13 lighting effects for hands and feet.
- Cockpit start and close lighting.
- Weapon fire effect.
- Fin Funnel 7 special effects.
Video Demo :
https://www.youtube.com/watch?v=mZ_7kg5QNwc&list=PLD1NXJYyujL1xJErJAU8a4ntMFNEL9qJB
Blog :
https://kwluk717.blogspot.com/2022/05/rg-nu-gundam-5-finish.html
Supplies
- 0201 white LED x 3
- 0402 white LED x 22
- 0603 white LED x 74
- RGB LED x 2
- WS2812B x 119
- ATtiny85 x 11
- Arduino Nano x 1
- DFPlayer x 1
- IR Receiver x 1
Cockpit
Weapon
Leg and Arm
Head
Make by 0201 and 0402 LEDs
Fin Funnels
Make by LEDs and WS2812-2020 with ATtiny85 as controller
Video Demo
Others
Programming
The operation is Master and Slave mode via I2C. The master unit is using Arduino Nano and the Slave are listed with I2C ID as below :
Arduino Nano
- I2C Master
- MP3 Player Control
- IR Receiver
- Right Palm Trigger Control
ATtiny85
I2C ID Function
0x04 - Head Control (Eye/Head/Vulcan Gun)
0x05 - Main Body Control (Neopixel and one FadeIn/FadeOut effect)
0x06 - BackPack Control (Cockpit Light Effect/Rocket Jets/Weapon Trigger)
0x0B - Fin Funnel #1 (Center/Main/Surrounding Light Effect)
0x0C - Fin Funnel #2 (Center/Main/Surrounding Light Effect)
0x0D - Fin Funnel #3 (Center/Main/Surrounding Light Effect)
0x0E - Fin Funnel #4 (Center/Main/Surrounding Light Effect)
0x0F - Fin Funnel #5 (Center/Main/Surrounding Light Effect)
0x10 - Fin Funnel #6 (Center/Main/Surrounding Light Effect)
N/A - Rifle Control (Fire/Trigger/Aim Light effect)
N/A - Bazooka Control (Fire/Trigger/Aim Light effect/Length indicator)
example code is as below :
RX930-I2Cmaster
#include <Wire.h>
#include "IRremote.h" //timer2
#include "NeoSWSerial.h"
#include <Adafruit_NeoPixel.h>
//Define Usable Pin and I2C parameters
#define I2C_SCL 5 // SCL SD Card Used
#define I2C_SDA 4 // SDA Tx to Attiny85
//Define I2C device address
#define Light_Main_4 0x04
#define Light_Body_5 0x05
#define Light_BackPack_Cockpit_6 0x06
#define FinFunnel_1 0x0b
#define FinFunnel_2 0x0c
#define FinFunnel_3 0x0d
#define FinFunnel_4 0x0e
#define FinFunnel_5 0x0f
#define FinFunnel_6 0x10
#define NumberOfFinFunnel 6
int FinFunnel_No = FinFunnel_1; //Fin Funnnel first ID in variable
// Definition for DFPlayer (MP3 Player)
// Start of Remote Control IR decode Key Definition
Read_IR_Status(){
Select case
Case KEY_1 : Action(1);
Case KEY_2 : Action(2);
Case KEY_3 : Action(3);
:
:
Default
Action(Default);
}
Loop(){
FadeIn/FadeOut_of_Mainbody_LEDs();
Read_IR_Status();
If Rifile detected, Detect_GunShot();
}
RX93-I2CSlave
// For all NexoPixel LED Effect, control by I2C Master Command, ID (0x0b - 0x10)
// Fin Funnel 0x0b - 0x10
// For re-programming :
// Connect to Master devies after NO I2C device found
#include "TinyWireS.h"
#include <Adafruit_NeoPixel.h>
//#define I2C_SLAVE_ADDR 0x0b // i2c slave address (11) 01
//#define I2C_SLAVE_ADDR 0x0c // i2c slave address (12) 02
//#define I2C_SLAVE_ADDR 0x0d // i2c slave address (13) 03
//#define I2C_SLAVE_ADDR 0x0e // i2c slave address (14) 04
//#define I2C_SLAVE_ADDR 0x0f // i2c slave address (15) 05
#define I2C_SLAVE_ADDR 0x10 // i2c slave address (16) 06
//End of I2C definition
#define SDA 0 //SDA (Phy 5) reserve for SDA
#define LED_1 1 //LED Color #1 (Phy 6) (PWM) LED#1 (Surrounding)
#define SCL 2 //SCL (Phy 7) reserve for SCL
#define LEDNeo_1 3 //LED Color #2 (Phy 2) NeoPixel Channel#1 (Center)
#define LEDNeo_2 4 //LED Color #3 (Phy 3) (PWM) NeoPixel Channel#2 (Main)
#define RESET 5 //Other LED (Phy 1),actually RESET
RxCommand(){
Select case
Case 1: Action(1);
Case 2: Action(2);
Case 3: Action(3);
Default
Action(Default);
}
Loop(){
TinyWireS_stop_check();
RxCommand();
}