[Help] NETMF on 32F429IDISCO with SDRAM enabled

Hi to all.
I’m looking for the help with any tip or documentation or direction where to dig with tinyclr startup execution. I was able to enable SDRAM on 32F429IDISCO, at least seems as it.

With original memory allocation in scatter file, firmware compiling and works fine:


 <Set Name="Stack_Bottom"            Value="0x10000000"/>
<Set Name="Stack_Top"               Value="0x10003FF8"/>
<Set Name="RAM_Start"               Value="0x10004000"/>										
<Set Name="Heap_Begin"              Value="0xD0010000"/>
<Set Name="Heap_End"                Value="0xD0017FF8"/>
<Set Name="Custom_Heap_Begin"       Value="0xD0018000"/>
<Set Name="Custom_Heap_End"         Value="0xD001FFF8"/>


<Set Name="Stack_Bottom"            Value="0x10000000"/>
<Set Name="Stack_Top"               Value="0x10003FF8"/>
<Set Name="RAM_Start"               Value="0x10004000"/>
<Set Name="Heap_Begin"              Value="0x20000000"/>
<Set Name="Heap_End"                Value="0x2001DFF8"/>
<Set Name="Custom_Heap_Begin"       Value="0x2001FE00"/>
<Set Name="Custom_Heap_End"         Value="0x2001FFF8"/>	

But when i replacing with :


<Set Name="Stack_Bottom"            Value="0x10000000"/>
<Set Name="Stack_Top"               Value="0x10003FF8"/>
<Set Name="RAM_Start"               Value="0x10004000"/>
<Set Name="Heap_Begin"              Value="0xD0010000"/>
<Set Name="Heap_End"                Value="0xD0017FF8"/>
<Set Name="Custom_Heap_Begin"       Value="0xD0018000"/>
<Set Name="Custom_Heap_End"         Value="0xD001FFF8"/>

and


<Set Name="Stack_Bottom"            Value="0x10000000"/>
<Set Name="Stack_Top"               Value="0x10003FF8"/>
<Set Name="RAM_Start"               Value="0x10004000"/>
<Set Name="Heap_Begin"              Value="0xD0000000"/>
<Set Name="Heap_End"                Value="0xD001DFF8"/>
<Set Name="Custom_Heap_Begin"       Value="0xD001FE00"/>
<Set Name="Custom_Heap_End"         Value="0xD001FFF8"/>

tinybooter is booting up. But when deploying NETMF after delay of 10-15 seconds windows showing up not recognized usb HID device.
In IO_Init.cpp file, after SDRAM initialization, i’m running memory tests, and seems that SDRAM is accessible.
Just in case SDRAM pinout assignment.


]+-------------------+--------------------+--------------------+--------------------+
 +                       SDRAM pins assignment                                      +
 +-------------------+--------------------+--------------------+--------------------+
 | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   |
 | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   |
 | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG8  <-> FMC_SDCLK |
 | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG15 <-> FMC_NCAS  |
 | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    |--------------------+ 
 | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    |   
 | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  | 
 +-------------------| PE12 <-> FMC_D9    | PF12 <-> FMC_A6    | 
                     | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |    
                     | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |
                     | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |
 +-------------------+--------------------+--------------------+
 | PB5 <-> FMC_SDCKE1| 
 | PB6 <-> FMC_SDNE1 | 
 | PC0 <-> FMC_SDNWE |
 +-------------------+ 
 

Any help is appreciated. :slight_smile:

What you change for support the usb Port on the new discovery (the port was changed from disc4 to disc429).
thanks

@ gerry10 - I just wired another connector to PA11,PA12.

I wasn’t able setup FS on B14, B15, only a HS. But works fine on PA11,PA12.

Please upload your sourcecode for help.