Ghost Cosplay Costume

Introduction: Ghost Cosplay Costume

About: We are Family. Our hobby is D.I.Y. and to Live.

I made a ghost cosplay costume.

Step 1: Materials

  • White cloth
  • LED tape
  • Yoga mat
  • Hula hoop

Step 2: Head

The yoga mat is molded into a dome shape.

I sewed wood glue to make it a little harder.

Step 3: Eyes

The eyes consisted of LED tape.

The LED tapes are arranged in a zigzag pattern on the left and right in a size of 5 x 7. The signal is input in 2 paras and the same operation is performed.


Arduino Code

The following libraries are used.

Randomly blinking crosses, eye colors, blinks, and hearts are displayed.

#include <Adafruit_GFX.h>
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>
#ifndef PSTR
 #define PSTR // Make Arduino Due happy
#endif
 
#define PIN 3
 
// Define matrix width and height.
#define mw 5
#define mh 7
 
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(mw, mh, PIN,
  NEO_MATRIX_TOP     + NEO_MATRIX_RIGHT +
  NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG,
  NEO_GRB            + NEO_KHZ800);
 
const uint16_t colors[7] = {
  matrix.Color(0, 0, 255),matrix.Color(0, 255, 0),
  matrix.Color(0, 255, 255), matrix.Color(255, 0, 0), matrix.Color(255, 0, 255), 
  matrix.Color(255, 255, 0), matrix.Color(255, 255, 255) };
 
uint16_t col;
int var, x;
 
String num[] = {"0", "1", "2", "3","4", "5", "6","7", "8", "9"};
 
static const uint8_t PROGMEM mono_bmp[][7] ={
  //crosses
  {
    B10001000,
    B01010000,
    B01010000,
    B00100000,
    B01010000,
    B01010000,
    B10001000,
  },
  //eye
  {
    B01110000,
    B11111000,
    B11111000,
    B11111000,
    B11111000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B11111000,
    B11111000,
    B11111000,
    B11111000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B00000000,
    B11111000,
    B11111000,
    B11111000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B00000000,
    B00000000,
    B11111000,
    B11111000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B11111000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B11111000,
    B01110000,
  },
  {
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B00000000,
    B01110000,
  },
  {
    B00000000,
    B01010000,
    B11111000,
    B11111000,
    B11111000,
    B01110000,
    B00100000,
  },
};
 
void setup() {
  matrix.begin();
  matrix.setTextWrap(false);
  matrix.setBrightness(40);
}
 
 
void loop() {
  col = colors[random(0, 7)];
  var = random(0, 20);
  switch (var) {
    case 0:
      x = random(0, 5);
      for(int i = 0; i < x; i++){
        matrix.drawBitmap(0, 0, mono_bmp[0], 5, 7, col);
        matrix.show();
        delay(600);
        matrix.clear();
        matrix.show();
        delay(600);
      }
      break;
    case 1:
      for(int i = 0; i < 10; i++){
        matrix.setCursor(0, 0);
        matrix.setTextColor(colors[i%7]);
        matrix.print(num[i]);
        matrix.show();
        delay(300);
        matrix.fillScreen(0);
      }
      break;
    case 2:
    case 3:
    case 4:
      for(int i = 0; i < 4; i++){
        for(int j=0; j<256; j+=4){
          matrix.drawBitmap(0, 0, mono_bmp[8], 5, 7, matrix.Color(j,0,0));
          matrix.show();
          delay(30);
        }
        matrix.fillScreen(0);
        delay(200); 
      }
      break;
    default:
      matrix.drawBitmap(0, 0, mono_bmp[1], 5, 7, col);
      matrix.show();
      delay(random(200, 2000));
      x = random(1, 5);
      for(int j = 0; j < x; j++){
        for(int i = 2; i <= 7; i++){
          matrix.fillScreen(0);
          matrix.drawBitmap(0, 0, mono_bmp[i], 5, 7, col);
          matrix.show();
          delay(80);
        }
        for(int i = 7; i > 1; i--){
          matrix.fillScreen(0);
          matrix.drawBitmap(0, 0, mono_bmp[i], 5, 7, col);
          matrix.show();
          delay(60);
        }
      }
      matrix.clear();
      matrix.show();
      break;
  }  
}<br>

Step 4: Finish

Stick the cloth on the dome. A 1.1m x 2.1m cloth was sewn into a cylinder and sewn onto the dome.

The upper part of the dome was cut in the cloth and glued with wood glue. I cut out the hole in the mouth and put a black mesh cloth on the back. I also pasted the witch hat.

The hem is sewn a few centimeters and has a hula hoop inside.

Halloween Contest

Participated in the
Halloween Contest

Be the First to Share

    Recommendations

    • Make it Fly Challenge

      Make it Fly Challenge
    • First Time Author Contest

      First Time Author Contest
    • Summer Fun: Student Design Challenge

      Summer Fun: Student Design Challenge

    4 Comments

    0
    Bhm93guitar
    Bhm93guitar

    Question 10 months ago

    Can you share the arduino code??

    0
    blndlika28
    blndlika28

    10 months ago

    My daughter is in love with this idea. Super cute video too

    0
    jessyratfink
    jessyratfink

    10 months ago

    What a great use for a yoga mat, that is beyond cute :D