diff --git a/lib/activeremote/protoable.rb b/lib/activeremote/protoable.rb
index <HASH>..<HASH> 100644
--- a/lib/activeremote/protoable.rb
+++ b/lib/activeremote/protoable.rb
@@ -112,8 +112,10 @@ module Activeremote
 			end
 
 			def base64_encoded_value_for_protobuf(attr_key)
-				value = attributes[attr_key]
-				{ :encoded => value, :raw => self.class._base64_to_bytes(value) }
+				if read_attribute(attr_key).present?
+					value = attributes[attr_key]
+					{ :encoded => value, :raw => self.class._base64_to_bytes(value) }
+				end
 			end
 
 			def update_from_proto(proto)
diff --git a/lib/activeremote/version.rb b/lib/activeremote/version.rb
index <HASH>..<HASH> 100644
--- a/lib/activeremote/version.rb
+++ b/lib/activeremote/version.rb
@@ -1,3 +1,3 @@
 module Activeremote
-  VERSION = "0.0.4"
+  VERSION = "0.0.5"
 end
Fix base<I> encode method to only encode when the attribute is present