Updating my last Arduino based ESP to ESPHome

I have most of my ESP based IoT devices running ESPHome by now, but there was one left that I hadn’t spent the time figuring out how to adapt.

That was the one that lives inside my wall, and opens the buildings door by shorting two contacts on the intercom system.

My requirements for this were backwards compatibility so that my scripts and automations that were setup to control the door via MQTT could still function, this way I can continue to operate as normal but with the addition of OTA updates and telemetry from the node thats hardest to reach!

The original code involved subscribing to a topic, and waiting for a payload, then turning the relay on and then off again, for a momentary press.

#include <ESP8266WiFi.h>
#include <PubSubClient.h>

#define CLIENT_ID "buildingdoor-singlerelay"

#define RELAY_PIN 0


// Update these with values suitable for your network.
const char* ssid = "WiFiSSID";
const char* password = "WiFiPassword";
const char* mqtt_server = "MQTTServerIP";

WiFiClient espClient;
PubSubClient client(espClient);
long lastMsg = 0;

void setup()
{
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(RELAY_PIN, OUTPUT);
  Serial.begin(115200);
  setup_wifi(); 
  client.setServer(mqtt_server, 1883);
  client.setCallback(callback);
  digitalWrite(RELAY_PIN, HIGH);
  pinMode(D3, OUTPUT);
  pinMode(D1, OUTPUT);
  digitalWrite(D1, LOW);
}

void setup_wifi() {
  delay(10);
  // We start by connecting to a WiFi network
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid); //We don't want the ESP to act as an AP
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) 
  {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}

void callback(char* topic, byte* payload, unsigned int length) {
  Serial.print("Message arrived [");
  Serial.print(topic);
  Serial.print("] ");
  for (int i = 0; i < length; i++) {
    Serial.print((char)payload[i]);
  }
  Serial.println();

  // Switch on the LED if an 1 was received as first character
  if ((char)payload[0] == '1') {
    client.publish("building/door/relay", "1");
    delay(100);
    digitalWrite(RELAY_PIN, LOW);
    delay(200);
    digitalWrite(RELAY_PIN, HIGH);
  }  } else {
    digitalWrite(RELAY_PIN, HIGH);
    delay(100);
    client.publish("building/door/relay", "0");
  }

}

void reconnect() {
  // Loop until we're reconnected
  digitalWrite(LED_BUILTIN, LOW);
  while (!client.connected()) {
    Serial.print("Attempting MQTT connection...");
    // Attempt to connect
    if (client.connect(CLIENT_ID)) {
      Serial.println("connected");
      client.subscribe("building/door/relay/set");
      digitalWrite(LED_BUILTIN, HIGH);
    } else {
      Serial.print("failed, rc=");
      Serial.print(client.state());
      Serial.println(" try again in 5 seconds");
      // Wait 5 seconds before retrying
      delay(5000);
    }
  }
}

void loop()
{
  if (!client.connected()) {
    reconnect();
  }
  client.loop();
}

The new ESPHome code, does this, in addition to supporting the Home Assistant API and reporting back some values such as the WiFi Signal Strength!

esphome:
  name: buildingdoor
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: 'WiFiSSID'
  password: 'WiFiPassword'
  domain: .local
  fast_connect: true
  manual_ip:
    static_ip: 172.16.0.XX
    gateway: 172.16.0.1
    subnet: 255.255.255.0
mqtt:
  broker: 172.16.0.XX
  username: MQTTUsername
#  password: MyMQTTPassword
  on_message:
    topic: building/door/relay/set
    then:
      - switch.turn_on: building_door_switch
api:

# Enable logging
logger:

ota:

switch:
  - platform: gpio
    pin:
      number: 0
      inverted: yes
    icon: "mdi:office-building"
    name: "Building Door Open Switch"
    id: building_door_switch
    retain: false
    discovery: false
    availability:
      topic: building/door/status
      payload_available: online
      payload_not_available: offline
    state_topic: building/door/relay
    command_topic: building/door/relay/set
    on_turn_on:
    - logger.log: "Building Door Relay Activated!"
    - delay: 0.2s
    - switch.turn_off: building_door_switch
    on_turn_off:
    - logger.log: "Building Door Relay Deactivated!"

sensor:
  - platform: wifi_signal
    name: "Building Door WiFi Signal"
    update_interval: 60s
text_sensor:
  - platform: wifi_info
    ip_address:
      name: Building Door ESP IP Address
    ssid:
      name: Building Door ESP Connected SSID
    bssid:
      name: Building Door ESP Connected BSSID

I first connected it externally next to the wall, and listened to hear that they indeed, both fired when they were supposed to, and once confirmed, I opened up the wall, switched out the ESP-01S modules and closed it all back up!

Vivid 2018 LED IoT Apparel !

Hello! 

Continuing with the tradition of creating something beautiful and covered in LED lights, this year we have something special!

Previously, we had the LED Jacket with Tearschu, and the LED Dress with Naifel. Taking inspiration from these, and solving a lot of the problems I faced with them, I bring the latest iteration of light up fun.

This year, I have taken a pair of high heel boots, and an umbrella from Daiso, added plenty of pretty lights, and of course, this year marks the first year the entire project is connected to the internet.

 

 

The project was built using mostly the same core components for each item. 

The shoes each have:

  • Lithium Ion Battery (1000mAh)
  • LiIon Charge / Boost circuit MP2636 
  • WeMos D1 Mini
  • A random switch for power
  • A strip of WS2812 LEDs

The umbrella is similar, except instead of the MP2636 boost circuit and 3.7v Lithium battery, I used a 3s LiPo battery, and a 5v step down regulator capable of high current.

 

The physical build was pretty straight forward, hook up everything how you please, battery to boost/charge, from there to the WeMos / LEDs, and then route the wires how you please. For LED placement on the shoes, I went with up along the front as I feel this will look the best having the light cover the most area, and for the umbrella I ran the lights down the spokes of the umbrella.

Unfortunately with my design you cant really CLOSE the umbrella anymore but as this is just for Vivid I am not too fussed 🙂 

To attach the LEDs to the umbrella I initially tried to use hot glue, but it was actually melting through the umbrella, and the parts that didn’t, did not hold very well, so I ended up using clear packing tape, as it does not seem to get in the way of anything and is barely noticeable! 

The LEDs here are hooked up in parallel with each other, so each spoke on the umbrella will be the same.

Once it is all made up physically, we can move on to the code.

I was looking into using the McLighting project for control of these, as it has both an internal web interface as well as support for things like MQTT, but I could not get it to work reliably, and it didn’t support running in AP mode, only client mode, which was a big turn off for me.

So what I ended up using was the JSON LED code from BRUH Automation, because I use this for other things at home and it works pretty reliably.

One thing to note here, for my LEDs I had to add the following two lines of code, BEFORE including the libraries, to prevent flickering of the strip. (not sure why this works?)

#define FASTLED_INTERRUPT_RETRY_COUNT 0
#define FASTLED_ALLOW_INTERRUPTS 0

 

(at the verryy top of the sketch)

 

Now my initial plan included taking a small portable router, and a Raspberry Pi 3 out with me to vivid, running a local MQTT server on a local network, with the Pi running Home Assistant (Hass.IO) all locally so I could connect to it to control things. However I ran into many problems attempting to do this, I am not sure if its because I don’t know how to properly setup static IP’s in resin, or just because it hates me, but I kept not being able to connect or it wouldn’t respond to my commands, it just wasn’t working great.

 

One day though, my good friend Mark came over and we needed a project to work on, so what we set up was a private mosquitto MQTT broker, that requires authentication, running in Docker on a Ubuntu Server 18.04 LTS install!

What this meant,  was I now had a secure way of connecting a remote node to my Home Assistant running back home.

 

I went right ahead and adjusted the code on the three items for the new server, forwarded the ports in my router, added the config to my production Home Assistant server, and hey presto, was I glad to see, everything JUST WORKED.

 

I made a view in Home Assistant and threw all the entities into it, and here’s how that looks:

So as you can see, we can control both shoes together, each individually, the umbrella on its own, or everything as a group!

We also can change the animation speed of the various effects.

I will be heading out to vivid to shoot a small video and some photos with this, with my good friend Tsugumi modelling it for me, on the 9th of June 2018 from about 6PM onward, Not sure if I will be at Circular Quay or Darling Harbor yet, keep your eye on my Instagram to find out! 😉 

 

Thanks for reading!!!

Powering 12v LED Strips with batteries

Over the years, I have used many types of LEDs, but the most commonly used and cheapest, is standard 5050 LED strip. It comes in a variety of colours, and RGB multicolour.

However the cheap strips, as in, $15 for 5m, always run on 12v.

I have in the past used a number of different methods, starting off with a 9v battery, then a pack of AA cells, at one point I even carried around small SLA cells! (heavy omg)

More recently, I have been using 3s lipo packs, however these can be dangerous if damaged, and require a special charger to charge up.

I normally use a Turnigy Nanotech 3S 1.6Ah battery, I have a few of these laying around that I keep at storage voltage.

The problem with Lithium batteries is that, while they are usually stable, when they do become unstable, they go out very violently.

See these:

 

I have recently been contacted by a group of cosplayers that want to add LEDs to their Hyperdimension Neptunia cosplays, and were wondering how to power the LEDs, so im going to revisit this as there must be a better way.

 

When I added lights to my friends Ahri tails, we used my nanotech batteries the first round, but more recently, her friend made her a pack that takes three 18650 cells,

this is certainly easier for her to charge, and swap out the batteries, but I felt it and it was pretty warm, so kinda scary, to be fair though, her tails have almost 10m of LEDs in them, so it’s probably drawing some 6-10ish amps from those poor 18650s continuously.

 

Another option is to use 5v LED strips, i’ve got a meter of this and tested it, and its just not as bright … its probably the best option as of typing this though as power banks can be purchased cheap in sydney (~$12 for 4000mah one from a reputable shop)

There are alternatives worth looking into, such as a custom 18650 case, or this thing over here

The other things that are available are these:

I have used these in the past, but knowing what I do now about Lithium, I wouldn’t touch these with a 10 foot pole. There may be no protection inside, they may not be balance charged, and they probably don’t even have voltage cutoffs… very dangerous and scary..

 

 

As it stands, I still recommend to go with a 3S Lipo pack.

 

You will need a few things:

 

  1. Battery – 3 cell Lithium Polimer, capacity of your choice
  2. Low Battery Alarm – Tells you when the battery is flat
  3. Balance Charger – Important to prevent boom
  4. Flameproof bag – Important to store the batteries
  5. Power supply for charger – Your LED Strip MAY come with one that works (12v 2A+)

Here are the ones I recommend:

 

Battery:

https://hobbyking.com/en_us/turnigy-nano-tech-1800mah-3s-25-50c-lipo-pack.html ~$20

Low Battery Alarm:

https://hobbyking.com/en_us/hobby-king-battery-monitor-3s.html ~$5

Charger:

https://hobbyking.com/en_us/hobbykingr-dc-4s-balance-charger-cell-checker-30w-2s-4s.html ~$12

Flameproof bag:

https://hobbyking.com/en_us/fire-retardant-lipo-battery-bag-250x330mm.html ~$5

Power Supply:

http://www.ebay.com.au/itm/112219709452 ~$10

Please take good care not to damage the Lithium batteries, if they feel warm, turn it off for a bit and let them cool down.

 

To connect the LED strip, you will need a XT60 connector to solder onto it, these are ~$8 for a 5 pack.

https://hobbyking.com/en_us/xt60-male-w-12awg-silicon-wire-10cm-5pcs-bag.html

Feel free to contact me with any questions and I will do my best to answer.

 

Part 2: Which LEDs do I get?

 

There is different types of LEDs, Ive briefly mentioned them above, the main ones are: single colour, RGB multi colour and these come in both 12v and 5v.

 

For the above power solution that I recommended, you want 12v leds.
Which ones you get depends on your needs.
Some colours are available as is, and if the colour you want is available standalone, I suggest this as it will be less messing around. So if you need pink LEDs, and you find pink LEDs as well as RGB ?? Go with the pink ones.

If you need a colour you cant find, or want to be able to change, go with the RGB.

They also come in two sizes, if RGB, please try to always get 5050 LEDs, and avoid the smaller 3528 where you can. as each light can only be one colour, so for the RGB, you have a red light, a green light and a blue light every 3 lights. It results in a weird christmas light effect that looks terrible:

With 5050 RGB LEDs, each light has three tiny lights inside, so each actual light on the strip will be the colour you want.

For controlling them, if its single colour, you just need to give it power. If its RGB, most will come with an InfraRed (IR) controller, which is probably good enough, but there is also wifi and bluetooth controllers available.

You also want to check how many LEDs per meter there are. Most strips will come with 300 LEDs but some come with 150, this results in the lights being very far apart from each other and it doesnt look nice. so make sure its at least 300 LEDs.

 

To get really fancy, you can get what are known as addressable LEDs, but this is pretty advanced and needs a tiny $3 computer to control them. The most common type is WS2812b / WS2811 AKA Neopixels.
The only problem I have run into with these is the extremely high current draw (I usually use the 144LEDs in 1meter!!) and that if one LED dies, all the ones after it stop working.

There is another less common type, WS2813 that has an extra data wire in it, so that if one light stops, the others still work, but I have not played with these yet.

The benefit of these lights is each light can do something different, and you can have some really cool effects like breathing, fading along, rainbow chase, or a larson effect.

These are what I use in the LED clothing that I make.

For most effect lighting, the standard strip lighting works well enough.

 

For single 12v colour LED strips expect to pay around $10-20 delivered

For RGB 12v expect around $15-30 delivered

for WS2812 5v expect around $8-20 per meter

5v LEDs are similar pricing to above, but you get only 2-3 meters instead of 5 (it’s still heaps!!!)

Arcade Upgrade

So I had in front of me an old arcade machine, not too old, pretty new actually, a date code inside puts it around 22 June 2012.

Nevertheless, it was old in terms of mechanics.

The machine used a Jamma board, and was non functional.

I opened it up and had a bit of a look for any obvious electrical problems, burns out components, loose connectors, dirty connections etc. Couldn’t find anything.

For benefit of the doubt I used isopropyl alcohol to clean the PCB and the Jamma connector. Still no luck after this though.

The machine itself would power up, the board had power, but it wouldn’t output any video…

So I decided to go with my plan B, upgrading the machine to a PC based MAME emulator!

I started with physically cleaning up the machine, isopropyl and some Glen 20 did the trick, once it was nice and clean I got to the insides.

Snapped some photos of how everything was connected for future reference, and started removing components.

I can’t remember the whole process super well as it was a few days ago but I’ll recap best I can.

With all the main control and power boards removed, I was left with some bundles of wire cable tied inside.

I decided the best path would be to cut the bundles of wire that lead from the buttons to the Jamma board a short distance from the connector. This way in the future, reconnecting the Jamma connector is as simple as matching up the coloured wires.

I located the power connector for the button illumination, and tested it out. It was originally on the 12v from the power supply, I tested it on 5v and the buttons lit, but not the joystick. So I’ll just reconnect this to 12v once rebuilt.

I tested the screen using an HDMI to VGA adaptor coming from a PC that was nearby and got video out, this was great, was going to be pretty simple from here on out.

The screen is mounted in portrait which is going to prove annoying as most games these days and games I’ll be emulating will feel smaller. Also, it means that I’ll have to figure out how to display artwork above and below the emulation. Maybe themed to the console ?

I know there’s plenty of options online for ‘arcade button controller’ ranging from $6 to $100+, and I’m sure any of these would have done the trick, but I didn’t really want to wait for something to arrive, I wanted to finish this project in one day.

Luckily I had an Arduino pro micro laying around, I slapped some headers on it and some matching headers on the wires, then ran to the internet in search of a joystick emulation library for AtMega32u4 🕹️

It was actually very easy and within 3 results I had a library downloaded and installed!

Loading up the Arduino IDE I opened an example sketch that had 1 button and a joystick, this was SUPER easy to modify for the 5 buttons on the front panel of my machine, it was just a case of increasing some numbers and adding some extra cases!

I uploaded the sketch to the board and hooked up the buttons to their corresponding pins on the board, now it was time to test.

Hooked up the Arduino to my laptop and checked devices and printers, to my great surprise I saw a gamepad icon with Arduino Leonardo under it, that will be my board!

I right clicked it and hit Gamepad Properties, which brings up a screen where you can test everything.

The joystick was rotated left 90 degrees, so I suspect it was installed sideways as I used the labelling on the PCB for which wire was which, but after switching those wires around everything worked ! All the buttons and the joystick worked flawlessly now !

So now that I had the controls upgrades to modern universalness, I moved onto the speakers, there is two 10w speakers mounted to the rear of the cabinet, these used to be driven by the Jamma board, but with that gone I needed something new.

Coincidentally, a few days earlier, my friend James was over to fix my 3D printer, and had brought over a wireless speaker thing, that I didn’t know what to do with. But this thing, had a speaker driver in it, and also a 3.5mm input, so I put the transmitter unit aside and used just the receiver unit. Hooked up both audio channels with a wire so we got both left and right channel out of the speakers, and hooked them up to the device. I cut off its power cable so I could hook it up to an alternate source of power later, just 12v.

I decided it would be best to re use the original power supply, but some changes were in order. For starters, the damn thing had no earth, so adding an earth connection was my first priority, very simple and I don’t know why the original builder didn’t ???

Once that was hooked up, I proceeded to hook up the leds and the speaker driver to the 12v rail, and then pigtailed the monitor off the AC terminals, and also a cord with a 3 pin connector suitable for a laptop PSU on it.

With all the power sorted I turned to how I’ll drive everything.

I had a few options at my disposal, but given the tight space restrictions in this bartop size machine, I went with an Intel Nuc that I got last time I was planning to build an arcade machine.

I placed it inside, with some very strong Velcro, and placed its power adaptor next to the one for the monitor, also held down by Velcro.

I hooked up a USB wifi adapter and the Arduino to the back USB ports, as well as a mini HDMI to HDMI, then HDMI to VGA adaptors, to the mini HDMI port on the back. And it was time to power it up and test.

The Nuc booted and everything was fine.

I refreshed windows to a clean install as there was still many remains of my last attempt at getting things up and running, rotated the display 90 degrees to make it normal, and then fired up Project 64 for some testing !

I quickly learnt the volume was waayyyy too high, but was easy to fix. Just startled me! Haha

The controls worked great, and the picture looks fine. The colours are a bit off but I can fix that later.

For now this is enough, I’ll work out the software later as that takes aggesss to get setup nicely and all pretty like.

In the past I’ve used HyperSpin but I might give something new like GameEx a try.

I’ll make a new post once I have done that!

Album below (Please excuse the potato photos):

 

RGB LED Jacket ft. Tearschu

Last year, Tearschu and I worked together to bring the LED Dress to life, and that was a huge success!

 

This year, I worked with Tearschu to create another RGB item of clothing!

 

Tearschu designed and made a jacket with a clear PVC material, and we incorporated a strip of 144 WS2812b RGB LEDs into it, this was a challenge, as the power draw was too much for the 3-5A 5v power regulator we used last year.

 

We needed a much beefier 50W power supply! However thanks to some help from Reddit user /u/krhacken we were finally able to get brightness control working mere days before the shoot!

 

This allowed us to dim the lights for scenes where they were too bright, and for when we were just walking around between locations to conserve power!

 

We were able to go the entire 3-4 hour shoot with a single Turnigy NanoTech 1.6Ah 3S LiPo!

 

Im really happy with how the photos turned out and I can’t wait to make something for next year!

 

Make sure you ‘like’ the photos on Facebook!

 

 

And check out the album below!

 

ESP8266 Arduino Pro Micro 

I was looking everybody’s favorite online store for Atmega32u4 based MCUs for a friend and stumbled upon this little guy:

http://ebay.com.au/itm/191890522764

It sure as heck isn’t a 32u4 but it is rather interesting !

It looks like it’s an esp8266 module in the form factor of an arduino pro micro, I’m a bit put off by the $20~ price tag but it would be interesting to see if they have routed the pins to the corresponding ones as for the pro micro. 

Then you could use it as a drop in replacement without even having to change the code, except you would suddenly have the option to add wifi to your project! 
IoT is definitely getting much easier these days to implement than when this blog first started! Hahaha
No more fumbling around with an Arduino Uno with Ethernet and then little dodgy radios talking to other Unos with the same radio…..

Oh man that was hell 

LED Dress was a success!

Hey all!

Just a quick update to let you know the LED Dress was an awesome success!
It looked better than I imagined!

Once again I want to express a huge thanks to Tearschu for making the dress perfectly, and Naifel for modelling it so beautifully! (Thanks Tim for helping too!)
It’s an amazing feeling having an idea and making it become a reality!

Heres some sneak peeks before I get around to editing the photos:

 

 

 

 

Original post can be found here: http://blog.lewys.eu/?p=254

ESP8266 Servo Control

I wanted to control a Servo using the Blynk library form an ESP8266,

So I hooked up a TowerPro SG-5010 servo to my ESP8266 devkit 1.0 thing, uploaded the servo sweep test code to see if it works, and IT WORKED!
Until the magic smoke came out…

It looks like ive fried my dev board goddamnit, maybe i shouldnt have pulled 5v from the VIN pin on the USB TTL adapter….. D:

 

goddamnitO:nGRLIKJRSNKLJB

 

 

Update:

OK!

With a new dev board, a v0.9 one, and an external 5v power source we have done away with the magic smoke!
Ill upload the Blynk sketch and see how we go.

13382147_565081053665324_2136274505_n

 

hugometer

starting pitch

hugometer

an led bar graph, an arduino, and a bluetooth module. (RTC module too?)

the arduino scans for a bluetooth mac address (the mac of the phone belonging to the person the cuddleometer will respond to)

it will measure the time it is within proximity of that mac address and proportionately raise and lower the bar graph based on time since it sees the mac and time since is SAW the mac.

this allows it to “recharge” when you are with your significant other, and to “discharge” when you are away for them.

once the graph gets low, an additional led could flash indicating dangerously low cuddle gauge levels. and requesting a recharge.

this allows couples to keep track of the cuddle levels and ensure they always stay at a safe level.

additional thoughts

-gsm module to allow for e-cuddles
-wifi to allow proximity based cuddles / pausing cuddle drain when at home
-analog meter support for base station cuddle-o-meter
-a decided upon name
-a add on device that can be activated when a physical hug is engaged that speeds up the recharge process significantly

hardware

gsm – http://www.ebay.com.au/itm/251728140941
mcu – http://www.ebay.com.au/itm/371535922801
bar – http://www.ebay.com.au/itm/151775473664
led – http://www.ebay.com.au/itm/171371213386
wifi – http://www.ebay.com.au/itm/161849472764
btle – http://www.ebay.com.au/itm/191736126745
batt – http://www.ebay.com.au/itm/191547561905
usb – http://www.ebay.com.au/itm/172143472382
rtc – http://www.ebay.com.au/itm/131523900632

LED Skirt mark 1

I decided that this year for Vivid Sydney, I will do something I have wanted to do for a long time.

I am going to create an LED skirt.

I got the inspiration from SexyCyborg with her LED skirts over here:

My DIY Underlit LED (Hikaru) Skirt

I’m going a slightly different approach though.

Rather than just skirt-underlighting I am commissioning Tearschu to make a frilly skirt similar to this dress here

Edit: found some similar to the look im going for!
http://www.instructables.com/id/LED-Skirt/

Dress I made for my Senior Prom, hope you guys like it!

I am going to be embedding some strips of WS2812B addressable LEDs into the skirt, hopefully it’s going to give a nice washed colour effect into the whole skirt!

I will post progress pictures as I go with the build.

Parts list:

LEDs: http://www.ebay.com.au/itm/162068083230
Arduino Nano: http://www.ebay.com.au/itm/182093493024
Power UBEC: http://www.ebay.com.au/itm/271700451532
B
attery: Turnigy NanoTech 3s LiPo

 

Power source:

I am going to use a hobby UBEC that can do 5v at 3-5 amps 🙂
I have linked it above under the parts list. It will be connected to a 3s LiPo battery for powering both the arduino and the LED strip.

The LED strip can draw up to 3.5 amps at 5v at full brightness, this will only really happen if all the LEDs are lit, and white. but to be safe I am investigating power sources that can handle this.

I may end up just using a USB battery bank with its 2.1 amp output.
I am pretty sure thats all ill need.

Nevertheless I have a reddit post in /r/askelectronics over here where I am asking if there’s a better solution!

Some other projects that I may find useful to refer to:
https://hackaday.io/project/603-bluetooth-controlled-neopixel-lamp
http://www.instructables.com/id/Control-RGB-lights-from-Android-with-Arduino-Bluet/?ALLSTEPS

Prototyping!

I rigged up a little 3 pixel test strip to get the code worked out, ideally I want to have a push switch that can change between colour patterns / modes.

View post on imgur.com


I’m looking around to see if this has been done before because I’m terrible at code \o/


I did some testing with a 16 pixel ring to get a better idea of the colour mixing.
I really love the colours that come out of these things, they’re so vivid and will mixed!
I’m getting super excited for this to happen!

Update:

The electronics are ready!
I have completed it all and the power supply works and i’ve charged up the batteries!
Check out these pictures:

View post on imgur.com

Update: 
The code is ready!
I have uploaded it to GitHub here: https://github.com/CountParadox/NeoDress/
It’s made from a number of places and things mashed together, it has a few modes, and is fully configurable of course.
Tactile switch on digital pin 2, leds on pin 6, set for 60 leds at the moment.
has an off state, a rainbow chase, and a number of solid colours because they’re nice!

And here’s a video of the strip!


More to come…