Index: /applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/validation/RouteChecker.java
===================================================================
--- /applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/validation/RouteChecker.java	(revision 33474)
+++ /applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/validation/RouteChecker.java	(revision 33475)
@@ -8,4 +8,5 @@
 import java.util.Collection;
 import java.util.List;
+import java.util.Map.Entry;
 
 import org.openstreetmap.josm.command.ChangeCommand;
@@ -102,6 +103,6 @@
     protected boolean performFromToTagsTest() {
 
-        String from = relation.get("from");
-        String to = relation.get("to");
+        String from = relation.get("from").toLowerCase();
+        String to = relation.get("to").toLowerCase();
         if (from == null || to == null || manager.getPTStopCount() == 0) {
             return false;
@@ -180,21 +181,36 @@
     //given a PTStop and a name, check whether one of its primitives have a
     //different name from the one passed. if so, it returns the primitive.
+    //it compares not only the name tag but all the name:* names
     //it returns null if the names match
     private OsmPrimitive checkPTStopName(PTStop stop, String name) {
         OsmPrimitive primitive = null;
-        String toCheck = null;
+        List<String> toCheck = new ArrayList<>();
         if (stop.getPlatform() != null) {
-            toCheck = stop.getPlatform().getName();
             primitive = stop.getPlatform();
-        }
-        if (toCheck == null && stop.getStopPosition() != null) {
-            toCheck = stop.getStopPosition().getName();
+            toCheck.addAll(getPrimitiveNameTags(primitive));
+        }
+        if (toCheck.isEmpty() && stop.getStopPosition() != null) {
             primitive = stop.getStopPosition();
-        }
-
-        if (toCheck != null && !toCheck.equals(name))
-            return primitive;
+            toCheck.addAll(getPrimitiveNameTags(primitive));
+        }
+
+        for (String value : toCheck) {
+            if (value.equals(name)) {
+                return primitive;
+            }
+        }
 
         return null;
+    }
+
+    private List<String> getPrimitiveNameTags(OsmPrimitive primitive) {
+        List<String> ret = new ArrayList<>();
+        for (Entry<String, String> entry : primitive.getInterestingTags().entrySet()) {
+            if ("name".equals(entry.getKey())
+                    || entry.getKey().contains("name:")) {
+                ret.add(entry.getValue().toLowerCase());
+            }
+        }
+        return ret;
     }
 
