I got my 3D printer a few days ago(The Micro 3D Printer, last night I sat down for 15 minutes and threw a super basic design together in Google sketchup. (I already had it installed…)
There’s two compartments in the underside, one for the LED ring+digispark, one for the battery+charger.
Not sure how I’ll do the bottom yet. Probably a thin sheet of plastic glued on.
I’ll print it in either white or clear pla, and apply some kind of coating to the top for water resistance.
First print was too small because sketchup messed up my measurements, but here’s some photos anyway:
New one is printing as I type!
And on that note, here’s some photos of the printer.
you’ll need an antenna tuner because reasons, and probably extra strain relief, but think about it.
need a 10/20/40m antenna?
hook up two 10m cat5 lengths!
you could keep it in a bag, and go off camping or to a field day, forgot your cables?
no prob! head to a nearby electronics store and grab some ethernet of the length you need!
where the cat5 jacks connect to the pl-259, all wires are used in the cat5.
JUST DONT GO PLUGGING THE OTHER END INTO ANYTHING HAHAA
Recently, an Arduino compatible IDE was released for the ESP and I’m super keen to try it out. I’ll download it later today and give it a go, ideally I want the adafruit neopixel library to work as then I can connect my coaster to the internet!
More on that in a minute.
Yesterday two things arrived in the post, my 16 neopixel ring, and my NodeMCU dev board.
Both very exciting!
Maybe I can combine the two? ๐
The dev board is because ive had difficulty flashing the ESP chips in the past so I was hoping to have better luck with a breakout board with inbuilt USB TTL and a flash button. I did! It flashed the latest NodeMCU firmware right away!
Node MCU is an alternate firmware for the ESP that has a runtime for Lua 5.1.4 inbuilt! So this is the excuse I’ve needed to learn a bit of lua!
I’ll also be using this later with the Arduino IDE and I’ll make up an image for cross referencing pins.
The neopixel ring is to be used in my ongoing quest for the most amazing coaster ever.
It will make my drink disco!
I’ve had a prototype in the past using a single RGB LED, then another using a disc of them, and this one is a ring, but they’re addressable!
What I’m hoping to get is a sort of rainbow flowing effect happening.
Ive got the code at a good starting point, for effect testing.
All I did was modify the example sketch that goes through a bunch of possible modes ๐
I’m driving it from a digispark board, and in the final build it will use a 3.7v lipo for power.
The LED ring does seem extremely bright, and gets a little hot during normal operation so I better look at dimming the LEDs as I only need enough light to light up my drink! Not the room Hahaha
There’s a few different sized ones too. The one with 16 and the one with 60 LEDs cost the same! D: sadly I don’t need that many though it’s far too big for my purpose hahaa
Maybe I can find a use for 60… Hehehhhh..
Oh and they come in strips too and individual of course! And boards… THERES LOTS OF CHOICES OK?
I needed a temperature node, but I didn’t have a DHT22 temp/humidity sensor!?
So I modified the example sketch for the DHT to use a DS18B20 Digital Temperature Sensor instead!
It works great!
The sensor is connected as shown here:
http://www.hobbytronics.co.uk/ds18b20-arduino
Heres the code:
/*
DS18B20 Digital Sensor Node Sketch for EasyIoT Server
Modified by Lewys Martin <l@lewys.eu>
See: blog.lewys.eu for details
Original Code:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
V1.0 – first version
Created by Igor Jarc <igor.jarc1@gmail.com>
See http://iot-playground.com for details
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
version 2 as published by the Free Software Foundation.
*/
#include <Esp8266EasyIoT.h>
#include <SoftwareSerial.h>
#include <DallasTemperature.h>
#include <OneWire.h>
I actually managed to produce something that is NEAT
and well laid out (in my opinion)
Parts:
โข Arduino Nano
โข ESP-01
โข 5-3v Level Shifter
โข ย Perfboard
โข Bunch of headers
โข Some wire
โข Soldering Iron + 0.3mm Solder
โข Dremel to clean things and cut things and stuff
As you can see in the photos:
The board as a whole:
The board with components removed:
The underside of the board:
Cleaned edges with Dremel:
The things I have to add still:
Also, as you can see, theres a notch missing from the Arduino near the ICSP pins, I used my Dremel to grind that away (theres no traces there as far as i can tell) so that the ESP module fits so perfectly there and the whole package fits inside the dimensions of the perf board ๐
This node has been added to my EasyIoT Server as a secondary relay node for the time being, but I want to get my hands on a DHT22 to add a temp/humidity sensor to my bedroom ๐
Then I can start expanding to other rooms in the house! MWAHAHAA
Using a full size Arduino Uno modified to 3.3v, and that weird shield I built, modified to software serial pins 10 and 11, and also to add a power input of 5v that gets regulated to 3.3v on both the shield for the ESP8266, and the arduino for… itself?
It connects to a Raspberry Pi running the latest version of Raspbian and EasyIoT Server, I figured out their API without even a mention of there BEING ONE ON THEIR WEBSITE (they don’t mention it anywhere but i noticed a mention of it in the console log and figured it out)
The ESP8266 01 type connects to the main WiFi, then to the server, from then I can browse to the IP of the server and theres a beautiful interface ๐
The EasyIoT server also supports the RasPi GPIO and the MySensors stuff, so Im gonna use that for things like doors, and temp/humidity sensors
I butchered up one of the almost-broken Pro Minis I have, its a 16Mhz version so not sure if its going to just run at a lower frequency or be unstable, but all I will need it to do is sleep and wake up every now and then to send a reading from a sensor!
Im going to get some of those NRF24 something radios as they seem to have far better range and support than the things I HAVE been using hahaa,
Basically, I removed BOTH LEDs (forgot there was a PIN13 LED on there D: ย could have left that
and the regulator was also removed.
Powered it via 3.3v from my USB TTL adapter and uploaded a blink sketch, probed an LED onto 13 and GDN (yes GDN hueeee)
and it blinks ๐
After a few weeks of playing with them I finally have something worth writing about!
For the 07 nothing much more than I finally made a breakout board, as you can see here:
Its raised on a random SMD electro cap, and connected to the perfbpard with zero ohm resistors.
(The cap has only one purpose, raise the module)
As for the 01,
I rewired the serial lines up to pins 10 & 11, for software serial, then using the EasyIoT library have it connected to the Easy IoT server running on a raspberry pi elsewhere in the house!
At the moment it’s got a relay, but when I get some more sensors and modules I’ll make a while bunch of things. Need some of those temperature and humidity combo sensors, and some of that 2.4ghz rf transceivers for low power nodes. Also need some 3.3v pro minis ๐
Here’s the 01:
External 5v goes in, relay feeds It’s VCC off this, then it goes through an 13337 based regulator down to 3.3v for the esp, (have to wire in a selection switch for powering the arduino also from this 5v source. Then a proper power connector.
Update: This project died when I got a job and can afford off the shelf automation stuff :’)
It might come back when I start adding stuff like blinds and air conditioning control!
This project is basically me wanting to be able to automate my house but not wanting to fork over heaps of money for pre made systems.
I’m a bit lazy with details so if there’s any questions you have please comment below!
Newer Update v2.5
Ok, so it just occured to me that I could have bent the antenna down flat so that I wouldn’t have had to make any holes….
I got around to making a few changes, I’ll let the images do the talking for me:
A few notable things, white LED on ParaShield (I’m calling it that now) has been replaced with a less bright red one. Transmitter repositioned and wired a little nicer, Ethernet hole cut (Stanley knife, metal cutters and pliers).
Proper helical antenna added to both units, Rx unit now has single channel relay.
Also, I shoved it all in a box and added a 12v fan running off 5v from the ParaShield (may add fan controls/monitoring later) so nothing goes wrong with summertime here.
I’m just waiting for the other 433mhz things to add a manual light switch, and the infrared control unit. Codes all ready but need the RF receiver D:
.
Also, on the app side of things,
I added an all on/off section so when this projects complete, I’ll be able to stand out the front of my house, say something awesome, hit a button, and the whole house lights up or goes dark ๐ XD
New update V2
So I discovered this thing:
http://www.ebay.com.au/itm/291262467339
I remember reading about this a while ago but didn’t care for arduino or anything much then.
But now I’m looking at this and seeing
This+Relay+PSU = self contained without need for base controller!
Plus, did I mention ITS FOUR FREAKING DOLLARS
how could I NOT order two!
When they arrive I’ll have a play around see if I can figure out how to control them ๐
Will post here when I do!
In other news: I ordered proper 433mhz antennas for the things, and found the PS move squigy ball.
Will get a box soon for it all haha,
I’m also preparing some LED strip on the front veranda to be controlled by my UI. And I’m developing an android app (will design a tablet version later)
Using Tasker app factory!
Early screenshot attached!
Other photos:
Newer update:
I found chunks of a broken PlayStation move controller, for now I’ve soldered some resistor legs to the rgb led breakout board, and have the rgb led on the base station for reasons,
Hopefully further down the track I’ll be able to turn on a mood light fading through, (although once it starts fading how do I stop it…?)
Or even notifications for things!
It also acts as a status light,
On sending an on command it flashes green twice, the off command has two red flashes.
An unused but implemented command gives three orange flashes.
I need to figure out how to flash an error if an unrecognized command is received…
Also I hope to find the sphere from the PS move. And to mount the led on the proto shield, maybe move the rf transmitter to make a cut out for the Ethernet jack,
And then try my luck at designing a special case for it all.
Either adapting an etherten case, or making a shitty one from scratch.
YouTube video showing on/off light
Signal light: http://youtu.be/ejXlYe17N8U
————————————————————-
New update: I got it working again ๐
Not sure what was wrong but I rewrote the code and now it works hahaha
Its a bit slow probably because of the speed I have the radios set to, but oh well doesn’t matter.
I soldered everything together into a little clump, minimising wires, and made a shield for the transmitter so it sits neatly atop the etherten.
I’ll be able to add other things to the proto shield later ๐
Also. Found a leostick under my bed but I’m having issues uploading code to it. Going to use it to make that light switch if I get it working ๐
LOOK AT ME I BROKE IT SOMEHOW
Went for a trip to jaycar and bought some supplies, and a smaller soldering iron
When I got home I took down the roof unit, attached shorter cables so it would fit in the little box, and put it back together,
But just my luck, it’s not working now!
I send commands but it doesn’t trigger the relay….
I’ll have to connect it and look at serial monitor to see if it’s getting the command
I’ll also add some code and an LED that blinks when it gets a command….
Oh, and maybe the code to light that emergency light if a pin goes low?
I should probably remove all the pin headers and solder right to the board actually…
Or to a proto shield….
The current state of the project consists of an arduino pro mini clone, that listens on the 433mhz band for a command, and turns on a relay depending on the command.
There is a Freetronics Etherten acting as base station, connected to my LAN, and a 433mhz transmitter, this responds to http requests by sending various commands to the ceiling unit.
Its easy to add additional remote units and set up controls for them, which I plan on doingย when I get blinds for my windows.
I also have a raspberry pi running Rasbian that listens for a button press, which is wired to our 20 year old retro doorbell, when the button is pushed the Pi sends a pushover notification to my phone/pebble, as well as plays a doorbell sound throughout the houseย directly connected speakers.
I’m also going to be setting up Asterix or something on this to add Cisco VoIP phones around the house.
I have plans for an analog control panel too, that has physical buttons connected to an arduino, to send commands to the various other arduino around the house.
For example, a light control panel, push one button to send off commands to all lights in the house, or indivuaul etc.
I also will be adding a sensor to the mailbox, probably solar powered, that sends a command in to the house when mail goes in, either emailing me, maybe a photo?
Sending my pebble/phone a notification, or just lighting up an LED on the control panel to indicate new mail!