Index: /trunk/BNC/src/RTCM3/ephEncoder.cpp
===================================================================
--- /trunk/BNC/src/RTCM3/ephEncoder.cpp	(revision 6402)
+++ /trunk/BNC/src/RTCM3/ephEncoder.cpp	(revision 6403)
@@ -321,2 +321,11 @@
 }
 
+int t_ephEncoder::RTCM3(const t_ephSBAS& /* eph */, unsigned char* /* buffer */) {
+
+  return 0;
+}
+
+int t_ephEncoder::RTCM3(const t_ephCompass& /* eph */, unsigned char* /* buffer */) {
+
+  return 0;
+}
Index: /trunk/BNC/src/RTCM3/ephEncoder.h
===================================================================
--- /trunk/BNC/src/RTCM3/ephEncoder.h	(revision 6402)
+++ /trunk/BNC/src/RTCM3/ephEncoder.h	(revision 6403)
@@ -6,7 +6,9 @@
 class t_ephEncoder {
  public:
-  static int RTCM3(const t_ephGPS& eph, unsigned char *);
-  static int RTCM3(const t_ephGlo& eph, unsigned char *);
-  static int RTCM3(const t_ephGal& eph, unsigned char *);
+  static int RTCM3(const t_ephGPS&     eph, unsigned char *);
+  static int RTCM3(const t_ephGlo&     eph, unsigned char *);
+  static int RTCM3(const t_ephGal&     eph, unsigned char *);
+  static int RTCM3(const t_ephSBAS&    eph, unsigned char *);
+  static int RTCM3(const t_ephCompass& eph, unsigned char *);
 };
 
Index: /trunk/BNC/src/upload/bncephuploadcaster.cpp
===================================================================
--- /trunk/BNC/src/upload/bncephuploadcaster.cpp	(revision 6402)
+++ /trunk/BNC/src/upload/bncephuploadcaster.cpp	(revision 6403)
@@ -68,7 +68,9 @@
       unsigned char Array[80];
       int size = 0;
-      t_ephGPS* ephGPS = dynamic_cast<t_ephGPS*>(eph);
-      t_ephGlo* ephGlo = dynamic_cast<t_ephGlo*>(eph);
-      t_ephGal* ephGal = dynamic_cast<t_ephGal*>(eph);
+      t_ephGPS*     ephGPS     = dynamic_cast<t_ephGPS*>(eph);
+      t_ephGlo*     ephGlo     = dynamic_cast<t_ephGlo*>(eph);
+      t_ephGal*     ephGal     = dynamic_cast<t_ephGal*>(eph);
+      t_ephSBAS*    ephSBAS    = dynamic_cast<t_ephSBAS*>(eph);
+      t_ephCompass* ephCompass = dynamic_cast<t_ephCompass*>(eph);
       if (ephGPS) {
         size = t_ephEncoder::RTCM3(*ephGPS, Array);
@@ -79,4 +81,10 @@
       else if (ephGal) {
         size = t_ephEncoder::RTCM3(*ephGal, Array);
+      }
+      else if (ephSBAS) {
+        size = t_ephEncoder::RTCM3(*ephSBAS, Array);
+      }
+      else if (ephCompass) {
+        size = t_ephEncoder::RTCM3(*ephCompass, Array);
       }
       if (size > 0) {
