diff --git a/aerpaw/config/scenario_2uavs.csv b/aerpaw/config/scenario_2uavs.csv
new file mode 100644
index 0000000..c4e2592
--- /dev/null
+++ b/aerpaw/config/scenario_2uavs.csv
@@ -0,0 +1,2 @@
+timestep, maxIter, minAlt, discretizationStep, protectedRange, initialStepSize, barrierGain, barrierExponent, collisionRadius, comRange, alphaDist, betaDist, alphaTilt, betaTilt, domainMin, domainMax, objectivePos, objectiveVar, sensorPerformanceMinimum, initialPositions, numObstacles, obstacleMin, obstacleMax
+5, 100, 30.0, 0.1, 2.0, 3.0, 100, 3, "6.0, 6.0", "20.0, 20.0", "80.0, 80.0", "0.25, 0.25", "5.0, 5.0", "0.1, 0.1", "0.0, 0.0", "80.0, 80.0", "55.0, 55.0", "40, 25, 25, 40", 0.15, "15.0, 10.0, 40.0, 5.0, 10.0, 45.0", 1, "1.0, 25.0, 0.0", "30.0, 30.0, 50.0"
\ No newline at end of file
diff --git a/aerpaw/controller.coderprj b/aerpaw/controller.coderprj
index 862af73..6e4b8e3 100644
--- a/aerpaw/controller.coderprj
+++ b/aerpaw/controller.coderprj
@@ -1099,7 +1099,7 @@
true
- 2026-03-11T11:45:17
+ 2026-03-11T12:22:00
diff --git a/aerpaw/impl/controller_main.cpp b/aerpaw/impl/controller_main.cpp
index 8a8120e..6d66467 100644
--- a/aerpaw/impl/controller_main.cpp
+++ b/aerpaw/impl/controller_main.cpp
@@ -1,12 +1,17 @@
#include
-#include "controller.h"
+#include "controller.h"
#include "controller_impl.h" // TCP implementation header
int main() {
- // Number of clients to handle
- int numClients = 2; // for now
-
- std::cout << "Initializing TCP server...\n";
+ // Derive numClients from initialPositions in scenario.csv
+ double targets[MAX_CLIENTS_PER_PARAM * 3];
+ int numClients = loadInitialPositions("config/scenario.csv",
+ targets, MAX_CLIENTS_PER_PARAM);
+ if (numClients < 1) {
+ std::cerr << "Failed to parse numClients from scenario.csv\n";
+ return 1;
+ }
+ std::cout << "Parsed " << numClients << " UAV(s) from scenario.csv\n";
// Call MATLAB-generated server function
controller(numClients);
diff --git a/aerpaw/results/resultsAnalysis.m b/aerpaw/results/resultsAnalysis.m
index b6f004e..e5d29b0 100644
--- a/aerpaw/results/resultsAnalysis.m
+++ b/aerpaw/results/resultsAnalysis.m
@@ -1,5 +1,5 @@
%% Plot AERPAW logs (trajectory, radio)
-resultsPath = fullfile(matlab.project.rootProject().RootFolder, "sandbox", "t2"); % Define path to results copied from AERPAW platform
+resultsPath = fullfile(matlab.project.rootProject().RootFolder, "sandbox", "three_around_wall_2uavs"); % Define path to results copied from AERPAW platform
% Plot GPS logged data and scenario information (domain, objective, obstacles)
seaToGroundLevel = 110; % measured approximately from USGS national map viewer
@@ -10,7 +10,7 @@ seaToGroundLevel = 110; % measured approximately from USGS national map viewer
%% Run simulation
% Run miSim using same AERPAW scenario definition CSV
-csvPath = fullfile(matlab.project.rootProject().RootFolder, "aerpaw", "config", "scenario.csv");
+csvPath = fullfile(matlab.project.rootProject().RootFolder, "aerpaw", "config", "scenario_2uavs.csv");
params = readScenarioCsv(csvPath);
% Visualization settings
diff --git a/aerpaw/run_uav.sh b/aerpaw/run_uav.sh
index ee7ef20..91b9a91 100755
--- a/aerpaw/run_uav.sh
+++ b/aerpaw/run_uav.sh
@@ -32,8 +32,8 @@ else
exit 1
fi
-# Client config file (optional 2nd argument)
-CONFIG_FILE="${2:-config/client.yaml}"
+# Client config file: 2nd argument > AERPAW_CLIENT_CONFIG env var > default
+CONFIG_FILE="${2:-${AERPAW_CLIENT_CONFIG:-config/client.yaml}}"
if [ ! -f "$CONFIG_FILE" ]; then
echo "Error: Config file not found: $CONFIG_FILE"
exit 1
diff --git a/aerpaw/scripts/startVehicle.sh b/aerpaw/scripts/startVehicle.sh
index b95cdc1..8477538 100755
--- a/aerpaw/scripts/startVehicle.sh
+++ b/aerpaw/scripts/startVehicle.sh
@@ -23,7 +23,7 @@ cd /root/miSim/aerpaw
# Use screen/ts/tee aerpawism from sample script
screen -S vehicle -dm \
- bash -c "stdbuf -oL -eL ./run_uav.sh testbed /root/miSim/aerpaw/config/client1.yaml \
+ bash -c "stdbuf -oL -eL ./run_uav.sh testbed \
| ts $TS_FORMAT \
| tee $RESULTS_DIR/$LOG_PREFIX\_vehicle_log.txt"
diff --git a/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAd.xml b/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAd.xml
new file mode 100644
index 0000000..4356a6a
--- /dev/null
+++ b/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAd.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAp.xml b/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAp.xml
new file mode 100644
index 0000000..01cb34e
--- /dev/null
+++ b/resources/project/erFP4mR9aK32bO4kZAlU-FeDikA/mvGRiPTuORJmVPdRh4fiJMWoTJAp.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAd.xml b/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAd.xml
new file mode 100644
index 0000000..4356a6a
--- /dev/null
+++ b/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAd.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAp.xml b/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAp.xml
new file mode 100644
index 0000000..ea15762
--- /dev/null
+++ b/resources/project/q138eJA8Ym4eSfM3RFMVvg63QtU/erFP4mR9aK32bO4kZAlU-FeDikAp.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cd.xml b/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cd.xml
new file mode 100644
index 0000000..4356a6a
--- /dev/null
+++ b/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cd.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cp.xml b/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cp.xml
new file mode 100644
index 0000000..83fd7dc
--- /dev/null
+++ b/resources/project/vmVRNnXTZxyEiUtNp09z8POG4ww/s1FGL5Sd2djlHMPxH7Uz8GEn55cp.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file