KurtE
Senior Member+
Thought I would mention I have been playing around with a second version castellated breakout board, that brings out the underneath memory pins as well as the Center pins like ON/OFF, program and brings them out in a way that makes it possible to plug into breadboard.
They are/were quick and dirty.
It solders onto the bottom of the T4.1 like:
I then had a quick and dirty small board that can hold SPRAM and FLASH with the same pins as below:
While I was getting ready to solder that memory board figured out I sort of screwed up and it plugs in to the extension with the memory chips pointing down to the T4.1...
Sort of like:
Sorry for quick and dirty photo, sort of out of focus...
I had a FLASH chip on it as well, but sort of screwed up soldering that one (which is why I choose one that I have a few of)... Also setup with Logic Analyzer plugged in to it as.
so far not working very well
I did verify with the HiLow Test that all of the IO pins are getting to the right places.
But when I first tried running the MTP test program it did try to create two new logical disks, but showed them with no free space
So did a quick and dirty program:
The program runs fine on another T4.1 with 16mb of psram.
But when run on this one...
I am getting tons of errors.
Have hooked up to Logic Analyzer using a user supplied Quad analyzer. Which maybe needs some work. This one knows very little so you have to tell it if you are in single, Dual or quad mode.
It does detect the memory:
It looks like it wrote the first couple of Quad SPI packets out OK:
But then the first page holding index 3c... It errors on, the Quad analyzer did not see the right command, and gives a strange error:
So this may not turn out to be a great test setup...
May try lowering the FlexSPI2 SPI speed to see if it happier.
They are/were quick and dirty.
It solders onto the bottom of the T4.1 like:
I then had a quick and dirty small board that can hold SPRAM and FLASH with the same pins as below:
While I was getting ready to solder that memory board figured out I sort of screwed up and it plugs in to the extension with the memory chips pointing down to the T4.1...
Sort of like:
Sorry for quick and dirty photo, sort of out of focus...
I had a FLASH chip on it as well, but sort of screwed up soldering that one (which is why I choose one that I have a few of)... Also setup with Logic Analyzer plugged in to it as.
so far not working very well
I did verify with the HiLow Test that all of the IO pins are getting to the right places.
But when I first tried running the MTP test program it did try to create two new logical disks, but showed them with no free space
So did a quick and dirty program:
Code:
extern "C" {
extern uint8_t external_psram_size;
}
EXTMEM uint32_t extmem_array[8192*1024/4];
uint32_t array_max;
void setup() {
while (!Serial && millis() < 5000);
Serial.begin(115200);
delay(250);
Serial.printf("External PSRAM size: %u\n", external_psram_size );
array_max = (external_psram_size * 1024*1024) / sizeof(uint32_t);
Serial.printf("Array Max: %u\n", array_max); Serial.flush();
}
uint32_t loop_counter = 0;
void loop() {
loop_counter++;
digitalToggleFast(13);
Serial.printf("Starting pass: %u\n", loop_counter); Serial.flush();
for (uint32_t i = 0; i < array_max; i++) {
if ((i & 0xffff) == 0xffff) Serial.print(".");
extmem_array[i] = loop_counter + i;
}
for (uint32_t i = 0; i < array_max; i++) {
if (extmem_array[i] != (loop_counter+i)) Serial.printf("Fail(%x) %x != %x\n", i, extmem_array[i], loop_counter);
}
}
But when run on this one...
Code:
External PSRAM size: 8
Array Max: 2097152
Starting pass: 1
................................Fail(3b) 9203003c != 1
Fail(3c) a20340c1 != 1
Fail(3d) 40c1 != 1
Fail(3e) 0 != 1
Fail(3f) 0 != 1
Fail(70) 77777777 != 1
Fail(71) 77777777 != 1
Fail(72) 77777777 != 1
Fail(73) 77777777 != 1
Fail(74) 77777777 != 1
...
I am getting tons of errors.
Have hooked up to Logic Analyzer using a user supplied Quad analyzer. Which maybe needs some work. This one knows very little so you have to tell it if you are in single, Dual or quad mode.
It does detect the memory:
It looks like it wrote the first couple of Quad SPI packets out OK:
But then the first page holding index 3c... It errors on, the Quad analyzer did not see the right command, and gives a strange error:
So this may not turn out to be a great test setup...
May try lowering the FlexSPI2 SPI speed to see if it happier.