diff --git a/RPi_Client/CoAPthon3/coapclient.py b/RPi_Client/CoAPthon3/coapclient.py
index 18c68fdf55fd8134999cd75ad1f31931cee87bbf..eab472ef606ab2434eb8c23414437b7ce3370b6a 100644
--- a/RPi_Client/CoAPthon3/coapclient.py
+++ b/RPi_Client/CoAPthon3/coapclient.py
@@ -165,7 +165,6 @@ class CoapClient():
                 
                 response = client.put(path, json.dumps(payload))
                 print((response.pretty_print()))
-                time.sleep(0.05)
 
         except KeyboardInterrupt:
             print("PutBLEInfo Stop")
@@ -209,7 +208,6 @@ class CoapClient():
 
     def mkJsonRpgraphInfo(self, info): # complete
         n = 2.2
-        print(info)
         distance = math.pow(10, ((float(info[4]) - float(info[5])) / (10 * n)))
         payload = {
             'v1' : self.myuuid,
diff --git a/Server_CoAP/CoAPthon3.code-workspace b/Server_CoAP/CoAPthon3.code-workspace
new file mode 100644
index 0000000000000000000000000000000000000000..6860b32b40ca191f2c02b440974acb5173f2f1d0
--- /dev/null
+++ b/Server_CoAP/CoAPthon3.code-workspace
@@ -0,0 +1,7 @@
+{
+    "folders": [
+        {
+            "path": "/home/iotuser/iot_team_project"
+        }
+    ]
+}
\ No newline at end of file
diff --git a/Server_CoAP/CoAPthon3/coapserver.py b/Server_CoAP/CoAPthon3/coapserver.py
index b46d53cd31ba8bbded5144ba1479ec9de4d485fd..9807f64047e0f1f6cac35662a6a440f65c0903f1 100644
--- a/Server_CoAP/CoAPthon3/coapserver.py
+++ b/Server_CoAP/CoAPthon3/coapserver.py
@@ -28,7 +28,7 @@ class CoAPServer(CoAP):
             self.userNodeCollection = self.db.UserNodeData
             self.trackingCollection = self.db.TrackingData
             self.usersCollection = self.db.users
-            self.updatePeriod = 1.5
+            self.updatePeriod = 5
             self.limitDistance = 40
         except:
             print("Could not connect to MongoDB")
@@ -42,7 +42,7 @@ class CoAPServer(CoAP):
                     positionCalculationThread.start()
                 time.sleep(self.updatePeriod + 0.1)
                 currentTime = time.time()
-                trackingCursor = self.trackingCollection.remove({'updateTime': {'$lte' : currentTime - self.updatePeriod}})
+                #trackingCursor = self.trackingCollection.remove({'updateTime': {'$lte' : currentTime - self.updatePeriod}})
         except KeyboardInterrupt:
             print("existing updateUserLocation")
     
@@ -75,38 +75,62 @@ class CoAPServer(CoAP):
         userLocationData = sorted(userLocationData, key=lambda k: k['distance'], reverse = False)
         for u in userLocationData:
             print(userLocationData)
+        
+        rp1uuid = userLocationData[0]['rpuuid']
+        rp1 = self.rpNodeInfoPath.find({'rpuuid' : rp1})
 
         if len(userLocationData) < 3:
             print("userLoicationData < 3")
+            dd = datetime.datetime.now()
+            dd = dd.replace(hour=dd.hour + 9)
+            userNodeData = {
+                'rp1': {'rpuuid' : userLocationData[0]['rpuuid'], 'distance': userLocationData[0]['distance']},
+                'useruuid': useruuid,
+                'x' : rp1[0]['x'],
+                'y' : rp1[0]['y']
+                'updateTime': str(dd)
+            }
+            print(userNodeData)
             return
 
-        nodeList = []
-        for i in range(3):
-            nodeList.append({
-                'x': self.piNodeCollection.find({'rpuuid': userLocationData[i]['rpuuid']})[0]['x'],
-                'y': self.piNodeCollection.find({'rpuuid': userLocationData[i]['rpuuid']})[0]['y'],
-                'distance': userLocationData[i]['distance']
-            })
-
-        triangulationInst = triangulation.Triangulation(nodeList[:3])
-        x, y = triangulationInst.doTriangulation()
-
-        if x == None:
-            print("no solution")
-            return
+        else :
+            nodeList = []
+            for i in range(3):
+                nodeList.append({
+                    'x': self.piNodeCollection.find({'rpuuid': userLocationData[i]['rpuuid']})[0]['x'],
+                    'y': self.piNodeCollection.find({'rpuuid': userLocationData[i]['rpuuid']})[0]['y'],
+                    'distance': userLocationData[i]['distance']
+                })
 
-        dd = datetime.datetime.now()
-        dd = dd.replace(hour=dd.hour + 9)
-        userNodeData = {
-            'rp1': {'rpuuid' : userLocationData[0]['rpuuid'], 'distance': userLocationData[0]['distance']},
-            'rp2': {'rpuuid' : userLocationData[1]['rpuuid'], 'distance' : userLocationData[1]['distance']},
-            'rp3': {'rpuuid' : userLocationData[2]['rpuuid'], 'distance' : userLocationData[2]['distance']},
-            'useruuid': useruuid,
-            'x': x,
-            'y': y,
-            'updateTime': str(dd)
-        }
-        print(userNodeData)
+            triangulationInst = triangulation.Triangulation(nodeList[:3])
+            x, y = triangulationInst.doTriangulation()
+
+            if x == None:
+                print("no solution")
+                dd = datetime.datetime.now()
+                dd = dd.replace(hour=dd.hour + 9)
+                userNodeData = {
+                    'rp1': {'rpuuid' : userLocationData[0]['rpuuid'], 'distance': userLocationData[0]['distance']},
+                    'useruuid': useruuid,
+                    'x': rp1[0]['x'],
+                    'y': rp1[0]['y'],
+                    'updateTime': str(dd)
+                }
+                print(userNodeData)
+                return
+
+            dd = datetime.datetime.now()
+            dd = dd.replace(hour=dd.hour + 9)
+            userNodeData = {
+                'rp1': {'rpuuid' : userLocationData[0]['rpuuid'], 'distance': userLocationData[0]['distance']},
+                'rp2': {'rpuuid' : userLocationData[1]['rpuuid'], 'distance' : userLocationData[1]['distance']},
+                'rp3': {'rpuuid' : userLocationData[2]['rpuuid'], 'distance' : userLocationData[2]['distance']},
+                'useruuid': useruuid,
+                'x': x,
+                'y': y,
+                'updateTime': str(dd)
+            }
+            print(userNodeData)
         self.userNodeCollection.insert_one(userNodeData)
 
 def usage():  # pragma: no cover
diff --git a/Server_CoAP/CoAPthon3/exampleresources.py b/Server_CoAP/CoAPthon3/exampleresources.py
index c86b61489ae0cf8b58477a64642dda65f65359d1..3d4d5ab56ffe7e7d1059af91e89a8f8d92ac231f 100644
--- a/Server_CoAP/CoAPthon3/exampleresources.py
+++ b/Server_CoAP/CoAPthon3/exampleresources.py
@@ -114,15 +114,15 @@ class RpNodeInfoResource(Resource):
                 }
                 if ((dis['a'] + dis['b']) <= dis['c']) or dis['a'] == 0 or dis['b'] == 0 or dis['c'] == 0:
                     # 3번째 rpNode를 만들 수 없는 경우
-                    print("3번째 rpNode를 만들 수 없습니다.")
-                    response['operate'] = 0
+                    print("3번째 rpNode를 만들 수 없습니다.(no triangle)")
+                    response['operate'] = 1
                     return json.dumps(response)
                 
                 cosA = (math.pow(dis['b'], 2) + math.pow(dis['c'], 2) - math.pow(dis['a'], 2)) / (2 * dis['b'] * dis['c'])
                 if cosA >= 1 or cosA <= 0 :
                     # 3번째 rpNode를 만들 수 없는 경우
-                    print("3번째 rpNode를 만들 수 없습니다.")
-                    response['operate'] = 0
+                    print("3번째 rpNode를 만들 수 없습니다.(impossible cosA)")
+                    response['operate'] = 1
                     return json.dumps(response)
 
                 sinA = math.sqrt((1 - math.pow(cosA,2)))
@@ -150,10 +150,10 @@ class RpNodeInfoResource(Resource):
                 nodeList = []
                
                 for i in range(3):
-                    print(self.piNodeCollection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0])
+                    print(self.collection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0])
                     nodeList.append({
-                        'x': self.piNodeCollection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0]['x'],
-                        'y': self.piNodeCollection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0]['y'],
+                        'x': self.collection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0]['x'],
+                        'y': self.collection.find({'rpuuid': nodeLocationData[i]['rpuuid']})[0]['y'],
                         'distance': nodeLocationData[i]['distance']
                     })
 
diff --git a/Server_Vue_Express/backend/routes/api.js b/Server_Vue_Express/backend/routes/api.js
index 27b11072f6bac0240fe85da40a0981e343b8d25c..74be2d4cc312d10df9a2a2453a167552de5d2315 100644
--- a/Server_Vue_Express/backend/routes/api.js
+++ b/Server_Vue_Express/backend/routes/api.js
@@ -71,13 +71,14 @@ router.post('/findByUUID', function(req, res) {
 });
 
 router.get('/findUserByUUID/:id', function(req, res, next) {
+  console.log("kkkk")
   var userData=new Array();
   var data =new Array();
   var UserName = "";
   var UserLocation =[];
   var temp;
   var rpNodeData=[];
-  //console.log("kkkk")
+  
   (async () => {
     try{
       await User.find({uuid:req.params.id}, (err,output)=>{
@@ -95,10 +96,10 @@ router.get('/findUserByUUID/:id', function(req, res, next) {
         //console.log("tt,",output[0].rp1)
         
         try{
-          temp =[output[0].rp1,output[0].rp2,output[0].rp3];
+          temp =[output[output.length-1].rp1,output[output.length-1].rp2,output[output.length-1].rp3];
           UserLocation ={
-            x:output[0].x, 
-            y:output[0].y,
+            x:output[output.length-1].x, 
+            y:output[output.length-1].y,
             r:10
           }
         }catch(exception){}
@@ -112,14 +113,13 @@ router.get('/findUserByUUID/:id', function(req, res, next) {
         console.log(i, temp[i].rpuuid)
         await rpNode.find({'rpuuid': temp[i].rpuuid},(err,output)=>{
           console.log(output)
-          if(output.length == 0)
-            break;
-          rpNodeData.push({
-            rpuuid : temp[i].rpuuid,
-            x: output[0].x,
-            y: output[0].y,
-            r: temp[i].distance * 20
-          })
+          if(output.length != 0)
+            rpNodeData.push({
+              rpuuid : temp[i].rpuuid,
+              x: output[0].x,
+              y: output[0].y,
+              r: temp[i].distance * 20
+            })
         })
         //console.log(rpNodeData,i)
       }
diff --git a/Server_Vue_Express/backend/views/index.pug b/Server_Vue_Express/backend/views/index.pug
index 952ffcf754e027bc20650a8f1b4c1cbd84bca45c..5f97ba7249f5236c62a6faa7337755ccd4707bb0 100644
--- a/Server_Vue_Express/backend/views/index.pug
+++ b/Server_Vue_Express/backend/views/index.pug
@@ -33,7 +33,7 @@ block content
           t.push({
             x: nodeData[i].x,
             y: nodeData[i].y,
-            r: nodeData[i].r
+            r: 10
           })
           
         }