diff --git a/lib/nmea2kto0183/N2kDataToNMEA0183.cpp b/lib/nmea2kto0183/N2kDataToNMEA0183.cpp
index 99c2615..d3253ad 100644
--- a/lib/nmea2kto0183/N2kDataToNMEA0183.cpp
+++ b/lib/nmea2kto0183/N2kDataToNMEA0183.cpp
@@ -70,20 +70,6 @@ private:
     tNMEA0183Msg xdrMessage;
     bool xdrOpened=false;
 
-    String buildXdrEntry(GwXDRFoundMapping &mapping,double value){
-        char buffer[40];
-        String name=mapping.getTransducerName();
-        if (mapping.type->tonmea){
-            value=(* (mapping.type->tonmea))(value);
-        }
-        snprintf(buffer,39,"%s,%.3f,%s,%s",
-            mapping.type->xdrtype.c_str(),
-            value,
-            mapping.type->xdrunit.c_str(),
-            name.c_str());
-        buffer[39]=0;    
-        return String(buffer);
-    }
     bool addToXdr(String entry){
         if (! xdrOpened){
             xdrMessage.Init("XDR",talkerId);
@@ -1202,8 +1188,8 @@ private:
         }
         GwXDRFoundMapping mapping=xdrMappings->getMapping(XDRTEMP,(int)TemperatureSource,0,TemperatureInstance);
         if (mapping.empty) return;
-        LOG_DEBUG(GwLog::DEBUG,"found temperature mapping %s",mapping.definition->toString().c_str());
-        addToXdr(buildXdrEntry(mapping,Temperature));
+        LOG_DEBUG(GwLog::DEBUG+1,"found temperature mapping %s",mapping.definition->toString().c_str());
+        addToXdr(mapping.buildXdrEntry(Temperature));
         finalizeXdr();
     }
 
@@ -1219,8 +1205,8 @@ private:
         }
         GwXDRFoundMapping mapping=xdrMappings->getMapping(XDRHUMIDITY,(int)HumiditySource,0,HumidityInstance);
         if (mapping.empty) return;
-        LOG_DEBUG(GwLog::DEBUG,"found humidity mapping %s",mapping.definition->toString().c_str());
-        addToXdr(buildXdrEntry(mapping,ActualHumidity));
+        LOG_DEBUG(GwLog::DEBUG+1,"found humidity mapping %s",mapping.definition->toString().c_str());
+        addToXdr(mapping.buildXdrEntry(ActualHumidity));
         finalizeXdr();
     }
 
@@ -1236,8 +1222,8 @@ private:
         }
         GwXDRFoundMapping mapping=xdrMappings->getMapping(XDRPRESSURE,(int)PressureSource,0,PressureInstance);
         if (mapping.empty) return;
-        LOG_DEBUG(GwLog::DEBUG,"found pressure mapping %s",mapping.definition->toString().c_str());
-        addToXdr(buildXdrEntry(mapping,ActualPressure));
+        LOG_DEBUG(GwLog::DEBUG+1,"found pressure mapping %s",mapping.definition->toString().c_str());
+        addToXdr(mapping.buildXdrEntry(ActualPressure));
         finalizeXdr();
     }
 
diff --git a/lib/xdrmappings/GwXDRMappings.cpp b/lib/xdrmappings/GwXDRMappings.cpp
index 7af8533..6ae224c 100644
--- a/lib/xdrmappings/GwXDRMappings.cpp
+++ b/lib/xdrmappings/GwXDRMappings.cpp
@@ -331,7 +331,7 @@ GwXDRFoundMapping GwXDRMappings::selectMapping(GwXDRMapping::MappingList *list,i
             switch(def->instanceMode){
                 case GwXDRMappingDef::IS_SINGLE:
                     if (def->instanceId == instance){
-                        LOG_DEBUG(GwLog::DEBUG,"selected mapping %s for %s, i=%d",
+                        LOG_DEBUG(GwLog::DEBUG+1,"selected mapping %s for %s, i=%d",
                             def->toString().c_str(),key,instance);
                         return GwXDRFoundMapping(*mit,instance); 
                     }
@@ -348,11 +348,11 @@ GwXDRFoundMapping GwXDRMappings::selectMapping(GwXDRMapping::MappingList *list,i
         }
     }
     if (candidate != NULL){
-        LOG_DEBUG(GwLog::DEBUG,"selected mapping %s for %s, i=%d",
+        LOG_DEBUG(GwLog::DEBUG+1,"selected mapping %s for %s, i=%d",
             candidate->definition->toString().c_str(),key,instance);
         return GwXDRFoundMapping(candidate,instance);
     }
-    LOG_DEBUG(GwLog::DEBUG,"no instance mapping found for key=%s, i=%d",key,instance);
+    LOG_DEBUG(GwLog::DEBUG+1,"no instance mapping found for key=%s, i=%d",key,instance);
     return GwXDRFoundMapping();
 }
 GwXDRFoundMapping GwXDRMappings::getMapping(String xName,String xType,String xUnit){
@@ -368,7 +368,7 @@ GwXDRFoundMapping GwXDRMappings::getMapping(String xName,String xType,String xUn
     String n183Key=GwXDRMappingDef::n183key(xName,xType,xUnit);
     auto it=n183Map.find(n183Key);
     if (it == n183Map.end()) {
-        LOG_DEBUG(GwLog::DEBUG,"find n183mapping for %s,i=%d - nothing found",n183Key.c_str(),instance);
+        LOG_DEBUG(GwLog::DEBUG+1,"find n183mapping for %s,i=%d - nothing found",n183Key.c_str(),instance);
         return GwXDRFoundMapping();
     }
     return selectMapping(&(it->second),instance,n183Key.c_str());
@@ -377,7 +377,7 @@ GwXDRFoundMapping GwXDRMappings::getMapping(GwXDRCategory category,int selector,
     unsigned long n2kKey=GwXDRMappingDef::n2kKey(category,selector,field);
     auto it=n2kMap.find(n2kKey);
     if (it == n2kMap.end()){
-        LOG_DEBUG(GwLog::DEBUG,"find n2kmapping for c=%d,s=%d,f=%d,i=%d - nothing found",
+        LOG_DEBUG(GwLog::DEBUG+1,"find n2kmapping for c=%d,s=%d,f=%d,i=%d - nothing found",
             (int)category,selector,field,instance);
         addUnknown(category,selector,field,instance);    
         return GwXDRFoundMapping();