Jonathan Oxer
[Blog]
>> Arduino talking to car engine management system
Thu, Jun 18th 6:27pm 2009 >> Practical Arduino
Originally posted on Practical Arduino Just made a big step forward in the Car Engine Datalogger project with an ELM327 interface chip connected to the second serial port on an Arduino Mega:
I can now issue data requests from the Mega and read the return value back from the engine management system via the ODB-II interface.
One step closer to moving my whole vehicle remote control / datalogging / diagnostics system over to running on an Arduino :-)
There's some information about my current system at www.geekmyride.org/wiki/index.php/Jon's_RX-8 but hopefully that will soon be largely obsolete.
Originally posted on Practical Arduino Just made a big step forward in the Car Engine Datalogger project with an ELM327 interface chip connected to the second serial port on an Arduino Mega:
I can now issue data requests from the Mega and read the return value back from the engine management system via the ODB-II interface.
One step closer to moving my whole vehicle remote control / datalogging / diagnostics system over to running on an Arduino :-)
There's some information about my current system at www.geekmyride.org/wiki/index.php/Jon's_RX-8 but hopefully that will soon be largely obsolete.>> Library for SHT15 temperature / humidity sensor
Tue, Jun 16th 4:55pm 2009 >> Practical Arduino
Originally posted on Practical Arduino
I need to talk to an SHT15 temperature / humidity sensor for one of the projects in Practical Arduino and there are a couple of good examples of how to do it, but I thought it would be nice to wrap it all up in a library so you could simply create an sht1x object and put calls in a sketch to do things like:
humidity = sht1x.readHumidity();
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
Very neat and to the point.
So I did it, and the code is up now on GitHub:
http://github.com/practicalarduino/SHT1x
It already incorporates temperature-correction for the humidity value (otherwise the value tends to drift once the temperature exceeds 25C) and I'm intending to do dew-point calculation eventually too. It's easy enough to fetch the current temp and humidity and do it yourself in the sketch, but a "readDewPoint()" method in the library would be sweet.
Suggestions very welcome: shoot me an email at jon@oxer.com.au if you find it useful or have ideas for improvement.
Originally posted on Practical Arduino
I need to talk to an SHT15 temperature / humidity sensor for one of the projects in Practical Arduino and there are a couple of good examples of how to do it, but I thought it would be nice to wrap it all up in a library so you could simply create an sht1x object and put calls in a sketch to do things like:
humidity = sht1x.readHumidity();
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
Very neat and to the point.
So I did it, and the code is up now on GitHub:
http://github.com/practicalarduino/SHT1x
It already incorporates temperature-correction for the humidity value (otherwise the value tends to drift once the temperature exceeds 25C) and I'm intending to do dew-point calculation eventually too. It's easy enough to fetch the current temp and humidity and do it yourself in the sketch, but a "readDewPoint()" method in the library would be sweet.
Suggestions very welcome: shoot me an email at jon@oxer.com.au if you find it useful or have ideas for improvement.>> Reading La Crosse weather station data
Thu, Jun 11th 8:19pm 2009 >> Practical Arduino
Originally posted on Practical Arduino My friend Marc Alexander did a very fast reverse-engineering job on the wireless communications protocol used by La Crosse weather stations last week, and the result is that I now have this sitting on top of one of my monitors:
The Arduino shield has a 433Mhz receiver module which listens in on the data transmissions that go from the sensor modules on the roof to the display unit that sits inside. Marc figured out what the various parts of the bitstream represent and wrote an Arduino program to decode and report it so I'm taking the output values and stuffing them into a MySQL database. Hopefully in the next week or so we'll have a funky Flex-based web interface to display all the data.
The sensors (temperature, humidity, windspeed, wind direction, rainfall, barometric pressure) are mounted on the roof at IVT:

Originally posted on Practical Arduino My friend Marc Alexander did a very fast reverse-engineering job on the wireless communications protocol used by La Crosse weather stations last week, and the result is that I now have this sitting on top of one of my monitors:
The Arduino shield has a 433Mhz receiver module which listens in on the data transmissions that go from the sensor modules on the roof to the display unit that sits inside. Marc figured out what the various parts of the bitstream represent and wrote an Arduino program to decode and report it so I'm taking the output values and stuffing them into a MySQL database. Hopefully in the next week or so we'll have a funky Flex-based web interface to display all the data.
The sensors (temperature, humidity, windspeed, wind direction, rainfall, barometric pressure) are mounted on the roof at IVT:

>> Video of Arduino as USB HID (fake keyboard)
Sun, Jun 7th 9:42pm 2009 >> Practical Arduino
Originally posted on Practical Arduino Amelia helped me make a video showing the USB HID shield controlling Frozen Bubble, and we uploaded it to YouTube this afternoon: Or view directly at: www.youtube.com/watch?v=SJlDyPws7Mk
Originally posted on Practical Arduino Amelia helped me make a video showing the USB HID shield controlling Frozen Bubble, and we uploaded it to YouTube this afternoon: Or view directly at: www.youtube.com/watch?v=SJlDyPws7Mk
>> Input from PS/2 (or USB!) keyboard to Arduino
Sun, Jun 7th 9:17pm 2009 >> Practical Arduino
Originally posted on Practical Arduino Time for a quick progress report on the PS/2 input project. Electrically it couldn't be much simpler. Connect the right wires in a PS/2 extension cable to +5V, GND, and two data pins, and the rest is all software. With this shield I can read keypresses on a PS/2 keyboard:
Yes, that's a USB-to-PS/2 keyboard adaptor plugged in, and yes, it works with (some) USB keyboards! PS/2 keyboards can be quite hard to find nowadays but most USB keyboard chipsets are made with a "PS/2 emulation" mode that lets them revert to speaking PS/2 when they detect that they are connected to a PS/2 port. A quick test with the USB keyboard that came with my Asus eeebox worked perfectly.
So why on Earth would you want to connect a full keyboard to an Arduino? Lots of reasons, actually. One neat trick my friend Scott Penrose does is use a keyboard as an input multiplexer. Basically he connects a bunch of devices to the back of the switches in a hacked keyboard and just reads the keycodes to detect events. Slick! Gives him 80+ digital inputs at very low cost (keyboards can be less than $10) and with only a couple of input pins.
Originally posted on Practical Arduino Time for a quick progress report on the PS/2 input project. Electrically it couldn't be much simpler. Connect the right wires in a PS/2 extension cable to +5V, GND, and two data pins, and the rest is all software. With this shield I can read keypresses on a PS/2 keyboard:
Yes, that's a USB-to-PS/2 keyboard adaptor plugged in, and yes, it works with (some) USB keyboards! PS/2 keyboards can be quite hard to find nowadays but most USB keyboard chipsets are made with a "PS/2 emulation" mode that lets them revert to speaking PS/2 when they detect that they are connected to a PS/2 port. A quick test with the USB keyboard that came with my Asus eeebox worked perfectly.
So why on Earth would you want to connect a full keyboard to an Arduino? Lots of reasons, actually. One neat trick my friend Scott Penrose does is use a keyboard as an input multiplexer. Basically he connects a bunch of devices to the back of the switches in a hacked keyboard and just reads the keycodes to detect events. Slick! Gives him 80+ digital inputs at very low cost (keyboards can be less than $10) and with only a couple of input pins.>> Fake Keyboard used in Andy Gelme's "wearable computing" talk
Wed, Jun 3rd 9:39pm 2009 >> Practical Arduino
Originally posted on Practical Arduino Last night Andy Gelme did a cool talk at Linux Users Victoria where he demonstrated a gesture recognition system that uses a Lilypad Arduino sewn onto a shirt and connected to an accelerometer mounted on a sleeve using conductive thread. Our cunning plan had been to use the output from his system to drive inputs on my Fake Keyboard shield to send keypress events to a host when he moved his arms around so he could control Frozen Bubble physically, but there was a misunderstanding about laptops: I didn't take mine along, and Andy assumed that I'd have mine there with Frozen Bubble installed so we didn't quite pull it off. It was cool though bringing the two bits of hardware together in the 5 minutes before the talk, plugging them in, and it worked first time! To make things easier for the talk I added some buttons to the Fake Keyboard shield:
Pressing any of the buttons causes it to send a keypress event to the host. I also had female headers soldered on so his Arduino could send events to it, but I took them off before that photo.
It's not as cool as using Andy's gesture recognition system but just for the fun of it I fired up Frozen Bubble and had a game totally controlled from the Arduino:

Originally posted on Practical Arduino Last night Andy Gelme did a cool talk at Linux Users Victoria where he demonstrated a gesture recognition system that uses a Lilypad Arduino sewn onto a shirt and connected to an accelerometer mounted on a sleeve using conductive thread. Our cunning plan had been to use the output from his system to drive inputs on my Fake Keyboard shield to send keypress events to a host when he moved his arms around so he could control Frozen Bubble physically, but there was a misunderstanding about laptops: I didn't take mine along, and Andy assumed that I'd have mine there with Frozen Bubble installed so we didn't quite pull it off. It was cool though bringing the two bits of hardware together in the 5 minutes before the talk, plugging them in, and it worked first time! To make things easier for the talk I added some buttons to the Fake Keyboard shield:
Pressing any of the buttons causes it to send a keypress event to the host. I also had female headers soldered on so his Arduino could send events to it, but I took them off before that photo.
It's not as cool as using Andy's gesture recognition system but just for the fun of it I fired up Frozen Bubble and had a game totally controlled from the Arduino:

>> It's on Amazon and we haven't finished writing it yet
Mon, Jun 1st 11:07am 2009 >> Practical Arduino
I was just checking out the new Author Blogs feature on Amazon.com when their system came up with a list of suggested books to associate with my profile - including Practical Arduino! Turns out it's already been issued an ISBN and a book page has been created for it. Wow, scary. www.amazon.com/dp/1430224770 Despite the fact that it doesn't exist yet it's even been assigned a sales ranking and there are several items listed under "customers who bought this item also bought" and says that 23% of people who view the book page ultimately buy it. Umm, huh? Are people pre-ordering it already? Not that I mind, of course! In fact - please go and pre-order a copy right now! No, order 10!
I was just checking out the new Author Blogs feature on Amazon.com when their system came up with a list of suggested books to associate with my profile - including Practical Arduino! Turns out it's already been issued an ISBN and a book page has been created for it. Wow, scary. www.amazon.com/dp/1430224770 Despite the fact that it doesn't exist yet it's even been assigned a sales ranking and there are several items listed under "customers who bought this item also bought" and says that 23% of people who view the book page ultimately buy it. Umm, huh? Are people pre-ordering it already? Not that I mind, of course! In fact - please go and pre-order a copy right now! No, order 10!
1 of 1
[ Back to top ]
