public string SaveSensor(Sensor sensor)
        {
            LogEntry log = new LogEntry(getIP(), "SaveSensor", sensor.Serial + " " + sensor.Name);

            int    successRows = 0;
            string result      = "";

            try
            {
                ttConnection = new SqlConnection(connection);
                ttConnection.Open();
            }
            catch (Exception ex)
            {
                Trace.WriteLine(ex.Message);
                return(ex.Message);
            }
            try
            {
                // check sensor isn't already there***************

                string query  = string.Format("SELECT serial FROM sensors where sensors.serial = '{0}'", sensor.Serial);
                bool   exists = true;
                string now    = TimeString(DateTime.Now);
                using (SqlDataAdapter sensorAdapter = new SqlDataAdapter(query, ttConnection))
                {
                    dataLogins = new DataTable();
                    sensorAdapter.Fill(dataLogins);

                    if (dataLogins.Rows.Count == 0)
                    {
                        exists = false;
                    }
                }
                if (exists)
                {
                    query = string.Format("update sensors set name='{0}',descrip = '{1}',alarmlow ='{2}',alarmhigh= '{3}',period='{4}',timeadded='{5}' where sensors.serial = '{6}'",
                                          sensor.Name, sensor.Description, sensor.AlarmLow, sensor.AlarmHigh, sensor.Period, now, sensor.Serial);
                }
                else
                {
                    query = string.Format("insert into sensors (serial,name,owner,period,descrip,alarmlow,alarmhigh,timeadded) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}')",
                                          sensor.Serial, sensor.Name, sensor.Owner, sensor.Period, sensor.Description, sensor.AlarmLow, sensor.AlarmHigh, now);
                }



                using (System.Data.SqlClient.SqlCommand command = new SqlCommand(query, ttConnection))
                {
                    successRows = command.ExecuteNonQuery();
                }
                if (successRows == 1)
                {
                    result = string.Format("Sensor {0} saved OK", sensor.Name);
                }
                else
                {
                    result = string.Format("Database error: sensor {0} not saved: {1} rows changed", sensor.Serial, successRows);
                }
            }

            catch (Exception ex)
            {
                Trace.WriteLine(ex.Message);
                log.Error = ex.Message;
                //return ex.Message;
            }


            finally
            {
                log.Result = result;
                log.Save(ttConnection);
                ttConnection.Close();
            }
            return(result);
        }