diff --git a/Source/Processors/SpikeDetector.cpp b/Source/Processors/SpikeDetector.cpp
index ea6b2b43dd6c3a8dc35246d7b91428224958796b..3d9c9baacfba4e55b6d350bdffcb29115e07b666 100755
--- a/Source/Processors/SpikeDetector.cpp
+++ b/Source/Processors/SpikeDetector.cpp
@@ -90,7 +90,7 @@ void SpikeDetector::updateSettings()
 
         Channel* ch = new Channel(this, i);
         ch->isEventChannel = true;
-        ch->eventType = electrodes[i]->numChannels;
+        ch->eventType = SPIKE_BASE_CODE + electrodes[i]->numChannels;
         ch->name = electrodes[i]->name;
 
         eventChannels.add(ch);
diff --git a/Source/Processors/SpikeDisplayNode.cpp b/Source/Processors/SpikeDisplayNode.cpp
index 90d6b6552f8855b8bb464e3e7c80679892dd4685..3d87ec6950a13dd79661e56862b7af88302d4623 100755
--- a/Source/Processors/SpikeDisplayNode.cpp
+++ b/Source/Processors/SpikeDisplayNode.cpp
@@ -86,14 +86,14 @@ int SpikeDisplayNode::getNumberOfChannelsForElectrode(int elec)
 
     for (int i = 0; i < eventChannels.size(); i++)
     {
-        if (eventChannels[i]->eventType < 999)
+		if ((eventChannels[i]->eventType < 999) && (eventChannels[i]->eventType > SPIKE_BASE_CODE))
         {
             electrodeIndex++;
 
             if (electrodeIndex == elec)
             {
                 std::cout << "Electrode " << elec << " has " << eventChannels[i]->eventType << " channels" << std::endl;
-                return eventChannels[i]->eventType;
+                return (eventChannels[i]->eventType - SPIKE_BASE_CODE);
             }
         }
     }
@@ -108,7 +108,7 @@ String SpikeDisplayNode::getNameForElectrode(int elec)
 
     for (int i = 0; i < eventChannels.size(); i++)
     {
-        if (eventChannels[i]->eventType < 999)
+        if ((eventChannels[i]->eventType < 999) && (eventChannels[i]->eventType > SPIKE_BASE_CODE))
         {
             electrodeIndex++;
 
@@ -129,7 +129,7 @@ int SpikeDisplayNode::getNumElectrodes()
 
     for (int i = 0; i < eventChannels.size(); i++)
     {
-        if (eventChannels[i]->eventType < 999)
+        if ((eventChannels[i]->eventType < 999) && (eventChannels[i]->eventType > SPIKE_BASE_CODE))
         {
             nElectrodes++;
         }
diff --git a/Source/Processors/Visualization/SpikeObject.h b/Source/Processors/Visualization/SpikeObject.h
index 5a71b9e5b9b8a74e553b7a926a15003b63e44fbb..a8bbad0ea2902ca85405ca1078f2da8295944e1c 100755
--- a/Source/Processors/Visualization/SpikeObject.h
+++ b/Source/Processors/Visualization/SpikeObject.h
@@ -34,6 +34,8 @@
 #define SPIKE_EVENT_CODE 4;
 #define MAX_SPIKE_BUFFER_LEN 512 // the true max calculated from the spike values below is actually 507
 
+#define SPIKE_BASE_CODE 100
+
 /**
 
   Allows spikes to be transmitted between processors.