Index: applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatConfigDialog.java
===================================================================
--- applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatConfigDialog.java	(revision 33393)
+++ applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatConfigDialog.java	(revision 33394)
@@ -11,4 +11,5 @@
 import java.awt.Insets;
 import java.awt.event.KeyEvent;
+import java.util.Objects;
 
 import javax.swing.AbstractButton;
@@ -77,5 +78,5 @@
 
     public GlobalsatConfigDialog(Dg100Config config) {
-        conf = config;
+        conf = Objects.requireNonNull(config);
         GridBagConstraints c = new GridBagConstraints();
 
Index: applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatImportDialog.java
===================================================================
--- applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatImportDialog.java	(revision 33393)
+++ applications/editors/josm/plugins/globalsat/src/org/openstreetmap/josm/plugins/globalsat/GlobalsatImportDialog.java	(revision 33394)
@@ -20,4 +20,5 @@
 import javax.swing.ListCellRenderer;
 
+import org.kaintoch.gps.globalsat.dg100.Dg100Config;
 import org.openstreetmap.josm.Main;
 
@@ -98,20 +99,23 @@
                 @Override
                 public void actionPerformed(java.awt.event.ActionEvent e) {
-                    System.out.println("configureing the device");
+                    System.out.println("configuring the device");
                     try {
-
-                        GlobalsatConfigDialog dialog = new GlobalsatConfigDialog(GlobalsatPlugin.dg100().getConfig());
-                        JOptionPane pane = new JOptionPane(dialog, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
-                        JDialog dlg = pane.createDialog(Main.parent, tr("Configure Device"));
-                        dlg.setVisible(true);
-                        if (((Integer) pane.getValue()) == JOptionPane.OK_OPTION) {
-                            GlobalsatPlugin.dg100().setConfig(dialog.getConfig());
+                        Dg100Config conf = GlobalsatPlugin.dg100().getConfig();
+                        if (conf != null) {
+                            GlobalsatConfigDialog dialog = new GlobalsatConfigDialog(conf);
+                            JOptionPane pane = new JOptionPane(dialog, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
+                            JDialog dlg = pane.createDialog(Main.parent, tr("Configure Device"));
+                            dlg.setVisible(true);
+                            if (((Integer) pane.getValue()) == JOptionPane.OK_OPTION) {
+                                GlobalsatPlugin.dg100().setConfig(dialog.getConfig());
+                            }
+                            dlg.dispose();
+                        } else {
+                            JOptionPane.showMessageDialog(Main.parent, tr("Connection Error."), tr("Connection Error."), JOptionPane.ERROR);
                         }
-                        dlg.dispose();
-
                     } catch (GlobalsatDg100.ConnectionException ex) {
                         JOptionPane.showMessageDialog(Main.parent, tr("Connection Error.") + " " + ex.toString());
                     }
-                    System.out.println("configureing the device finised");
+                    System.out.println("configuring the device finished");
                 }
             });
