BUGmotion
From BUG Wiki
The Motion Detector and Accelerometer Module
BUGmotion includes both an adjustable motion detector and a three-axis accelerometer to monitor movement of and around the BUG.
Contents |
Product Specifications
- Module:
- Includes collar to reduce motion detector field for "spot" detection
- Motion Sensor:
- Passive Infrared (PIR) sensor
- Sensing area: 110 degrees Horizontal, 93 degrees Vertical
- 80 zones sensitivity
- 10m rated detection distance
- Motion Sensor Datasheet
- Accelerometer:
- Three-axis accelerometer
- Software selectable sensitivity (2.5g/3.3g/6.7g/10g)
- Low nonlinearity (less than plus/minus 1% FSO)
- Accelerometer Datasheet
Hardware Documentation
- BUGmotion Hardware Design Spec (pdf)
- BUGmotion layout (pdf)
- BUGmotion schematic (pdf)
- BUGmotion BOM (pdf)
- BUGmotion assembly files (zip)
Software Documentation
Drivers
All BUG drivers can be found in the BUGlabs SVN.
The BUGmotion drivers handle the basic operation of the module. IOCTL commands can be used to:
- Operate the motion detector, and check its status and data
- Operate the accelerometer, and check its configuration and data
- Control LED operation
- Read the IOX register
- Enable and disable VSYNC
- Enable and disable LCD
- Enable and disable serializer
- Enable and disable accelerometer
OSGi Services
Method documentation for all OSGi services (from BUG and from other users) is available in the javadocs. The services listed below can be found in the com.buglabs.bug.module.motion.pub and com.buglabs.bug.module.acceleromet.pub packages in the latest revision of the BUG javadocs. Each service is an interface with its own methods.
From com.buglabs.bug.module.motion.pub:
- IMDACCModuleControl – Service for basic module controls & interaction with base (extends IModuleLEDController and IModuleControl)
- IMotionObserver – Service for detecting motion
- IMotionRawFeed – Service that provides raw data from the motion detector
- IMotionSubject – Service for registering motion and interacting with observers
From com.buglabs.bug.module.accelerometer.pub:
- IAccelerometerConfigurationListener – Service for monitoring changes in accelerometer configuration
- IAccelerometerControl – Service for configuring accelerometer parameters like sample rate or sensitivity
- IAccelerometerRawFeed – Service that provides raw data from the accelerometer
- IAccelerometerSampleFeed – Service for reading continuous samples from the accelerometer
- IAccelerometerSampleProvider – Service for reading a single sample from the accelerometer
Web Services
When a BUGmotion module is attached, two web services become available:
- The Motion web service provides the last date and time motion was detected
- The Acceleration web service provides acceleration along three axes


