diff --git a/src/epics/util/feCodeGen.pl b/src/epics/util/feCodeGen.pl
index 11228d1cfdc14ddcf5c09a37c4061b740f27b292..99698a66c85744eba718c271ce7d7e490e882a91 100755
--- a/src/epics/util/feCodeGen.pl
+++ b/src/epics/util/feCodeGen.pl
@@ -241,6 +241,9 @@ $modelCodeFilepath .= $skeleton;
 $modelCodeKernDir = $modelCodeFilepath . "/kernel_mod/";
 $modelCodeUspDir = $modelCodeFilepath . "/userspace/";
 $modelEpicsCodeDir = $modelCodeFilepath . "/epics/";
+$modelConfigCodeDir = $modelCodeFilepath . "/config/";
+$statespaceConfigFile = $modelConfigCodeDir . "statespace.json";
+$newFilterConfigFile = $modelConfigCodeDir . "filters.json";
 
 #This generates /path/to/module(_usp)/modelname_core.c
 $modelCodeKernFilepath = $modelCodeKernDir. $skeleton . "_core.c"; 
@@ -279,13 +282,14 @@ open(CONN_ERRORS,">$connectErrFile") || die "cannot open compile warnings output
 make_path( $modelCodeKernDir, { mode => 0755 });
 make_path( $modelCodeUspDir, { mode => 0755 });
 make_path( $modelEpicsCodeDir, { mode => 0755 });
+make_path( $modelConfigCodeDir, { mode => 0755 });
 open(OUT,">".$modelCodeKernFilepath) || die "cannot open c file for writing $modelCodeKernFilepath";
 open(OUT2,">".$modelCodeUspFilepath) || die "cannot open c file for writing $modelCodeUspFilepath";
 # Save existing front-end Makefile
 @months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
-  my ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime();
-  my $year = 1900 + $yearOffset;
-  $theTime = sprintf("%d_%s_%02d_%02d:%02d:%02d", $year, $months[$month], $dayOfMonth, $hour, $minute, $second);
+my ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime();
+my $year = 1900 + $yearOffset;
+$theTime = sprintf("%d_%s_%02d_%02d:%02d:%02d", $year, $months[$month], $dayOfMonth, $hour, $minute, $second);
 my $hfname = "$rcg_src_dir/src/include/$ARGV[1].h";
 if (-e $hfname) {
 	system("/bin/mv -f $hfname $hfname~");
@@ -1923,8 +1927,8 @@ END
 
 
 
-    my $statespace_json = JSON->new;
-    my $data_to_json = { model_state_space_template=> [] };
+    my $statespace_json = JSON->new->utf8->pretty(1);
+    my $data_to_json = { model_statespace_description=> [] };
 
 	#//		- Includes for User defined function calls.
 	# Group includes for function calls at beginning
@@ -1936,7 +1940,7 @@ END
 
         if ($partType[$ii] eq "Statespace" ) {
             #print "Statespace part: ins: " . $::partInCnt[$::partInNum[$ii][0]] . ", outs: " . $::partOutputs[$::partOutNum[$ii][0]] ."\n";
-            push ( @{ $data_to_json->{model_state_space_template} } , 
+            push ( @{ $data_to_json->{model_statespace_description} } , 
                     {
                         part_name=>$::xpartName[$ii],
                         part_index=>int($::partnum_to_ss_index_map[$ii]),
@@ -1948,7 +1952,9 @@ END
 	   }
 
 	}
-    print $statespace_json->encode($data_to_json) . "\n";
+    open(STATESPACE, ">$statespaceConfigFile") || die "cannot open statespace config file () for writing";
+    print STATESPACE $statespace_json->encode($data_to_json) . "\n";
+    close STATESPACE;
 
 
 
@@ -2171,7 +2177,7 @@ require "lib/createEpicsMakefile.pm";
 
 #//	- Write FOTON filter definition file.
 # Create Foton filter file (with header)
-$jj = $filtCnt / 40;
+$jj = $filtCnt / 40; #Div by 40 because we are putting 4 on each line
 $jj ++;
 #print OUTG "$jj lines to print\n";
 my $filtFile = $configFilesDir . "/$ifo" . uc($skeleton) . "\.txt";
@@ -2210,6 +2216,24 @@ EOF
 }
 close OUTG;
 
+#
+# Write new filter description JSON file 
+#
+my $filters_json = JSON->new->utf8->pretty(1);
+my $filters_to_json = { model_filters_description=> [] };
+
+open(FILTER_JSON_OUT, ">" . $newFilterConfigFile) || die "cannot open  $newFilterConfigFile file for writing";
+for($ii=0; $ii < $filtCnt / 10; $ii++)
+{
+    push ( @{ $filters_to_json->{model_filters_description} } , 
+            {
+                filter_name=>$filterName[$ii],
+                filter_index=>int($ii),
+            } );
+}
+print FILTER_JSON_OUT $filters_json->encode($filters_to_json) . "\n";
+close FILTER_JSON_OUT;
+
 #//	- Generate standard set of MEDM screen files.
 # Take care of generating Epics screens *****************************************************
 
diff --git a/src/fe/statespace/stateSpacePart.c b/src/fe/statespace/stateSpacePart.c
index 3cfd7289ab82bf32ce0d2d3bc4910ad9a5d5469e..d9ad1dc0985c7a2aecd08b7f476870843f731407 100644
--- a/src/fe/statespace/stateSpacePart.c
+++ b/src/fe/statespace/stateSpacePart.c
@@ -230,7 +230,7 @@ int matrixConfigureStateSpace(
             g_config_hold.feedthrough_matrix[i * g_config_hold.in_len + j] = feedthrough_matrix[count++];
 
 
-    asm volatile("":::"memory");
+    //asm volatile("":::"memory");
 
     ligo_atomic_set(&g_part_index_to_load, part_index);