diff --git a/lib/partition.js b/lib/partition.js
index <HASH>..<HASH> 100644
--- a/lib/partition.js
+++ b/lib/partition.js
@@ -46,8 +46,12 @@ Partition.prototype = {
     from = from + this.firstLBA
     to = to + this.firstLBA
     
-    if( this.__OOB( from ) || this.__OOB( to ) )
-      callback( new Error( 'Block address out of bounds' ) )
+    if( this.__OOB( from ) || this.__OOB( to ) ) {
+      var msg = 'Block address out of bounds: ' +
+        '['+from+','+to+'] not in range ' +
+        '['+this.firstLBA+','+this.lastLBA+']'
+      return callback( new Error( msg ) )
+    }
     
     this.device.readBlocks( from, to, buffer, callback )
     
@@ -61,8 +65,12 @@ Partition.prototype = {
     
     from = from + this.firstLBA
     
-    if( this.__OOB( from ) )
-      callback( new Error( 'Block address out of bounds' ) )
+    if( this.__OOB( from ) ) {
+      var msg = 'Block address out of bounds: ' +
+        '['+from+','+to+'] not in range ' +
+        '['+this.firstLBA+','+this.lastLBA+']'
+      return callback( new Error( msg ) )
+    }
     
     this.device.writeBlocks( from, data, callback )
Updated lib/partition: Better error msg on OOB