diff --git a/fsd/fsd_v25e.geo.info b/fsd/fsd_v25e.geo.info
new file mode 100644
index 0000000000000000000000000000000000000000..c07058e1b20fce59a3e4fedcd6242faa35f4bae4
--- /dev/null
+++ b/fsd/fsd_v25e.geo.info
@@ -0,0 +1,43 @@
+FSD geometry v25e created with create_fsdgeo_firstRealistic.C
+
+Position for maximum deflection angle, e.g. E_kin_beam = 5A GeV and 100% magnetic field strength
+
+Number of SMALL  modules per quadrant: 5 x 3
+Number of MEDIUM modules per quadrant: 4 x 3
+Number of LARGE  modules per quadrant: 2 x 2
+FSD thickness: 5 cm 
+FSD front plane center coordinates: (31.6478, 0, 1000) cm
+FSD rotation around y axis: 0.0329867 rad
+Hole in the wall has a radii of 10 cm
+
+Parameters of module fsdmodule: 
+Size: 4 cm x 4 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 8 cm x 8 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 16 cm x 16 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+
+FSD size is 192 cm x 160 cm x 5 cm
+FSD contains 372 modules in total,
+small sized modules: 156
+medium sized modules: 144
+large sized modules: 72
+FSD volume center coordinates: (31.7302, 0, 1002.5) cm
diff --git a/fsd/fsd_v25e.geo.root b/fsd/fsd_v25e.geo.root
new file mode 100644
index 0000000000000000000000000000000000000000..0b0531e6b8481084cebfcdbae2e80544dbcbd2a7
Binary files /dev/null and b/fsd/fsd_v25e.geo.root differ
diff --git a/fsd/fsd_v25h.geo.info b/fsd/fsd_v25h.geo.info
new file mode 100644
index 0000000000000000000000000000000000000000..9fbd2807ba5eb5e92bbfbe42205799df60c47ad3
--- /dev/null
+++ b/fsd/fsd_v25h.geo.info
@@ -0,0 +1,43 @@
+FSD geometry v25h created with create_fsdgeo_firstRealistic.C
+
+Position for Au beam at 12A GeV/c and 100% magnetic field strength
+
+Number of SMALL  modules per quadrant: 5 x 3
+Number of MEDIUM modules per quadrant: 4 x 3
+Number of LARGE  modules per quadrant: 2 x 2
+FSD thickness: 5 cm 
+FSD front plane center coordinates: (15.1229, 0, 1000) cm
+FSD rotation around y axis: 0.0171042 rad
+Hole in the wall has a radii of 10 cm
+
+Parameters of module fsdmodule: 
+Size: 4 cm x 4 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 8 cm x 8 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 16 cm x 16 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+
+FSD size is 192 cm x 160 cm x 5 cm
+FSD contains 372 modules in total,
+small sized modules: 156
+medium sized modules: 144
+large sized modules: 72
+FSD volume center coordinates: (15.1657, 0, 1002.5) cm
diff --git a/fsd/fsd_v25h.geo.root b/fsd/fsd_v25h.geo.root
new file mode 100644
index 0000000000000000000000000000000000000000..c699b1f36ab94fc166f2ef329003bef518b7a800
Binary files /dev/null and b/fsd/fsd_v25h.geo.root differ
diff --git a/fsd/fsd_v25i.geo.info b/fsd/fsd_v25i.geo.info
new file mode 100644
index 0000000000000000000000000000000000000000..1e0a35111af932e468de65dce59d449f9693805b
--- /dev/null
+++ b/fsd/fsd_v25i.geo.info
@@ -0,0 +1,43 @@
+FSD geometry v25i created with create_fsdgeo_firstRealistic.C
+
+Position for Au beam at 11 AGeV/c (10 AGeV) and 100% magnetic field strength
+
+Number of SMALL  modules per quadrant: 5 x 3
+Number of MEDIUM modules per quadrant: 4 x 3
+Number of LARGE  modules per quadrant: 2 x 2
+FSD thickness: 5 cm 
+FSD front plane center coordinates: (16.3936, 0, 1000) cm
+FSD rotation around y axis: 0.018326 rad
+Hole in the wall has a radii of 10 cm
+
+Parameters of module fsdmodule: 
+Size: 4 cm x 4 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 8 cm x 8 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+Parameters of module fsdmodule: 
+Size: 16 cm x 16 cm
+Thickness: 5 cm
+Channel Depth (ratio of thickness): 0.75
+Channel Width: 0.2 cm
+Channel distance from the edge of scintillator: 0.5 cm
+Channel radius at corners: 1 cm
+
+
+FSD size is 192 cm x 160 cm x 5 cm
+FSD contains 372 modules in total,
+small sized modules: 156
+medium sized modules: 144
+large sized modules: 72
+FSD volume center coordinates: (16.4394, 0, 1002.5) cm
diff --git a/fsd/fsd_v25i.geo.root b/fsd/fsd_v25i.geo.root
new file mode 100644
index 0000000000000000000000000000000000000000..4d358295af5759aa8473bfdffdd00bcd993309e8
Binary files /dev/null and b/fsd/fsd_v25i.geo.root differ
diff --git a/macro/fsd/fair/create_fsdgeo_firstRealistic.C b/macro/fsd/fair/create_fsdgeo_firstRealistic.C
index 2df8de2f2c5c8c3e3046e9a9026039ac8507728c..56790a4fc8d0ab83d15a3e0cb6752abf634c7100 100644
--- a/macro/fsd/fair/create_fsdgeo_firstRealistic.C
+++ b/macro/fsd/fair/create_fsdgeo_firstRealistic.C
@@ -1,6 +1,6 @@
-/* Copyright (C) 2023 Physikalisches Institut, Eberhard Karls Universitaet Tuebingen, Tuebingen
+/* Copyright (C) 2023-2025 Physikalisches Institut, Eberhard Karls Universitaet Tuebingen, Tuebingen
    SPDX-License-Identifier: GPL-3.0-only
-   Authors: Volker Friese, Lukas Chlad [committer] */
+   Authors: Radim Dvorak, Volker Friese, Lukas Chlad [committer] */
 
 /** @file create_fsdgeo_firstRealistic.C
  ** @author Lukas Chlad <l.chlad@gsi.de>
@@ -8,8 +8,8 @@
  ** @version 1.0
  **
  ** This macro creates a FSD geometry in ROOT format to be used as input
- ** for the transport simulation. The labeling of versions is ment 
- ** to correspond with beampipe versions v21[e-h]. Letter 'z' is reserved
+ ** for the transport simulation. The labeling of versions is ment
+ ** to correspond with beampipe versions v24[e-h]. Letter 'z' is reserved
  ** for parking position.
  **
  ** It allows to create module stacks of varying sizes.
@@ -32,7 +32,7 @@ std::pair<Bool_t, std::pair<Double_t,Double_t> > calc_x_trans_and_y_rot(Double_t
 // ======                         Main function                           =====
 // ============================================================================
 
-void create_fsdgeo_firstRealistic(TString geoTag = "v23i")
+void create_fsdgeo_firstRealistic(TString geoTag = "v25i")
 {
   // -----   Steering variables   ---------------------------------------------
   Double_t fsdX;      // x position (cm) of FSD in cave (front plane center)
@@ -49,22 +49,25 @@ void create_fsdgeo_firstRealistic(TString geoTag = "v23i")
   fsdX     = calcPosxRoty.second.first;
   fsdRotY  = calcPosxRoty.second.second;
 
-  if (geoTag == "v23e") {
+  if (geoTag == "v25e") {
     comment  = "Position for maximum deflection angle, e.g. E_kin_beam = 5A GeV and 100% magnetic field strength";
   }
-  else if (geoTag == "v23f") {
+  else if (geoTag == "v25f") {
     comment  = "Position for NO deflection angle";
   }
-  else if (geoTag == "v23g") {
-    comment  = "Position for Au beam at 3.3A GeV/c and 50% magnetic field strength";
+  else if (geoTag == "v25g") {
+    comment  = "to be add later";
   }
-  else if (geoTag == "v23h") {
+  else if (geoTag == "v25h") {
     comment  = "Position for Au beam at 12A GeV/c and 100% magnetic field strength";
   }  
-  else if (geoTag == "v23i") {
+  else if (geoTag == "v25i") {
     comment  = "Position for Au beam at 11 AGeV/c (10 AGeV) and 100% magnetic field strength";
   }
-  else if (geoTag == "v23z") {
+  else if (geoTag == "v25i") {
+    comment  = "Position for Au beam at 11 AGeV/c (10 AGeV) and 100% magnetic field strength";
+  }
+  else if (geoTag == "v25z") {
     fsdX     = -90;
     fsdY     = -70;
     fsdZ     = 1756;
@@ -212,7 +215,7 @@ void create_fsdgeo_firstRealistic(TString geoTag = "v23i")
   const Double_t plasticSizeZ = 0.5*wallThickness; // half-thickness
   const TString plasticUnitName = "unit_Plastic";
   TGeoVolume* plasticUnit = new TGeoVolumeAssembly(plasticUnitName);
-  
+
   std::cout << "Module array in one quadrant is "
        << std::ceil(holeRadius/smallCellSize) << "x" << std::ceil(holeRadius/smallCellSize) << " small module size is taken by hole in FSD,"
        << nSmallCells_X  << "x" << nSmallCells_Y  << " small modules, "
@@ -500,7 +503,7 @@ TGeoVolume* ConstructGeneralModule(const char* name, Double_t sizeXY, Double_t c
   shiftFiberDownRight->RegisterYourself();
   TGeoTranslation *shiftFiberDownLeft  = new TGeoTranslation(Form("shiftFiberDownLeft%s",suffix.Data()) ,-0.5*sizeXY+edgeMargin+bendRadius,-0.5*sizeXY+edgeMargin+bendRadius,0.5*cellThickness*(1.-fiberDepth));
   shiftFiberDownLeft->RegisterYourself();
- 
+
 
   //fiber parts
   TGeoBBox *fiberBoxHorizontal = new TGeoBBox(Form("fiberBoxHorizontal%s",suffix.Data()), 0.5*sizeXY-edgeMargin-bendRadius, 0.5*fiberWidth, 0.5*fiberDepth*cellThickness);
@@ -563,7 +566,7 @@ TGeoVolume* ConstructGeneralModule(const char* name, Double_t sizeXY, Double_t c
 std::pair<Bool_t, std::pair<Double_t,Double_t> > calc_x_trans_and_y_rot(Double_t zpos, TString geoTag)
 {
     const TString strPsdTube = "psd_tube"; // node of beampipe containing this string is what we need
-    TString strPipeFile = "${VMCWORKDIR}/geometry/pipe/pipe_v21" + geoTag(3,geoTag.Length()) + ".geo.root";
+    TString strPipeFile = "${VMCWORKDIR}/geometry/pipe/pipe_v24" + geoTag(3,geoTag.Length()) + ".geo.root";
     if(gSystem->ExpandPathName(strPipeFile)){
         std::cout << __func__ << ": Error while expanding path to beampipe file!!" << std::endl;
         return std::make_pair(kFALSE,std::make_pair(0.,0.));
@@ -632,7 +635,7 @@ std::pair<Bool_t, std::pair<Double_t,Double_t> > calc_x_trans_and_y_rot(Double_t
     //     |                                                 .
     //     |                                             /  .  /<-.
     //     |                                            /  .  /    `. angle of rotation around y axis
-    //     |                                           /  .  /      ; 
+    //     |                                           /  .  /      ;
     //     ^ value of x_lt                            /  x  /--------                            "this is 0 but in principle can be different"
     //     |                                         /  .  /          tan(phi_y) = (x_FSD - x_lt "-x_glob") / (z_FSD - z_lt - z_glob)
     //     |                                        /  .  /                    from here we get: