My laptop died late last night. It appears to have sustained heat damage to the motherboard. The wireless, sound and CD ROM are not detected. The GPU also appears to be damaged, as it is not rendering correctly. Luckily my data is still intact.
This was my only computer, so this will up a slight delay to future posting and projects for a while.
Just wanted to drop by and give a quick update. I can’t wait to get a replacement unit going and get back to the projects… I have a bunch of great ones in mind too!
Another post on Pachube and how easy it is to get setup and going. This post will cover the basic steps on how to get some sensors online! I will be using my project of two light sensors as an example. The status of my light sensors are viewable at http://www.pachube.com/feeds/2145
Head over to the Pachube website and see various sensors from all over the world and view their status. Be sure to view the ABOUT page, this describes INPUTs and OUTPUTs, along with ways to interface with Pachube and your sensors. The QUICKSTART page has the details to get started and how to use your API. Pachube is still in beta, so you’ll need to get an invite code… but no worries, Pachube has an email address on the QUICKSTART page. Just send them and email asking for an invite and what you would like to do. If they let me in… they will let anyone in!
STEP TWO: PREPARE ARDUINO!
The Arduino can be interfaced with Pachube two ways: 1. With an Ethernet shield OR 2. Via USB connected to a PC running Processing… which is the way used in this tutorial… as I feel it is an easy and inexpensive way. You can learn more about each way at the Pachube Arduino page.
To prep the Arduino, you need to connect the sensors you will be using and verifythat they are working correctly! Once the sensors are good, then upload the “Standard Firmata” to the Arduino. Now the Arduino is prepped for Pachube! Leave the Arduino connected to the PC.
STEP THREE: PREPARE PROCESSING!
To have Processing communicate easily with Pachube, you will need to add a few libraries. They are the Pachuino, Arduino and EEML libraries, they are available and there is more info at the PACHUINO page. Download, unzip and move them to the libraries folder, in your sketchbook folder. Now Processing is ready!
STEP FOUR: PREPARE INPUT FEED!
Once you have a Pachube account and your API key, go ahead and set up a new feed for your sensors. Since I have light sensors, I started a new INPUT FEED. I chose to make my feed “manual” (as this is easier for me) which means Pachube gets updates only when I send them. Instead of Pachube connecting directly to my PC to pull the info.
STEP FIVE: PREPARE CODE FOR PROCESSING!
Once you have the libraries in the folder, you are ready to start Processing and start coding. Below is the code I used for my light sensor. This was taken from the sample code and stripped to make it more simple. I added a LED on pin 11 to light up (to let me know when my Arduino was running) and a delay(1500).
Be sure to add you API Key, and the URL of your INPUT FEED!
void setup(){
p = new Pachuino(this, Arduino.list()[0], 115200);
p.manualUpdate(”http://www.pachube.com/api/2145.xml”); // change URL — this is the feed you want to update
p.setKey(”—YOUR API KEY HERE—”);
Arduino is running “Standard Firmata” and connected to computer
Processing is collecting sensor data from Arduino
Computer has Internet connection
Now run your program and begin collecting data and sharing it on the web!! Check your feed to make sure you data is being transmitted. Have fun and happy tinkering!
Quick update before I zonk out… Yesterday I setup an account for Pachube and spent all night getting familiar with how it works. Pachube describes itself as a service that enables you to connect, tag and share real time sensor data from objects, devices, buildings and environments around the world. The key aim is to facilitate interaction between remote environments, both physical and virtual.
It also works with Arduino and Processing… hrmmmmm…..
As a “test” project, I set up two light sensors in my room. One is mounted on the wall, the other is taped to the window facing outside. The idea is to compare inside light levels to outside light levels and adjust for energy consumption. If the light level outside is equal or greater than inside, then perhaps I should open the blinds to let in more light… or maybe even go outside… *gasp*
The two light sensors are connected to an Arduino running the Standard Firmata. The Arduino is connected to a PC running a Processing sketch that sends the sensor data to Pachube. Nice and easy! I’ll post more details, code and a basic tutorial later… after I’ve slept… that way it *might* make sense.
Until then, here are some pictures and graphs. (yay graphs!) The two graphs are generated by Pachube and are fairly easy to customize. The higher the number, the less light is present. So, hopefully the Inside Light Sensor will stay a nice high number as I sleep… while the Outside Light Sensor should lower over the course of the day.
Arduino Light Sensor Wiring
Light Sensors in Room
Inside Light Sensor
Outside Light Sensor
Outside Light Sensor
Sunrise
"Screen Shot"
The graphs will continue to update as they receive more data from the sensors. It will be interesting to watch and compare the differences in the two graphs. More to come soon!
So, you have a *great* idea for an Arduino project… you’ve thought about what parts you will need and how they will work… but where will you find the parts?… and are you sure that’s the right resistor value?!
Today I would like to share a few tools that I use to help me, when I am in the design phase of a project. Both are relatively new and you may already be aware of them… but I thought it was worth a post… just in case
Octopart is a search engine for electronic parts. This is a great resource for many reasons! Octoparts allows you to filter your search by relevance, price, or quantity. You can also search by manufacturer or supplier, along with package type, size and many other options. I can see this being quite helpful for when your favorite parts supplier is out of stock… or perhaps you’re looking for an alternative to an existing part… maybe you’re building hundreds of bots for a robotics swarm and you need lots of parts and you want them from the same supplier… or… (it goes on and on…)
Wolfram Aplha is a “Computation Knowledge Engine”. What does that mean? I have no clue… but what I do know, is that it’s a wonderful tool for doing equations. It’s like having your own ship’s computer from the Star Trek! For those who like it, it’s a very nice reference tool and a great way for doing math or double checking equations.
I highly recommend that you spend time with these two sites!! See if they have a spot in your toolkit!
That’s right, we are still alive! I can’t stand the pain of not posting any longer, so I thought I would make the time to do a brief update.
Things have been quite action packed and distracting for me! A recent move has not helped with the distraction factor either, lol. Between work, packing and unpacking, here are the other things I’ve been doing with my time:
Learning to Code. As I progress in my projects, my lack of coding abilities are really starting to be the limiting factor. Among other things, I have been wanting to incorporate Processing into more projects. In order to manifest my crazy ideas into reality, I decided to really focus on learning to “code”. My favorite and possibly most valuable resource has been the Programming Methodology videos from Standford University. The course is taught around Java, which is convenient for me as Processing is Java based. Here is a link to the Programming Methodology course videos on youtube… they are also downloadable! http://www.youtube.com/view_play_list?p=84A56BC7F4A1F852&search_query=programming+methodology
I’ll embed the first lecture to wet your whistle!
Crafting. Yes, that’s correct. Crafting. I’ve been wanting to do some “wearable” projects… making use of the LilyPad, conductive thread and my madness, among other things. So, I have been learning to use a sewing machine, along with hand stitching and other techniques. Recently, I even had the opportunity to learn to make yarn from wool. I also have acquired a large amount of wool and a Navajo spinning spindle, to spin the wool into yarn. One of the things I would like to try is spinning my own “conductive yarn”.
Don’t worry, things are starting to settle and slow down with me… so hopefully I soon have time to start applying my new found knowledge to some neat Arduino projects.
Spent the day working with DS18B20 temperature sensors and getting an Arduino to read the data they spit out. Lucky for me and you, we have the shoulders of giants to stand upon as we copy and paste some magical code to get us started!
The DS18B20 is a small 3 pin temperature sensor that closely resembles a transistor. Each one has a “unique” 64bit serial code and can communicate over a “1 Wire” protocol. With a bit of code, we can have multiple temperature sensors all communicating and sending data over just one pin!
I’ve taken some pictures of my project today. I have three DS18B20 all communicating over pin 10 on an Arduino.
DS18B20 Temperature Sensor and Arduino
DS18B20 Temperature Sensor and Arduino
DS18B20 Temperature Sensors and Arduino
DS18B20 Temperature Sensors and Arduino
DS18B20 Temperature Sensors
"Screen Shot"
The first, or closest to the Arduino, is wired in “Normal” or “Master” mode.
GND(pin1) to Arduino GND
DQ(pin2) to Arduino Pin 10
VDD(pin3) to Arduino 5V
a 4.7K Resistor between DQ(pin2) and VDD(pin3)
The last two, or middle and furthest away from the Arduino are wired in “Parasitic” or “Slave” mode. These two require no power (as their name sake implies).
GND(pin1) and VDD(pin3) to Arduino GND
DQ(pin2) to Arduino Pin 10
The bit of sample code scans through the DS18B20 64bit serial codes until it finds no more unique codes. It displays the information in HEX, followed by Celsius, then Fahrenheit of each sensor before moving to the next.
Finally gotten around to posting some pictures and video from the Flourish Conference, in Chicago IL. Flourish was a blast, Droops and I had a wonderful time with all the great people that we met.
Flourish Conf 09
Morgellon talks to Massimo Banzi, co-founder of the Arduino
There has been quite a flurry of development revolving around the official ethernet shield recently. Here are what I consider a few of the more important changes.
Ethernet fixes - There are some connection issues with the ethernet library with regard to incomplete disconnects. Since the wiznet chip only supports 4 simultaneous connections, this manifests itself pretty quickly if you are trying to poll a server for changes. Etracer, from the arduino forums, found and fixed this problem and has released a new client.cpp as well as detailed the issues in a post to the arduino developers mailing list.
Another recent addition is Ben Combee’s Webduino library, which greatly simplifies processing html forms when using the arduino and ethernet shield as a web server. The library and basic examples are available at: http://code.google.com/p/webduino/
Bjoern Hartmann’s UDP library has also been used for a couple of recent projects including work on DNS/DHCP and fellow Infonomicon member Cynshard’s work on a NTP library. The NTP library is particularly useful since it can be combined with the software Date/Time library to have fairly accurate time without adding a hardware realtime clock to your project.
As you can see, there seems to be a lot of development activity ongoing for the official ethernet shield and since the addition of networking to the arduino greatly expands its possible uses, I think we’ll see even more. Please remember to thank these folks for their code and bugfix contributions…
What a short strange trip its been. I work at a small private military school with a really fun summer camp/school program. I asked the principal the other day if I could teach an Arduino class this summer, fully expecting to have to explain what it was and how I would do it, and he looked at the syllabus and said that it was cool.
I am teaching an Arduino class for High School Credit!
Then we went to Flourish ‘09 in Chicago and met Massimo, one of the founders of the Arduino project. (pics and video to come). He was excited about this class, saying that we needed more english language lesson plans for the Arduino. So not only am I teaching a really cool class, I am going to be helping with making lesson plans for teachers to use the world over.
So what about this class, what is it all about? It is an Innovation and Invention credit in 6 weeks, or half a credit in 3 weeks. I am going to guide the students in building what they want to create, which should be really fun.
Here’s another video from last weekend’s RepRap adventure!
This time Graxe describes the communications and controller boards, how they work and what they do. He’s using a bootable USB drive that contains all the software needed to work and communicate with the RepRap. Graxe also explains how one loads a file for printing and what type of files are excepted. Better lighting this time around… still in 720p goodness, enjoy!