Putting the Garage Door Monitor on hiatus

img_20170211_080857Let’s take a break

The deep sleep issues haven’t been solved, yet. It seemed like it got better when I put a resistor between D0 and Reset but it still stopped working after a while. After catching a few YouTube videos about the ESP8266 deep sleep, I’ve come to conclusion that I’ll have to rearrange my code big time. I’d rather regroup at this point and try something else.

Since the weather will be getting warmer, maybe I’ll leave the garage door monitor project until the summer. The motivation of the project was from the door problems that stem from the cold weather. I have an enclosed temperature sensor on the way from China so maybe I’ll try my hand at a weather station again.

So I’ll leave it there for now…

Garage Door Monitor likes its sleep

Garage Door Monitor Update #2

The NodeMCU project is still chugging along. I’ve gotten more experiments done which I’ll share with you shortly. Unfortunately, all of this information has left me more indecisive of how I want things. To recap, I want to make something to be able to tell me whether or not my garage door is open or closed without going outside to check. Click here to see the first post about the project.

garage1Problem: Is it dead or does it just like to sleep?

The problem with the NodeMCU working for a while and then giving up on life is still the big one. I’ve done a few overnight tests with a few tweaks (mostly giving it delays/time to do things) with them all resulting in entries stopping after about six hours.

When I use my bench power supply, I’m able to see how much current it’s drawing. When it’s on, it’s pulling about 69mA and peaks to about 71mA when it’s transmitting data. It doesn’t seem like much, but it registers as pulling no current on my power supply when it’s in its deep sleep. Seeing that, it’s hard not to want that sort of power saving on the final build.

More likely than not, I won’t let it go to sleep and have it on all the time. I haven’t actually tested this yet to see if it will stop working again. Stay tuned!

Experiment 1: They still can’t hear each other

I tried to get two NodeMCUs to talk to one another again but it’s still not working out. Basically, I had one that would set up as an access point with a webpage that I’d try to get the other NodeMCU to connect to and read. I could get it to connect once but then it failed at reading any data. After that, I couldn’t get it to connect to the AP NodeMCU anymore. I have no idea what changed in that time.

The alternative solution is to continue sending my data to my webhost, and then having the NodeMCU connect to a webpage I have online which will feed it the information it needs. The webpage it would connect to would give it raw unlabeled data that it knows how to decipher.

Experiment 2: Keeping it local

After banging my head for a few hours, I strayed away into another alternative, which would eliminate the second NodeMCU where I use my phone to see what the NodeMCU in the garage is up to.

It went very well since it was easy to modify the WifiAP example sketch (at least that’s what I think it’s based off of, I’ve been accidentally saving over the example sketches). I was able to see the values on my phone by visiting an IP address once I connected to the NodeMCU. However, the fact that I have to switch my wifi is a bit annoying which makes this an undesirable option. It’s still good to know I can do this though as I could use it in some other project.

So now what?

With everything in mind, I’ve got some updated objectives:

  1. Garage NodeMCU has a limit switch which will tell whether the door is open or not. It will connect to my webhost and send data. This NodeMCU is no longer allowed to go to sleep!
  2. Webhost will present the data to me on a page much like the screenshots I’ve been sharing. It will also have a seperate webpage with raw recent values.
  3. Inside NodeMCU will connect to my wifi network and then to that webpage with the raw recent values. It will take those values and decide what to do. (Light up an LED, make a sound after a few minutes, etc.)

New NodeMCU Project: Garage Door Monitor

The Objective

For whatever reason, our garage door opener doesn’t work reliably when it’s cold. Only the remotes that are inside in the warmth actually work so we have to remember to close the garage from inside the house. Sometimes it’s forgotten and the garage door is left open. There’s no way to see whether or not the door is open from inside the house. Thus, this project came to mind.

The main objective is to create a wireless way to know whether or not the garage door is open.

The Planimg_20170126_190721

The plan is to use two NodeMCU boards. One inside the garage will talk to the other inside the house. The one in the garage will be connected to a limit switch which will be closed when the door is closed. The one inside the home will have some sort of indicator that will tell us whether the door is closed or not. This will likely just be a labelled LED.

These Two Don’t Like Each Other

I received the two NodeMCU boards in two weeks from China. The experiments trying to get them to talk to each other (one as an access point, the other as a client) did not work out. I went hours trying to get something going but I couldn’t, so I went back to something I knew already, which is to have it talk to some PHP code hosted on my website.

The NEW Plan

I wasn’t planning on having the internet involved but I actually think it’s going to be a better idea. This way, I can get something going with just one board and then integrate the second one into the project later. I can check the status of my garage door right from my phone’s web browser from anywhere. The future is here people!

 

The new plan has a couple phases.

Phase 1: Set up one NodeMCU in the garage with the limit switch. The switch will send the status to my website which I can then check to see the status of the door. I can use some PHP code to send me an email if the door has been open unusually long.

Phase 2: Have the second NodeMCU connect to my website and build hardware around it so that anyone that walks in the front door can see whether or not the door is closed.

Progress Update

img_20170129_151905

It’s been going pretty well so far, even with it’s problems. I’ve got two limit switches sending values to a MySQL database hosted on my website. (The full process: It accesses a URL with the switch values inserted into them, and then some PHP code on that page grabs them and inserts them into the MySQL database table.)

BTW, I am using the Arduino IDE to program the NodeMCU.

screenshot_20170130-091040-01

I have no issues with it inserting values. The big issue I’ve been having is I haven’t gotten it running for longer than two hours at a time. I don’t know if it’s something on the server’s end or if the NodeMCU is hanging or something. It took me a while to get it to wake from deep sleep without doing something weird so I suspect it may have something to do with that. If this issue keeps going on, I may stop it from deep sleep and see how that goes. It’ll draw more energy but I’m leaning toward giving it a wall plug.

Keep Following the Project

I hope you enjoyed this first update post about my first NodeMCU project! Stay tuned for more!

screenshot_20170131-174839

If you’ve got Instagram, follow me as I’ve found it to be an easy way to share progress updates as they happen.

MWH Projects LED Foam Core Sign!

Happy New Year: Clean up time!

img_20170106_223932

I spent the last weeks of 2016 and the first weeks of 2017 cleaning up my electronics and projects storage areas. I’m happy with how most of my areas are now, especially my soldering work station pictured above. I moved the power supply from the main work table to the shelf above so now I have lots more room to work on. Of course, it would be nice to have more but it is what it is.

First project of 2017: MWH Projects Sign!

img_20170109_193734

I came up with this rather quick project for my first project for 2017. It would be a basic sign for my MWH Projects “brand” or whatever you may call it. The idea was to have nice clean lettering on a base with some LEDs. To make the letters, I printed out an outline of the MWH Projects text in Photoshop, taped it on some foam core, and carefully cut away at it.

The “MWH” was very easy since it’s all straight lines and large letters. The smaller “Projects” text was a little more difficult. I didn’t like the jagged rough edges so I soaked them in white paint. It gave the letters a rough texture but cleaner corners and curves.

img_20170111_201435

The base was a simple box made out of black foam core board. I hot glued on the “projects” text before working on the LED circuit.

There are three WS2812B LEDs in this project which are controlled by my Attiny85 breakout board. For power, I’m using 3-AA batteries and a step-up converter to get it up to 5V. I’m not sure if the step-up was necessary but, at the time, I wasn’t sure if I was going to be using 2 or 3 AA batteries.

img_20170111_205007

All of the parts fit nicely inside of the box, except for the battery holder which is stuck onto the back of it.

img_20170111_204913

And that’s it! I think it looks pretty nice, although the holes for the LEDs could be a bit cleaner.

img_20170111_204930

Speaking of the holes for the LEDs, I actually used a drill bit the size of the WS2812B round PCB modules. Leaving it like that, it wasn’t putting enough light on the letters so I cut a little more around them. I wasn’t sure I liked how the lights were showing on the letters but, after a while, I got used to it.

img_20170111_205021

I’ve been finding myself stuck on project ideas so I’m super glad this project worked out well.

Thanks for reading!

Happy Holidays! (Arduino Christmas Light Show 2016 Debut!)

Enjoy the Show!

Build Notes

A Rough Sleigh Ride

It’s been a strange ride these past few weeks developing the show. It’s gone from this elaborate idea of servos, LEDs, fountains, and more Christmas-themed props to a very simple stage. With that, there’s a feeling of the show being unsatisfactory… but I’m still satisfied anyway.

From the original four pan and tilt contraptions I had built, it dwindled down to using just two… and then a big fat zero. The two constraints were the small stage size which was too small to fit four, and the FastLED library didn’t seem to play nicely with the Servo library. I didn’t do much testing to determine whether it was this or too much current draw for both at the same time, but each library behaved properly when the other was removed.

Again with the small stage thing, there wasn’t much space to fit in the fountains or any props. (The big workbench is out of service, for reasons.) There was also the mess I made with some experiments that didn’t get my hopes up very much. It would have been nice to continue on with fountains for Christmas again… there’s always next year.

Despite all of the compromises and cuts, I can’t honestly say that this wasn’t a good project though. I’ve learned and will move on to something bigger and better.

Press Play on the Holidays

capture

One of the highlights of this project for me was creating a Visual Basic program to control the show. I used to manually sync the music while I was programming the show by basically giving my best guess as to when to hit play. With the VB program, starting the show with synced up music was as simple as hitting play.

There were a few problems I encountered. One was that I didn’t know how to stop the show mid-way if I needed to. I thought about interrupts and all that but I felt like time wasn’t on my side to figure that out. With my current setup, I could only stop the show from playing anything else after the sequence was done.

Another problem, although not one cause by the VB program, was that the sketch size became to big for all of the shows to be in one single sketch. I think it may have to do with the size of the FastLED library but I’m not certain. Since I couldn’t have all of the shows on one sketch, I couldn’t play them back to back through the VB program. I’d like to experiment with programming the show in the Visual Basic program itself so that the lengthy show code is saved on my computer as opposed to the Arduino.

Want the code?

Check out my GitHub for both the Arduino sketches and Visual Basic files!

Thanks for Visiting!

Merry Christmas, happy holidays, and best wishes for the new year!

A Dry Christmas (Light Show 8 Update)

In the first update for my next Arduino Light Show, I went through some of my experiments with my fountains. After some thought, I had planned on scaling it back but, in the end, I decided to scrap the fountains all together from the next light show. Despite the loss of the fountains, there are still new things to see!

img_20161019_181202

OK, so this is not really new. I made this weird Christmas tree last year. It was rather last minute so I didn’t do much with it. The plan now is to incorporate it into a new Light Show. Actually, it’s going to be the main feature.

I did a little bit of cleaning up. I cut the base into a circle and painted it black, trying hard to avoid painting over the LEDs.

img_20161021_194229

Here’s something new… well, again, sort of. I’ve done LED “spotlights” before by strapping 5mm LEDs to a servo motor. What’s new this time is that I’m using two servo motors per spotlight to make it pan and tilt. I’m also using WS2812B LED modules like on the tree. More movement and color should make the spotlights more interesting than before.

img_20161112_225030

After testing out the concept, I made an army of four.

img_20161119_204021

Some LED tests.

20161119_221619

I painted the spotlights all black as much as I could so that they’ll blend into the darkness.

So that’s the current state of the next Arduino Light Show. I had some other ideas in mind but I wanted to leave lots of time to get what I have here ready and programmed. We’ll see how the next little while goes. Thanks for reading!

A weekend in Ottawa… (Maker Faire Ottawa)

Parliament Hill

I traveled to Ottawa specifically for Maker Faire but I wanted to take a walk around Parliament Hill. In hindsight, I should have centered the trip around Parliament but I suppose Ottawa isn’t too far to do that in the future.

I spotted the projectors for the Northern Lights show which is a 3D projection show on Parliament Hill. Unfortunately it ended for the year last month so I didn’t get to see it.

To the side of Parliament is the Ottawa Locks. The whole area around it is so pleasant, especially with the leaves changing color for the fall.

Continuing my walk across the Locks and up a hill, I got this great view.

The OC Transpo Incident

With a Maker Faire ticket, the local transit agency, OC Transpo, was free. Naturally, I tried to take advantage.

Going from Parliament Hill to Maker Faire, the bus I was travelling on hit a pedestrian. Thankfully I did not directly witness it as I’d probably be more traumatized by it than I already am. Even more thankfully, I believe the pedestrian will be OK as I saw him helped up onto a stretcher by the paramedics as I looked on waiting at the next bus stop down the street.

At this point, I felt like ditching the rest of the day and camping out in the hotel room. But that wasn’t going to happen.

Maker Faire Ottawa

So after what unfolded just 20 minutes ago, I was eager to get myself inside the Aberdeen Pavilion to take my mind off of what happened.

These guys from Montreal are doing great things with 3D printers! They had a prize draw for a 3D printer or filament. All you had to do was add a piece to a 3D printer they were building.

I love LEDs so I was drawn to the Inventors Dads booth. They had this neat game with a sea-saw thing that would control the horizontal LED strip above.

More LEDs! These were reacting to the music that was playing.

One of the many impressive Lego creations on display at one booth.

I remember some of the sculptures from these guys on display here in Toronto but it seems like they had even more here. Very cool looking stuff!

Robotgrrl was driving around the robot from her Robot Missions project, one of the handful of mobile robots roaming around the Pavilion this weekend.

They set up a food court outside that consisted of three food trucks.

Summing things up

If I’m going to be honest, I found that Maker Festival in Toronto (which was formerly a mini-Maker Faire) to be grander than Maker Faire Ottawa, which is surprising considering this was a full-fledged Maker Faire. But that’s not to take away from the awesome things on display. I’m inspired by the creative and intelligent minds at the Faire, and that gives me inspiration to work on my own things. That’s something I always look to take away from these events.

More pictures

You can view all of my pictures from the weekend on the photo gallery.