|
|
New Articles:
Southern California Glider Landout Database Soaring 5-Inch Sky Robot FDM in Vacuum Gin Books Hacktastic e-bike Farnsworth Fusor Land Anchor Turchickentato Bowmaking Custom Discovery Roof Rack August, 2012 - Sierra Backpacking July 22nd, 2012 - Hiking in Santa Barbara July 15th, 2012 - Valley of Fire May 5th, 2012 - Afton Canyon April 28th, 2012 - Devils Playground Alpine Tripod Convict Creek Trail January 2012 - Mustangs January 3rd, 2012 - Heart Lake August 7th, 2011 - Kelso Dunes August 5th, 2011 - Lundy Canyon Hike August 2011, Mammoth Archery Birds in the garden June 4th, 2011 - San Gorgonio May 29th, 2011 - Sequoia National Forest April 23rd, 2011 - Living Desert April 2nd, 2011 - Death Valley March 8th, 2011 - Mountain Palm Springs February 13th, 2011 - Iron Smelt Blacksmithing November 13th, 2010 - Mojave October, 2010 - Mammoth Android September, 2010 - Mammoth September, 2010 - Duck Lake Trail Backpacking Red Iron bloom forging August 28th, 2010 - Mt. San Jacinto OSM Import: US Designated Wilderness July 25th, 2010 - Mojave Mustangs July 17th, 2010 - Mojave Exploration Bloomery furnace iron smelting Open Street Map: Mojave Project June 13th, 2010 - Mojave June 6th, 2010 - El Cajon Trails Wolf Mountain Sanctuary Carrizo Gorge March 28th, 2010 - Salton Sea March 21st, 2010 - South Main Divide March 13th, 2010 - Anza Borrego Wildflowers March 7th, 2010 - CSULB Japanese Garden February 2010 - Mammoth GeoRSS AISlib OpenStreetMap Dakota and Asha Celebrate Christmas, 2009 November 21st, 2009 - Mojave Road November 14th, 2009 - Anza Borrego Exploring The East Mojave: The Afton Canyon Area Broken flex plate Remote Image Serving Astro/night photography in Inyo National Forest Wild Mustang Sightings RSS September 26th, 2009 - Night Photography In Frazier Park Whiskey Brandy August 15th, 2009 - Catalina dive trip Astrophotography Sensornet January 24th, 2009 - Mojave Exploration July 2008 Mammoth Vacation AIS President Barack Obama! Rachel Maddow Big Geek Barack Obama April 12th, 2008 - Wildflowers and Landmarks My Grandfather's Alfa Romeo Spider March 8th, 2008 - Carrizo Plain Bridge To Nowhere High Availability October 20th, 2007 - Big Bear Camping October 22nd, 2007 - Fire Scottish Highlands, Aug 7th, 2006 Scottish Highlands, Aug 6th, 2006 August 5th, 2007 - Duck Lake Trail May 26th, 2007 - Kelso Dunes Culloden Battlefield, Aug 5th, 2006 May 20th, 2006 - Irwindale Renaissance Faire Edinburgh, Aug 4th, 2006 The Clifs of Moher, Aug 3rd, 2006 The Burren, Aug 2nd, 2006 Bunratty Castle, Aug 1st, 2006 May 5th, 2007 - Mojave Truck Audio/Data Network 2007 - Master Bath Remodel Centrum: Exit The Ring of Kerry, Jul 31st, 2006 Nikon D200 Victory in 2006! Blarney and Killarney, Jul 30th, 2006 Dublin and Cork, Jul 29th, 2006 Dublin, Jul 27th & 28th, 2006 Married! What Can I Do? April 30th, 2006 - Anza Borrego New desktop: Intel 805 D Macro Photography Jan 7th and 14th, 2006 - Hiking Whiting Ranch Hiking Engaged! Digital Photography with Linux September 5th, 2005 - Living Desert August 19th, 2005 - Mammoth Hiking and Photography July 30th, 2005 - Tucker Wildlife Sanctuary Nikon D70 Death, Fright and Photography Mmmmmm Eggs MythTV Inova T4 May 14th, 2005 - Red Rock April 2nd, 2005 - Death Valley Count Every Vote Act of 2005 Image Archiving Linear Logic ScanGuage Gentoo Linux November 6, 2004 - Mojave Super Tuesday, 2004 John Kerry Kayaking Irish Stew ImageServer Ireland, 2004 Canon A80 Camera Jul 25, 2004 - Death Valley Chronic Hiccups May 4th, 2004 Landscaping - My Front Slope Stump Pullin' Yeeee Haw! Feb 22nd, 2004 Feb 16th, 2004 PostgreSQL Logfile Analysis Spam Mountains? Desert? Jan 30th, 2004 Jan 28th, 2004 Encryption Ceiling Cargo Basket Front Bumper Version 2 Asha Exide Orbitals Land Rover Valve Jobs Spirits The Matrix: Revolutions Halloween 2003 Greg Davis CDL Linkage Ouzo Democracy Mom's Turkey Gravy Grandma's Guacamole Top Nodes Julian Pie Company DeCSS The KB1DIG 2-meter Halo Antenna Incomming searches Gardening is hard! Aug 13th, 2003 SQL and Perl Cancun 2003 Jul 9th, 2003 Aprs intelegence Jun 17th, 2003 Some People's Comments Dakota is a silly dog The Matrix: Reloaded Chris' Stage Bottle Harness April 23rd, 2003 Cracked Radiator! Black Wednesday DVD Burning Under Linux My Satellite Phone Wind! My Near-Death Experience Laser Cannon Revival Front Bumper, Version 2 SpamAssassin The Critters Dakota Milton KPC 3 Plus and HTX-252 My House Moving, moving moving... Mobile 1 Portola Hills New new house Suse Linux Database images In Truck Dr. Pepper My Favorite Toilet Kelso Dunes Desert Trips Ifulmuh Late Thoughts: Dr. Pepper Cooler 265/75-R16 Tires on a DII Linux George W. Bush Rants Driving Reservations Horses Sep 14 2002 Obsession August 17th Yukon Dives Less notifications My Custom Front Bumper Bracketless, Renamable Links Discreet Winch Welding Jul 28 2002 Day Trip My Firewall Jedi Group, my T1 and money A Bumperless Discovery! My Custom Rear Bumper Vanessa's 24th Birthday Jun 30th Dive to Long Beach Canyon PHP/PostgreSQL String Quoting Tonsillectomy, Uvulaectomy and Turbinite Reduction Searching functionality 240 Watt CO2 Laser Cannon My Workspace Dr. Pepper The Tulsa Rib Company The quality of hard disks these days Email notification of articles Email notification of comments erikburrows.com source code User Bios User Preferences Login feature Renisance Faire Jun 9, 2002 Computers hate me, and it is mutual. Star Wars Sucks! Horses, Jun 1, 2002 Land Rover Mileage Insomnia, Robin goes evil. 100 Watt Diode Laser Test Firing 1 Amateur Radio The Matrix 2001: A Space Odyssey TDI Deco Class Horses, Apr 30, 2002 APRS Movies Blackbird My Truck Batteries My Truck Vasquez Rocks The Zope Bible PSK31 Mojave Apr-12-2002 100 Watt Diode Laser The New www.erikburrows.com Hunter the Kitty Horses Geeks Yukon May-13-2001 Computers Matts Desert Pics Mojave Feb-10-2001 Mojave Apr-01-2001 Programming Languages Ironage Jul-4-2001 Mojave Jan-27-2001 Ironage Feb-03-2001 Mojave Jun-09-2001 SCUBA Jedi Group
|
|
|
|
Sensornet -   2009/02/20 | Viewed 78 times this month, last update: 2010/04/13
|
| Have you ever wanted to connect your boat's chart plotter to your AIS transponder, log the output of both, and be able to connect to the data stream from your laptop? No? Well I have!
Really! My boat's AIS box wants position data from an external GPS. The chart plotter outputs position data, as well as depth. I want to log the depth to a file with timestamp and position data for later map-making. I also want the chart plotter to provide that external position signal to the AIS box. I'd also like it if the position reports coming out of the AIS box would pop up as waypoints on the chart plotter.
To do that, and a VAST array of other possibilities, I started a new software project: Sensornet. Sensornet is inspired by GNUradio's modular sink/source structure. Sensornet is composed of modules, each of which can be a sink, a source, or both. A sink module can subscribe to the output of a source module, and do whatever it wants with the data. Sensornet's "loader" reads a configuration file, then instantiates and inter-connects modules as specified.
Sensornet has an ever growing number of modules, such as:
Input/Output:
- TCP client/server
- UDP client/server
- Serial ports
- Log to a file
- Print to the screen
- Log AIS messages to PostgreSQL
Message Parsers
Message Filtering
- NMEA sentence types
- Parsed values
Each module has an input, output, or both. Each input and output has a type. Any output can be connected to any input, as long as they're the same type. A "manager" program loads and connects the modules, checking for type, and saving/loading config files. It also restarts modules that fail for some reason, and re-connects them into the network.
The command line usage is pretty simple, given how complex some configurations can be, for example, this is how I connect my chartplotter to my AIS box, log the oputput, and send AIS position reports out to the net, sending only heard positions and my position, but not error messages, and save the configuration to a file, so I can just use -load next time.
sensornet.sh
-module serial_nmea ais /dev/ttyUSB0:38400:0:1:8:false:
-module serial_nmea gps /dev/ttyUSB1:4800:0:1:8:false:
-module logfile log biggeek-`date '+%Y%m%d'`.log
-module udp_nmea_client udp_out host:port
-module nmea_filter ais_filter AIVDM:AIVDO
-connect gps NMEA ais NMEA
-connect ais NMEA log NMEA
-connect gps NMEA log NMEA
-connect ais NMEA ais_filter NMEA
-connect ais_filter NMEA udp_out NMEA
-save chartplotter-ais-log.conf
Sensornet is written entirely in the Erlang language. It's modular, multi-threaded, cross-platform nature is perfect for this application. This project also gives me a good way to learn more Erlang, one of my new favorites!
Sensornet is currently available on my CVS server but may become a sourceforge project later.
The current release of Sensornet can also be downloaded here:
sensornet-0.0.1.tgz
|
permalink
|
|