Errors in T 4.1 with PSRAM and Flash chips

Status
Not open for further replies.

JotaEfe13

Well-known member
Hi, guys.

I have been trying to migrate a project from T 3.6 to T 4.1. In my T 3.6 project I have a Winbond 25Q128FVSG flash chip soldered in the audio board and I decided to upgrade to the new project with a Winbond 25Q256JVEIQ (8 pad WSON) chip and a PSRAM 8MB chip, both soldered in the T 4.1.

I have tried to test if the soldering was successful, but here is where the trouble begins. I am not sure what libraries I should/can use. First of all I tried the following sketch to check the PSRAM:

Program: https://github.com/PaulStoffregen/teensy41_psram_memtest/blob/master/teensy41_psram_memtest.ino
Results:
Code:
	EXTMEM Memory Test, 8 Mbyte
	 CCM_CBCMR=B5AE8304 (88.0 MHz)
	testing with fixed pattern 5A698421
	testing with pseudo-random sequence, seed=2976674124
	testing with pseudo-random sequence, seed=1438200953
	testing with pseudo-random sequence, seed=3413783263
	testing with pseudo-random sequence, seed=1900517911
			[I](...)[/I]
			
	 test ran for 36.66 seconds
	All memory tests passed :-)

It looks good so I follow with the flash chip. For this one I tried a sketch from the SerfialFlash library:



Library: SerialFlash
Program: https://github.com/PaulStoffregen/S.../examples/EraseEverything/EraseEverything.ino
Results:
Code:
	[B]Unable to access SPI Flash chip[/B]

I have used this program before with the T3.6, the audio board and the Winbond 25Q128FVSG chip. But I am not sure if this library is compatible with T4.1 flash chip. I have not seen anything about it nor in the documentation neither in the forum. And if it is compatible, I am not sure the selected pin (6) is correct.

Then I tried with the SPIFFS_t4 and extRAM_t4 libraries. I saw there are two versions of the extRAM_t4 library and I am not sure of the differences, so I tried with both.



Libraries: SPIFFS_t4 + extRAM_t4
Program: https://github.com/PaulStoffregen/t.../extRAM_t4/examples/flashtest4/flashtest4.ino
Results for PSRAM only:
Code:
	 Enter 'y' in 6 seconds to format FlashChip - other to skip

	Mount SPIFFS:

	hardware initialized

	ERAM ID: 0D 5D DF FF FF FF FF FF
	at 0x 7000000
	Device found!

	Mount ADDR 0x1000000 with res: 0
	Write file:

	Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :)  Hello World! What a wonderful World :) Hello World! What a wonderful World :)
Results for FLASH only:
Code:
	 Enter 'y' in 6 seconds to format FlashChip - other to skip


	Mount SPIFFS:

	hardware initialized

	FLASH ID: EF 40 19 00 00 00 00 00
	at 0x 1000000
	Mount ADDR 0x1000000 with res: 0
	Write file:

	Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :)  Hello World! What a wonderful World :) Hello World! What a wonderful World :)


	Directory contents:

	my_file [0001] size:234
	Read file:

	Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :) Hello World! What a wonderful World :)  Hello World! What a wonderful World :) Hello World! What a wonderful World :)


		ERAM ========== memory map ====== eRAM class ====== check42() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 252166 elapsed us
		ERAM ============================ check42() : COMPARE !!!!
		+++ NOT 42 Good Run of 184 {bad @ 184}
	184=     130
	185=     162
	186=     162
	187=     162
	188=     162
	189=     162
	190=     162
	191=     162
		+++ NOT 42 Good Run of 440 {bad @ 632}
	632=     130
	633=     162
	634=     162
	635=     162
	636=     162
	637=     162
	638=     162
	639=     162
		+++ NOT 42 Good Run of 15920 {bad @ 16560}
	16560=       2
	16561=     162
	16562=     162
	16563=     162
	16564=     162
	16565=     162
	16566=     162
	16567=     162
	16568=     162
	16569=     162
	16570=     162
	16571=     162
	16572=     162
	16573=     162
	16574=     162
	16575=     162
		+++ NOT 42 Good Run of 432 {bad @ 17008}
	17008=       2
	17009=     162
	17010=     162
	17011=     162
	17012=     162
	17013=     162
	17014=     162
	17015=     162
	17016=     162
	17017=     162
	17018=     162
	17019=     162
	17020=     162
	17021=     162
	17022=     162
	17023=     162
		+++ NOT 42 Good Run of 1617 {bad @ 18641}
	18641=      18
		+++ NOT 42 Good Run of 3104 {bad @ 21746}
	21746=      34
		+++ NOT 42 Good Run of 5 {bad @ 21752}
	21752=     130
	21753=     162
	21754=     162
	21755=     162
	21756=     162
	21757=     162
	21758=     162
	21759=     162
		+++ NOT 42 Good Run of 976 {bad @ 22736}
	22736=       2
	22737=     162
	22738=     162
	22739=     162
	22740=     162
	22741=     162
	22742=     162
	22743=     162
	22744=     162
	22745=     162
	22746=     162
	22747=     162
	22748=     162
	22749=     162
	22750=     162
	22751=     162
		+++ NOT 42 Good Run of 4089 {bad @ 26841}
	26841=     146
		+++ NOT 42 Good Run of 10198 {bad @ 37040}
	37040=       2
	37041=     162
	37042=     162
	37043=     162
	37044=     162
	37045=     162
	37046=     162
	37047=     162
	37048=     162
	37049=     162
	37050=     162
	37051=     162
	37052=     162
	37053=     162
	37054=     162
	37055=     162
		+++ NOT 42 Good Run of 4080 {bad @ 41136}
	41136=       2
	41137=     162
	41138=     162
	41139=     162
	41140=     162
	41141=     162
	41142=     162
	41143=     162
	41144=     162
		+++ NOT 42 Good Run of 8176 {bad @ 49328}
		+++ NOT 42 Good Run of 1 {bad @ 49339}
		+++ NOT 42 Good Run of 8180 {bad @ 57520}
			[I](.. 1654 lines with similar results)[/I]
		
		 took 367669 elapsed us
	Failed to find 42 in ERAM 16025 Times	Found 42 in ERAM 0x7FC165 Times

		ERAM ========== memory map ===== array* ======== check24() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 226981 elapsed us
		ERAM ============================ check24() : COMPARE !!!!
		+++ Good Run of 721 {bad @ 721}
	721=     129
	722=     129
	723=     129
	724=     129
	725=     129
	726=     129
	727=     129
	728=     129
	729=     129
	730=     129
	731=     129
	732=     129
	733=     129
	734=     129
	735=     129
	736=     129
	737=     129
	738=     129
	739=     129
	740=     129
	741=     129
	742=     129
	743=     129
	744=     129
		+++ Good Run of 3526 {bad @ 4271}
	4271=       1
	4272=     129
	4273=     129
	4274=     129
	4275=     129
	4276=     129
	4277=     129
	4278=     129
	4279=     129
	4280=     129
	4281=     129
	4282=     129
	4283=     129
	4284=     129
	4285=     129
	4286=     129
		+++ Good Run of 4080 {bad @ 8367}
	8367=       1
	8368=     129
	8369=     129
	8370=     129
	8371=     129
	8372=     129
	8373=     129
	8374=     129
	8375=     129
	8376=     129
	8377=     129
	8378=     129
	8379=     129
	8380=     129
	8381=     129
	8382=     129
		+++ Good Run of 2618 {bad @ 11001}
	11001=     161
	11002=     129
		+++ Good Run of 2556 {bad @ 13559}
	13559=     129
	13560=     129
	13561=     129
	13562=     129
	13563=     129
	13564=     129
	13565=     129
	13566=     129
		+++ Good Run of 3440 {bad @ 17007}
	17007=       1
	17008=     129
	17009=     129
	17010=     129
	17011=     129
	17012=     129
	17013=     129
	17014=     129
	17015=     129
	17016=     129
	17017=     129
	17018=     129
	17019=     129
	17020=     129
	17021=     129
	17022=     129
		+++ Good Run of 5712 {bad @ 22735}
	22735=       1
	22736=     129
	22737=     129
	22738=     129
	22739=     129
	22740=     129
	22741=     129
	22742=     129
	22743=     129
	22744=     129
	22745=     129
	22746=     129
	22747=     129
	22748=     129
	22749=     129
	22750=     129
		+++ Good Run of 8366 {bad @ 31117}
	31117=       1
	31118=     129
		+++ Good Run of 1818 {bad @ 32943}
		+++ Good Run of 2608 {bad @ 35567}
		+++ Good Run of 9648 {bad @ 45231}
			[I](.. 663 lines with similar results)[/I]
		
		 took 230082 elapsed us
	Failed to find 24 in ERAM 9590 Times	Found 24 in ERAM 7FDA88 Times


	Mount SPIFFS:

	Mount ADDR 0x1000000 with res: 0
	Directory contents:

	my_file [0001] size:234

Not sure how to interpret the results, maybe this sketch wasn't supposed to be run with flash only?



Libraries: SPIFFS_t4 + extRAM_SPIFFS_t4
Program: https://github.com/PaulStoffregen/t...PIFFS_t4/examples/eram_spiffs/eram_spiffs.ino
Results for PSRAM only:
Code:
	Mount SPIFFS:

	hardware initialized

	ERAM ID: 0D 7D DF FF FF FF FF FF
	at 0x 7000000
	Wrong ID  :-(

	Mount ADDR 0x0 with res: 0
	Write file:

	Hello World! What a wonderful World :)

	errno -10010


	Directory contents:

	Read file:

	errno -10010


	Mount SPIFFS:

	Mount ADDR 0x0 with res: 0
	Directory contents:


	Mount SPIFFS:
Results for FLASH only:
Code:
	hardware initialized

	FLASH ID: EF 40 19 00 00 00 00 00
	at 0x 1000000
	Mount ADDR 0x1000000 with res: 0
	Write file:

	Hello World! What a wonderful World :)


	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38
	Read file:

	Hello World! What a wonderful World :)

	Mount SPIFFS:

	Mount ADDR 0x1000000 with res: 0
	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38

Both failed in this one.



Libraries: SPIFFS_t4 + extRAM_SPIFFS_t4
Program: https://github.com/PaulStoffregen/t..._SPIFFS_t4/examples/flashtest6/flashtest6.ino
Results for PSRAM only:
Code:
	 Enter 'y' in 6 seconds to format FlashChip - other to skip


	Mount SPIFFS:

	hardware initialized

	ERAM ID: 0D 5D DF FF FF FF FF FF
	at 0x 7000000
	Device found!

	Mount ADDR 0x0 with res: 0
	Write file:

	Hello World! What a wonderful World :)

	errno -10010


	Directory contents:

	Read file:

	errno -10010



		ERAM ========== memory map ====== eRAM class ====== check42() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 266086 elapsed us
		ERAM ============================ check42() : COMPARE !!!!
		+++ NOT 42 Good Run of 184 {bad @ 184}
	184=     130
	185=     162
	186=     162
	187=     162
	188=     162
	189=     162
	190=     162
	191=     162
		+++ NOT 42 Good Run of 20472 {bad @ 20664}
	20664=     130
	20665=     162
	20666=     162
	20667=     162
	20668=     162
	20669=     162
	20670=     162
	20671=     162
		+++ NOT 42 Good Run of 10808 {bad @ 31480}
	31480=     130
	31481=     162
	31482=     162
	31483=     162
	31484=     162
	31485=     162
	31486=     162
	31487=     162
		+++ NOT 42 Good Run of 1464 {bad @ 32952}
	32952=     130
	32953=     162
	32954=     162
	32955=     162
	32956=     162
	32957=     162
	32958=     162
	32959=     162
		+++ NOT 42 Good Run of 8184 {bad @ 41144}
	41144=     130
	41145=     162
	41146=     162
	41147=     162
	41148=     162
	41149=     162
	41150=     162
	41151=     162
		+++ NOT 42 Good Run of 8184 {bad @ 49336}
	49336=     130
	49337=     162
	49338=     162
	49339=     162
	49340=     162
	49341=     162
	49342=     162
	49343=     162
		+++ NOT 42 Good Run of 2616 {bad @ 51960}
	51960=     130
	51961=     162
	51962=     162
	51963=     162
	51964=     162
	51965=     162
	51966=     162
	51967=     162
		+++ NOT 42 Good Run of 3448 {bad @ 55416}
	55416=     130
	55417=     162
	55418=     162
	55419=     162
	55420=     162
	55421=     162
	55422=     162
	55423=     162
		+++ NOT 42 Good Run of 4088 {bad @ 59512}
	59512=     130
	59513=     162
	59514=     162
	59515=     162
	59516=     162
	59517=     162
	59518=     162
	59519=     162
		+++ NOT 42 Good Run of 7288 {bad @ 66808}
	66808=     130
	66809=     162
	66810=     162
	66811=     162
	66812=     162
	66813=     162
	66814=     162
	66815=     162
		+++ NOT 42 Good Run of 976 {bad @ 67792}
	67792=       2
	67793=     162
	67794=     162
	67795=     162
	67796=     162
	67797=     162
	67798=     162
	67799=     162
	67800=     162
	67801=     162
	67802=     162
	67803=     162
	67804=     162
	67805=     162
	67806=     162
	67807=     162
		+++ NOT 42 Good Run of 529 {bad @ 68337}
	68337=      18
		+++ NOT 42 Good Run of 2559 {bad @ 70897}
	70897=      18
	70898=      34
	70899=     162
		+++ NOT 42 Good Run of 19396 {bad @ 90296}
		+++ NOT 42 Good Run of 4087 {bad @ 94384}
		+++ NOT 42 Good Run of 9282 {bad @ 103668}
		+++ NOT 42 Good Run of 892 {bad @ 104564}
		+++ NOT 42 Good Run of 14392 {bad @ 118960}
		[I] (... 1K+ lines with similar results)[/I]
		
		 took 311724 elapsed us
	Failed to find 42 in ERAM 11067 Times	Found 42 in ERAM 0x7FD4C3 Times

		ERAM ========== memory map ===== array* ======== check24() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 226816 elapsed us
		ERAM ============================ check24() : COMPARE !!!!
		+++ Good Run of 4 {bad @ 4}
	  4=      81
		+++ Good Run of 121 {bad @ 126}
	126=       1
	127=     129
	128=     129
	129=     129
	130=     129
	131=     129
	132=     129
	133=     129
		+++ Good Run of 4137 {bad @ 4271}
	4271=       1
	4272=     129
	4273=     129
	4274=     129
	4275=     129
	4276=     129
	4277=     129
	4278=     129
	4279=     129
	4280=     129
	4281=     129
	4282=     129
	4283=     129
	4284=     129
	4285=     129
	4286=     129
		+++ Good Run of 1076 {bad @ 5363}
	5363=      65
	5364=     129
	5365=     129
	5366=     129
		+++ Good Run of 984 {bad @ 6351}
	6351=       1
	6352=     129
	6353=     129
	6354=     129
	6355=     129
	6356=     129
	6357=     129
	6358=     129
	6359=     129
	6360=     129
	6361=     129
	6362=     129
	6363=     129
	6364=     129
	6365=     129
	6366=     129
		+++ Good Run of 2000 {bad @ 8367}
	8367=       1
	8368=     129
	8369=     129
	8370=     129
	8371=     129
	8372=     129
	8373=     129
	8374=     129
	8375=     129
	8376=     129
	8377=     129
	8378=     129
	8379=     129
	8380=     129
	8381=     129
	8382=     129
		+++ Good Run of 2072 {bad @ 10455}
	10455=     129
	10456=     129
	10457=     129
	10458=     129
	10459=     129
	10460=     129
	10461=     129
	10462=     129
		+++ Good Run of 2000 {bad @ 12463}
	12463=       1
	12464=     129
	12465=     129
	12466=     129
	12467=     129
	12468=     129
	12469=     129
	12470=     129
	12471=     129
	12472=     129
	12473=     129
	12474=     129
	12475=     129
	12476=     129
	12477=     129
	12478=     129
		+++ Good Run of 2608 {bad @ 15087}
	15087=       1
	15088=     129
	15089=     129
	15090=     129
	15091=     129
	15092=     129
	15093=     129
	15094=     129
	15095=     129
	15096=     129
	15097=     129
	15098=     129
	15099=     129
	15100=     129
	15101=     129
		+++ Good Run of 1904 {bad @ 17007}
		+++ Good Run of 1616 {bad @ 18639}
		+++ Good Run of 4090 {bad @ 22745}
		+++ Good Run of 3092 {bad @ 25839}
			[I](... 500+ lines with similar results)[/I]
			
		 took 229546 elapsed us
	Failed to find 24 in ERAM 8444 Times	Found 24 in ERAM 7FDF02 Times


	Mount SPIFFS:

	Mount ADDR 0x0 with res: 0
	Directory contents:
Results for FLASH only:
Code:
	Enter 'y' in 6 seconds to format FlashChip - other to skip


	Mount SPIFFS:

	hardware initialized

	FLASH ID: EF 40 19 00 00 00 00 00
	at 0x 1000000
	Mount ADDR 0x1000000 with res: 0
	Write file:

	Hello World! What a wonderful World :)



	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38
	Read file:

	Hello World! What a wonderful World :)




		ERAM ========== memory map ====== eRAM class ====== check42() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 264831 elapsed us
		ERAM ============================ check42() : COMPARE !!!!
		+++ NOT 42 Good Run of 121 {bad @ 121}
	121=       2
	122=     162
	123=     162
	124=     162
	125=     162
	126=     162
	127=     162
	128=     162
	129=     162
	130=     162
	131=     162
	132=     162
	133=     162
	134=     162
	135=     162
	136=     162
		+++ NOT 42 Good Run of 47 {bad @ 184}
	184=     130
	185=     162
	186=     162
	187=     162
	188=     162
	189=     162
	190=     162
	191=     162
		+++ NOT 42 Good Run of 5176 {bad @ 5368}
	5368=     130
	5369=     162
	5370=     162
	5371=     162
	5372=     162
	5373=     162
	5374=     162
	5375=     162
		+++ NOT 42 Good Run of 984 {bad @ 6360}
	6360=     130
	6361=     162
	6362=     162
	6363=     162
	6364=     162
	6365=     162
	6366=     162
	6367=     162
		+++ NOT 42 Good Run of 536 {bad @ 6904}
	6904=     130
	6905=     162
	6906=     162
	6907=     162
	6908=     162
	6909=     162
	6910=     162
	6911=     162
		+++ NOT 42 Good Run of 9656 {bad @ 16568}
	16568=     130
	16569=     162
	16570=     162
	16571=     162
	16572=     162
	16573=     162
	16574=     162
	16575=     162
		+++ NOT 42 Good Run of 2616 {bad @ 19192}
	19192=     130
	19193=     162
	19194=     162
	19195=     162
	19196=     162
	19197=     162
	19198=     162
	19199=     162
		+++ NOT 42 Good Run of 1912 {bad @ 21112}
	21112=     130
	21113=     162
	21114=     162
	21115=     162
	21116=     162
	21117=     162
	21118=     162
	21119=     162
		+++ NOT 42 Good Run of 1624 {bad @ 22744}
	22744=     130
	22745=     162
	22746=     162
	22747=     162
	22748=     162
	22749=     162
	22750=     162
	22751=     162
		+++ NOT 42 Good Run of 6104 {bad @ 28856}
	28856=     130
	28857=     162
	28858=     162
	28859=     162
	28860=     162
	28861=     162
	28862=     162
	28863=     162
		+++ NOT 42 Good Run of 4088 {bad @ 32952}
	32952=     130
	32953=     162
	32954=     162
	32955=     162
	32956=     162
	32957=     162
	32958=     162
	32959=     162
		+++ NOT 42 Good Run of 1080 {bad @ 34040}
	34040=     130
	34041=     162
	34042=     162
	34043=     162
		+++ NOT 42 Good Run of 1528 {bad @ 35576}
		+++ NOT 42 Good Run of 1464 {bad @ 37048}
		+++ NOT 42 Good Run of 4088 {bad @ 41144}
		+++ NOT 42 Good Run of 26648 {bad @ 67800}
		+++ NOT 42 Good Run of 2424 {bad @ 70232}
			[I](... 1K+ lines with similar results)[/I]
		
		 took 311628 elapsed us
	Failed to find 42 in ERAM 11656 Times	Found 42 in ERAM 0x7FD276 Times

		ERAM ========== memory map ===== array* ======== check24() : WRITE !!!!
			ERAM length 0x7FFFFE element size of 1
		 took 227683 elapsed us
		ERAM ============================ check24() : COMPARE !!!!
		+++ Good Run of 720 {bad @ 720}
	720=       1
	721=     129
	722=     129
	723=     129
	724=     129
	725=     129
	726=     129
	727=     129
	728=     129
	729=     129
	730=     129
	731=     129
	732=     129
	733=     129
	734=     129
	735=     129
		+++ Good Run of 535 {bad @ 1271}
	1271=     129
	1272=     129
	1273=     129
	1274=     129
	1275=     129
	1276=     129
	1277=     129
	1278=     129
		+++ Good Run of 3440 {bad @ 4719}
	4719=       1
	4720=     129
	4721=     129
	4722=     129
	4723=     129
	4724=     129
	4725=     129
	4726=     129
	4727=     129
	4728=     129
	4729=     129
	4730=     129
	4731=     129
	4732=     129
	4733=     129
	4734=     129
		+++ Good Run of 5712 {bad @ 10447}
	10447=       1
	10448=     129
		+++ Good Run of 8190 {bad @ 18639}
	18639=       1
	18640=     129
	18641=      33
	18642=     129
		+++ Good Run of 548 {bad @ 19191}
	19191=     129
	19192=     129
		+++ Good Run of 5558 {bad @ 24751}
	24751=       1
	24752=     129
	24753=     129
	24754=     129
	24755=     129
	24756=     129
	24757=     129
	24758=     129
	24759=     129
	24760=     129
	24761=     129
	24762=     129
	24763=     129
	24764=     129
	24765=     129
	24766=     129
		+++ Good Run of 14906 {bad @ 39673}
	39673=     161
	39674=     129
		+++ Good Run of 5556 {bad @ 45231}
	45231=       1
	45232=     129
	45233=     129
	45234=     129
	45235=     129
	45236=     129
	45237=     129
	45238=     129
	45239=     129
	45240=     129
	45241=     129
	45242=     129
	45243=     129
	45244=     129
	45245=     129
	45246=     129
		+++ Good Run of 1072 {bad @ 46319}
	46319=       1
	46320=     129
	46321=     129
	46322=     129
	46323=     129
	46324=     129
	46325=     129
	46326=     129
	46327=     129
	46328=     129
	46329=     129
	46330=     129
	46331=     129
	46332=     129
	46333=     129
	46334=     129
		+++ Good Run of 8176 {bad @ 54511}
	54511=       1
	54512=     129
		+++ Good Run of 8184 {bad @ 62711}
		+++ Good Run of 888 {bad @ 63607}
			(... 500+ lines with similar results)
		
		 took 229863 elapsed us
	Failed to find 24 in ERAM 8803 Times	Found 24 in ERAM 7FDD9B Times


	Mount SPIFFS:

	Mount ADDR 0x1000000 with res: 0
	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38

Again, both seemed to have failed, although I am not sure this test was meant to be run for Flash chip. Is the 42 test only for PSRAM?



Libraries: SPIFFS_t4 + extRAM_SPIFFS_t4
Program: https://github.com/PaulStoffregen/t...FFS_t4/examples/flashtest7Fl/flashtest7Fl.ino
Results for PSRAM only:
Code:
	 Enter 'y' in 6 seconds to format FlashChip - other to skip



	Mount SPIFFS:

	hardware initialized

	ERAM ID: 0D 7D DF FF FF FF FF FF
	at 0x 7000000
	Wrong ID  :-(

	Mount ADDR 0x0 with res: 0
	Write file:

	Hello World! What a wonderful World :)



	Directory contents:

	A_loopEFW7C  [003d] size:702
	my_file1 [0001] size:38
	Read file:

	Hello World! What a wonderful World :)



	Mount SPIFFS:

	Mount ADDR 0x0 with res: 0
	Directory contents:

	A_loopEFW7C  [003d] size:702
	my_file1 [0001] size:38
	'ENTER' '2' for Loop Test2



	Loop Test2

	Directory contents:

	A_loopEFW7C  [003d] size:702
	my_file1 [0001] size:38
	A_loopEFW7C  [0079] size:1170
Results for FLASH only:
Code:
 Enter 'y' in 6 seconds to format FlashChip - other to skip


	Mount SPIFFS:

	hardware initialized

	FLASH ID: EF 40 19 00 00 00 00 00
	at 0x 1000000
	Mount ADDR 0x1000000 with res: 0
	Write file:

	Hello World! What a wonderful World :)



	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38
	Read file:

	Hello World! What a wonderful World :)





	Mount SPIFFS:

	Mount ADDR 0x1000000 with res: 0
	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38
	'ENTER' '2' for Loop Test2



	Loop Test2

	Directory contents:

	my_file [0001] size:234
	my_file1 [0079] size:38
	A_loopTest2 [00f1] size:2600

I saw @defragster created this one explicitly for the Flash chip.


I am not sure how to interpret all this results. Here are some thoughts/questions:
- PSRAM passed the test provided by @PaulStoffregen, but it looks like is failing with SPIFFS_t4 + extRAM libraries.
- I think SerialFlash is not compatible with T 4.1 flash chip, is that right?
- Not sure if the Flash chip is working properly with SPIFFS_t4 + extRAM libraries, it failed some tests, but maybe they were not for testing flash chip?

Thank you in advance.
 
History - the only WSON chip tested was the 128 MB NAND chip. The NOR Flash tested were the typical 16 MB Winbond chips 'with legs'.

This is a 32 MB Flash chip that may have an ID that doesn't pass or get properly recognized.

And indeed certain of those tests were made to work with some variation of the above chips - and the 8MB PSRAM

The SPIFFS for FLASH was the QSPI most tested sketch for the 16 MB chips. ... Others may have real detail on the steps needed to adapt to this chip perhaps.
 
@JotaEfe13

Let's start with PSRAM. Using the PSRAM memory test looks like you have your PSRAM installed correctly. However, think you are using the wrong Lib versions for extRAM_t4 and SPIFFS_T4. Recommend using this branch of the libraries:

With the new version of the libs extRAM_t4 is only to be used with the PSRAM chip while the SPIFFS_t4 can be used with the FLASH chips. It was kind of decided that SPIFFS wouldn't be support on the PSRAM only the FLASH.

OK now lets move on to the your Flash chip. As @defragster stated the only chip that currently works with the SPIFFS_t4 library is the Winbond 25Q128 Flash chip. A cursory look at the Winbond 25Q256JVEIQ datasheet would require reworking the current library and driver for use with that chip.

The lib version you are using does not have the check on the chip ID to let you know that your flash chip is incorrect so it is continuing to run the examples with the wrong driver. Lets take your Results for FLASH only: example. In the old version of the library PSRAM and FLASH drivers were in the same library and the PSRAM allowed to support SPIFFs. So what your results are showing is that the PSRAM chip is working with SPIFFs but writing to you Flash chip is failing which correct.

As for SerialFlash, don't believe it will work with any FLASH chip on the bottom of the board as those pins are being used for what they call FlexSPI. Check this explanation out for further information: https://forum.pjrc.com/threads/61566-NAND-flash-support-in-1-54?p=245370&viewfull=1#post245370.

Probably need to come up with a test rig so dont have to solder on flash chips to the T4.1 for testing - may do that at some point.
 
Thank you both for your replies. Have been very helpful.

I think I used the latest versions of the libraries. I just downloaded the zip from https://github.com/PaulStoffregen/teensy41_extram and copied into my libs folder the folders SPIFFS_t4, extRAM_t4 and extRAM_SPIFFS_t4. As I saw that the last two were colliding, I tried with extRAM_t4 first and then with extRAM_SPIFFS_t4.

So, if I understand correctly, for PSRAM I should just make use of extRAM_t4 and for the Flash ship I should use just SPIFFS_t4?

Then this warning in the documentation may be outdated?

WARNING: Both the SPIFFS_t4 and the extRAM_SPIFFS_t4 libraries need to be installed into your libraries folder to use the external PSRAM or FLASH!

Is there any updated test for checking PSRAM with extRAM_t4 library?

As for the flash chip, I guess I have three options:
- Replace the chip with the 25Q128.
- Solder the 25Q256JVEIQ to the audio board (the SerialFlash library lists 25Q256FV as compatible).
- Modify the SPIFFS_t4 to add support for 25Q256JVEIQ (something tells me this one will be too advance for my knowledge).

By the way, is it possible to use the chips soldered in the bottom of the Teensy 4.1 in conjunction with a Flash chip soldered in the audio board?

Sorry, maybe too many questions.

Thank you again.
 
think I used the latest versions of the libraries. I just downloaded the zip from https://github.com/PaulStoffregen/teensy41_extram and copied into my libs folder the folders SPIFFS_t4, extRAM_t4 and extRAM_SPIFFS_t4. As I saw that the last two were colliding, I tried with extRAM_t4 first and then with extRAM_SPIFFS_t4.
Unfortunately no, you downloaded the wrong branch - for now you can down the latest from here: https://github.com/PaulStoffregen/teensy41_extram/tree/SPIFFS-FLASH-ONLY

So, if I understand correctly, for PSRAM I should just make use of extRAM_t4 and for the Flash ship I should use just SPIFFS_t4?
Yes thats true. SPIFFs will allow you to use a file system similar to the SD card on the FLASH and the examples also include how you directly access the Flash CHip if you don't want to use SPIFF's.

As for the flash chip, I guess I have three options:
- Replace the chip with the 25Q128.
- Solder the 25Q256JVEIQ to the audio board (the SerialFlash library lists 25Q256FV as compatible).
- Modify the SPIFFS_t4 to add support for 25Q256JVEIQ (something tells me this one will be too advance for my knowledge).
I would stay away from option 3 for now. Does get confusing.

By the way, is it possible to use the chips soldered in the bottom of the Teensy 4.1 in conjunction with a Flash chip soldered in the audio board?
As far as I can see yes as long as you use serialFlash for the FLASH chip on the audio board. But make sure you have the latest version of the audio for the T4
 
Last edited by a moderator:
I see. I will try with that branch then.

Than you very much for such comprehensive clarifications.
 
Well, after downloading I ran successfully the tests for the PSRAM. Then I tried the following test for the Flash chip: https://github.com/PaulStoffregen/t.../SPIFFS_t4/examples/flashtest6/flashtest6.ino

I was expecting some error, but these were the results:
Code:
PSRAM: 8 MB

 Enter 'y' in 6 seconds to format FlashChip - other to skip

Status 1:1010011

Status 2:1010011

FLASH ID: EF 40 19 00 00 00 00 00
at 0x 800000
Status 1:10000

Status 2:10010

Status 1:10000

Status 2:10010

Erasing... (may take some time)

..................................................................................................
Chip erased in 49 seconds.


Mount SPIFFS:

Status 1:1010000

Status 2:1010010

FLASH ID: EF 40 19 00 00 00 00 00
at 0x 800000
Status 1:1010000

Status 2:1010010

Status 1:1010000

Status 2:1010010

Mount ADDR 0x800000 with res: 0
Write file:

Hello World! What a wonderful World :)



Directory contents:

my_file1 [0001] size:38
Read file:

Hello World! What a wonderful World :)




    ERAM ========== memory map ===== array* ======== check24() : WRITE !!!!
		ERAM length 0x7FFFFE element size of 1
	 took 227380 elapsed us
    ERAM ============================ check24() : COMPARE !!!!
	 took 225148 elapsed us
Good, 	Found 24 in ERAM 7FFFFE Times


Mount SPIFFS:

Mount ADDR 0x800000 with res: 0
Directory contents:

my_file1 [0001] size:38


Loop Test2

Directory contents:

my_file1 [0001] size:38
loopTest2 [0079] size:2600


abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH

abcdefghijklmnopqrstuvwxyz  <<< FLASH

ABCDEFGHIJKLMNOPQRSTUVWXYZ  <<< FLASH



Loop Test

2900 :: RAM 
abcdefghijklmnopqrstuvwxyz00
ABCDEFGHIJKLMNOPQRSTUVWXYZ01
abcdefghijklmnopqrstuvwxyz02
ABCDEFGHIJKLMNOPQRSTUVWXYZ03
abcdefghijklmnopqrstuvwxyz04
ABCDEFGHIJKLMNOPQRSTUVWXYZ05
abcdefghijklmnopqrstuvwxyz06
ABCDEFGHIJKLMNOPQRSTUVWXYZ07
abcdefghijklmnopqrstuvwxyz08
ABCDEFGHIJKLMNOPQRSTUVWXYZ09
abcdefghijklmnopqrstuvwxyz10
ABCDEFGHIJKLMNOPQRSTUVWXYZ11
abcdefghijklmnopqrstuvwxyz12
ABCDEFGHIJKLMNOPQRSTUVWXYZ13
abcdefghijklmnopqrstuvwxyz14
ABCDEFGHIJKLMNOPQRSTUVWXYZ15
abcdefghijklmnopqrstuvwxyz16
ABCDEFGHIJKLMNOPQRSTUVWXYZ17
abcdefghijklmnopqrstuvwxyz18
ABCDEFGHIJKLMNOPQRSTUVWXYZ19
abcdefghijklmnopqrstuvwxyz20
ABCDEFGHIJKLMNOPQRSTUVWXYZ21
abcdefghijklmnopqrstuvwxyz22
ABCDEFGHIJKLMNOPQRSTUVWXYZ23
abcdefghijklmnopqrstuvwxyz24
ABCDEFGHIJKLMNOPQRSTUVWXYZ25
abcdefghijklmnopqrstuvwxyz26
ABCDEFGHIJKLMNOPQRSTUVWXYZ27
abcdefghijklmnopqrstuvwxyz28
ABCDEFGHIJKLMNOPQRSTUVWXYZ29
abcdefghijklmnopqrstuvwxyz30
ABCDEFGHIJKLMNOPQRSTUVWXYZ31
abcdefghijklmnopqrstuvwxyz32
ABCDEFGHIJKLMNOPQRSTUVWXYZ33
abcdefghijklmnopqrstuvwxyz34
ABCDEFGHIJKLMNOPQRSTUVWXYZ35
abcdefghijklmnopqrstuvwxyz36
ABCDEFGHIJKLMNOPQRSTUVWXYZ37
abcdefghijklmnopqrstuvwxyz38
ABCDEFGHIJKLMNOPQRSTUVWXYZ39
abcdefghijklmnopqrstuvwxyz40
ABCDEFGHIJKLMNOPQRSTUVWXYZ41
abcdefghijklmnopqrstuvwxyz42
ABCDEFGHIJKLMNOPQRSTUVWXYZ43
abcdefghijklmnopqrstuvwxyz44
ABCDEFGHIJKLMNOPQRSTUVWXYZ45
abcdefghijklmnopqrstuvwxyz46
ABCDEFGHIJKLMNOPQRSTUVWXYZ47
abcdefghijklmnopqrstuvwxyz48
ABCDEFGHIJKLMNOPQRSTUVWXYZ49
abcdefghijklmnopqrstuvwxyz50
ABCDEFGHIJKLMNOPQRSTUVWXYZ51
abcdefghijklmnopqrstuvwxyz52
ABCDEFGHIJKLMNOPQRSTUVWXYZ53
abcdefghijklmnopqrstuvwxyz54
ABCDEFGHIJKLMNOPQRSTUVWXYZ55
abcdefghijklmnopqrstuvwxyz56
ABCDEFGHIJKLMNOPQRSTUVWXYZ57
abcdefghijklmnopqrstuvwxyz58
ABCDEFGHIJKLMNOPQRSTUVWXYZ59
abcdefghijklmnopqrstuvwxyz60
ABCDEFGHIJKLMNOPQRSTUVWXYZ61
abcdefghijklmnopqrstuvwxyz62
ABCDEFGHIJKLMNOPQRSTUVWXYZ63
abcdefghijklmnopqrstuvwxyz64
ABCDEFGHIJKLMNOPQRSTUVWXYZ65
abcdefghijklmnopqrstuvwxyz66
ABCDEFGHIJKLMNOPQRSTUVWXYZ67
abcdefghijklmnopqrstuvwxyz68
ABCDEFGHIJKLMNOPQRSTUVWXYZ69
abcdefghijklmnopqrstuvwxyz70
ABCDEFGHIJKLMNOPQRSTUVWXYZ71
abcdefghijklmnopqrstuvwxyz72
ABCDEFGHIJKLMNOPQRSTUVWXYZ73
abcdefghijklmnopqrstuvwxyz74
ABCDEFGHIJKLMNOPQRSTUVWXYZ75
abcdefghijklmnopqrstuvwxyz76
ABCDEFGHIJKLMNOPQRSTUVWXYZ77
abcdefghijklmnopqrstuvwxyz78
ABCDEFGHIJKLMNOPQRSTUVWXYZ79
abcdefghijklmnopqrstuvwxyz80
ABCDEFGHIJKLMNOPQRSTUVWXYZ81
abcdefghijklmnopqrstuvwxyz82
ABCDEFGHIJKLMNOPQRSTUVWXYZ83
abcdefghijklmnopqrstuvwxyz84
ABCDEFGHIJKLMNOPQRSTUVWXYZ85
abcdefghijklmnopqrstuvwxyz86
ABCDEFGHIJKLMNOPQRSTUVWXYZ87
abcdefghijklmnopqrstuvwxyz88
ABCDEFGHIJKLMNOPQRSTUVWXYZ89
abcdefghijklmnopqrstuvwxyz90
ABCDEFGHIJKLMNOPQRSTUVWXYZ91
abcdefghijklmnopqrstuvwxyz92
ABCDEFGHIJKLMNOPQRSTUVWXYZ93
abcdefghijklmnopqrstuvwxyz94
ABCDEFGHIJKLMNOPQRSTUVWXYZ95
abcdefghijklmnopqrstuvwxyz96
ABCDEFGHIJKLMNOPQRSTUVWXYZ97
abcdefghijklmnopqrstuvwxyz98
ABCDEFGHIJKLMNOPQRSTUVWXYZ99

2900 :: ERAM 
abcdefghijklmnopqrstuvwxyz00
ABCDEFGHIJKLMNOPQRSTUVWXYZ01
abcdefghijklmnopqrstuvwxyz02
ABCDEFGHIJKLMNOPQRSTUVWXYZ03
abcdefghijklmnopqrstuvwxyz04
ABCDEFGHIJKLMNOPQRSTUVWXYZ05
abcdefghijklmnopqrstuvwxyz06
ABCDEFGHIJKLMNOPQRSTUVWXYZ07
abcdefghijklmnopqrstuvwxyz08
ABCDEFGHIJKLMNOPQRSTUVWXYZ09
abcdefghijklmnopqrstuvwxyz10
ABCDEFGHIJKLMNOPQRSTUVWXYZ11
abcdefghijklmnopqrstuvwxyz12
ABCDEFGHIJKLMNOPQRSTUVWXYZ13
abcdefghijklmnopqrstuvwxyz14
ABCDEFGHIJKLMNOPQRSTUVWXYZ15
abcdefghijklmnopqrstuvwxyz16
ABCDEFGHIJKLMNOPQRSTUVWXYZ17
abcdefghijklmnopqrstuvwxyz18
ABCDEFGHIJKLMNOPQRSTUVWXYZ19
abcdefghijklmnopqrstuvwxyz20
ABCDEFGHIJKLMNOPQRSTUVWXYZ21
abcdefghijklmnopqrstuvwxyz22
ABCDEFGHIJKLMNOPQRSTUVWXYZ23
abcdefghijklmnopqrstuvwxyz24
ABCDEFGHIJKLMNOPQRSTUVWXYZ25
abcdefghijklmnopqrstuvwxyz26
ABCDEFGHIJKLMNOPQRSTUVWXYZ27
abcdefghijklmnopqrstuvwxyz28
ABCDEFGHIJKLMNOPQRSTUVWXYZ29
abcdefghijklmnopqrstuvwxyz30
ABCDEFGHIJKLMNOPQRSTUVWXYZ31
abcdefghijklmnopqrstuvwxyz32
ABCDEFGHIJKLMNOPQRSTUVWXYZ33
abcdefghijklmnopqrstuvwxyz34
ABCDEFGHIJKLMNOPQRSTUVWXYZ35
abcdefghijklmnopqrstuvwxyz36
ABCDEFGHIJKLMNOPQRSTUVWXYZ37
abcdefghijklmnopqrstuvwxyz38
ABCDEFGHIJKLMNOPQRSTUVWXYZ39
abcdefghijklmnopqrstuvwxyz40
ABCDEFGHIJKLMNOPQRSTUVWXYZ41
abcdefghijklmnopqrstuvwxyz42
ABCDEFGHIJKLMNOPQRSTUVWXYZ43
abcdefghijklmnopqrstuvwxyz44
ABCDEFGHIJKLMNOPQRSTUVWXYZ45
abcdefghijklmnopqrstuvwxyz46
ABCDEFGHIJKLMNOPQRSTUVWXYZ47
abcdefghijklmnopqrstuvwxyz48
ABCDEFGHIJKLMNOPQRSTUVWXYZ49
abcdefghijklmnopqrstuvwxyz50
ABCDEFGHIJKLMNOPQRSTUVWXYZ51
abcdefghijklmnopqrstuvwxyz52
ABCDEFGHIJKLMNOPQRSTUVWXYZ53
abcdefghijklmnopqrstuvwxyz54
ABCDEFGHIJKLMNOPQRSTUVWXYZ55
abcdefghijklmnopqrstuvwxyz56
ABCDEFGHIJKLMNOPQRSTUVWXYZ57
abcdefghijklmnopqrstuvwxyz58
ABCDEFGHIJKLMNOPQRSTUVWXYZ59
abcdefghijklmnopqrstuvwxyz60
ABCDEFGHIJKLMNOPQRSTUVWXYZ61
abcdefghijklmnopqrstuvwxyz62
ABCDEFGHIJKLMNOPQRSTUVWXYZ63
abcdefghijklmnopqrstuvwxyz64
ABCDEFGHIJKLMNOPQRSTUVWXYZ65
abcdefghijklmnopqrstuvwxyz66
ABCDEFGHIJKLMNOPQRSTUVWXYZ67
abcdefghijklmnopqrstuvwxyz68
ABCDEFGHIJKLMNOPQRSTUVWXYZ69
abcdefghijklmnopqrstuvwxyz70
ABCDEFGHIJKLMNOPQRSTUVWXYZ71
abcdefghijklmnopqrstuvwxyz72
ABCDEFGHIJKLMNOPQRSTUVWXYZ73
abcdefghijklmnopqrstuvwxyz74
ABCDEFGHIJKLMNOPQRSTUVWXYZ75
abcdefghijklmnopqrstuvwxyz76
ABCDEFGHIJKLMNOPQRSTUVWXYZ77
abcdefghijklmnopqrstuvwxyz78
ABCDEFGHIJKLMNOPQRSTUVWXYZ79
abcdefghijklmnopqrstuvwxyz80
ABCDEFGHIJKLMNOPQRSTUVWXYZ81
abcdefghijklmnopqrstuvwxyz82
ABCDEFGHIJKLMNOPQRSTUVWXYZ83
abcdefghijklmnopqrstuvwxyz84
ABCDEFGHIJKLMNOPQRSTUVWXYZ85
abcdefghijklmnopqrstuvwxyz86
ABCDEFGHIJKLMNOPQRSTUVWXYZ87
abcdefghijklmnopqrstuvwxyz88
ABCDEFGHIJKLMNOPQRSTUVWXYZ89
abcdefghijklmnopqrstuvwxyz90
ABCDEFGHIJKLMNOPQRSTUVWXYZ91
abcdefghijklmnopqrstuvwxyz92
ABCDEFGHIJKLMNOPQRSTUVWXYZ93
abcdefghijklmnopqrstuvwxyz94
ABCDEFGHIJKLMNOPQRSTUVWXYZ95
abcdefghijklmnopqrstuvwxyz96
ABCDEFGHIJKLMNOPQRSTUVWXYZ97
abcdefghijklmnopqrstuvwxyz98
ABCDEFGHIJKLMNOPQRSTUVWXYZ99

Mount ADDR 0x800000 with res: 0
	 loopTest write took 42663 elapsed us
	 loopTest Directory contents:

loopTest2 [0079] size:2600
my_file1 [0001] size:2900
F_@

abcdefghijklmnopqrstuvwxyz00
ABCDEFGHIJKLMNOPQRSTUVWXYZ01
abcdefghijklmnopqrstuvwxyz02
ABCDEFGHIJKLMNOPQRSTUVWXYZ03
abcdefghijklmnopqrstuvwxyz04
ABCDEFGHIJKLMNOPQRSTUVWXYZ05
abcdefghijklmnopqrstuvwxyz06
ABCDEFGHIJKLMNOPQRSTUVWXYZ07
abcdefghijklmnopqrstuvwxyz08
ABCDEFGHIJKLMNOPQRSTUVWXYZ09
abcdefghijklmnopqrstuvwxyz10
ABCDEFGHIJKLMNOPQRSTUVWXYZ11
abcdefghijklmnopqrstuvwxyz12
ABCDEFGHIJKLMNOPQRSTUVWXYZ13
abcdefghijklmnopqrstuvwxyz14
ABCDEFGHIJKLMNOPQRSTUVWXYZ15
abcdefghijklmnopqrstuvwxyz16
ABCDEFGHIJKLMNOPQRSTUVWXYZ17
abcdefghijklmnopqrstuvwxyz18
ABCDEFGHIJKLMNOPQRSTUVWXYZ19
abcdefghijklmnopqrstuvwxyz20
ABCDEFGHIJKLMNOPQRSTUVWXYZ21
abcdefghijklmnopqrstuvwxyz22
ABCDEFGHIJKLMNOPQRSTUVWXYZ23
abcdefghijklmnopqrstuvwxyz24
ABCDEFGHIJKLMNOPQRSTUVWXYZ25
abcdefghijklmnopqrstuvwxyz26
ABCDEFGHIJKLMNOPQRSTUVWXYZ27
abcdefghijklmnopqrstuvwxyz28
ABCDEFGHIJKLMNOPQRSTUVWXYZ29
abcdefghijklmnopqrstuvwxyz30
ABCDEFGHIJKLMNOPQRSTUVWXYZ31
abcdefghijklmnopqrstuvwxyz32
ABCDEFGHIJKLMNOPQRSTUVWXYZ33
abcdefghijklmnopqrstuvwxyz34
ABCDEFGHIJKLMNOPQRSTUVWXYZ35
abcdefghijklmnopqrstuvwxyz36
ABCDEFGHIJKLMNOPQRSTUVWXYZ37
abcdefghijklmnopqrstuvwxyz38
ABCDEFGHIJKLMNOPQRSTUVWXYZ39
abcdefghijklmnopqrstuvwxyz40
ABCDEFGHIJKLMNOPQRSTUVWXYZ41
abcdefghijklmnopqrstuvwxyz42
ABCDEFGHIJKLMNOPQRSTUVWXYZ43
abcdefghijklmnopqrstuvwxyz44
ABCDEFGHIJKLMNOPQRSTUVWXYZ45
abcdefghijklmnopqrstuvwxyz46
ABCDEFGHIJKLMNOPQRSTUVWXYZ47
abcdefghijklmnopqrstuvwxyz48
ABCDEFGHIJKLMNOPQRSTUVWXYZ49
abcdefghijklmnopqrstuvwxyz50
ABCDEFGHIJKLMNOPQRSTUVWXYZ51
abcdefghijklmnopqrstuvwxyz52
ABCDEFGHIJKLMNOPQRSTUVWXYZ53
abcdefghijklmnopqrstuvwxyz54
ABCDEFGHIJKLMNOPQRSTUVWXYZ55
abcdefghijklmnopqrstuvwxyz56
ABCDEFGHIJKLMNOPQRSTUVWXYZ57
abcdefghijklmnopqrstuvwxyz58
ABCDEFGHIJKLMNOPQRSTUVWXYZ59
abcdefghijklmnopqrstuvwxyz60
ABCDEFGHIJKLMNOPQRSTUVWXYZ61
abcdefghijklmnopqrstuvwxyz62
ABCDEFGHIJKLMNOPQRSTUVWXYZ63
abcdefghijklmnopqrstuvwxyz64
ABCDEFGHIJKLMNOPQRSTUVWXYZ65
abcdefghijklmnopqrstuvwxyz66
ABCDEFGHIJKLMNOPQRSTUVWXYZ67
abcdefghijklmnopqrstuvwxyz68
ABCDEFGHIJKLMNOPQRSTUVWXYZ69
abcdefghijklmnopqrstuvwxyz70
ABCDEFGHIJKLMNOPQRSTUVWXYZ71
abcdefghijklmnopqrstuvwxyz72
ABCDEFGHIJKLMNOPQRSTUVWXYZ73
abcdefghijklmnopqrstuvwxyz74
ABCDEFGHIJKLMNOPQRSTUVWXYZ75
abcdefghijklmnopqrstuvwxyz76
ABCDEFGHIJKLMNOPQRSTUVWXYZ77
abcdefghijklmnopqrstuvwxyz78
ABCDEFGHIJKLMNOPQRSTUVWXYZ79
abcdefghijklmnopqrstuvwxyz80
ABCDEFGHIJKLMNOPQRSTUVWXYZ81
abcdefghijklmnopqrstuvwxyz82
ABCDEFGHIJKLMNOPQRSTUVWXYZ83
abcdefghijklmnopqrstuvwxyz84
ABCDEFGHIJKLMNOPQRSTUVWXYZ85
abcdefghijklmnopqrstuvwxyz86
ABCDEFGHIJKLMNOPQRSTUVWXYZ87
abcdefghijklmnopqrstuvwxyz88
ABCDEFGHIJKLMNOPQRSTUVWXYZ89
abcdefghijklmnopqrstuvwxyz90
ABCDEFGHIJKLMNOPQRSTUVWXYZ91
abcdefghijklmnopqrstuvwxyz92
ABCDEFGHIJKLMNOPQRSTUVWXYZ93
abcdefghijklmnopqrstuvwxyz94
ABCDEFGHIJKLMNOPQRSTUVWXYZ95
abcdefghijklmnopqrstuvwxyz96
ABCDEFGHIJKLMNOPQRSTUVWXYZ97
abcdefghijklmnopqrstuvwxyz98
ABCDEFGHIJKLMNOPQRSTUVWXYZ99

I see the id was identified, but I don't fully understand the results, as ERAM seems to be implied too. Does it mean the the flash chip is working correctly?

By the way, at the moment it is no possible to play raw files using the AudioPlaySerialflashRaw object of the Audio lib, right?

Thank you.
JF
 
@JotaEfe13
Good morning.

Had me stumped for a little bit. But reading the data sheet for the 256mb chip the key is that it looks like the current version of the library will work with the 256mb flash but you are only going to be able to address 128Mb (half of the chip). Reason is that to access the upper 128mb you have to use the chip's 4byte address mode otherwise it defaults to 3-byte mode which is make it compatible with other serialflash chips:

The W25Q256JV provides two Address Modes that can be used to specify any byte of data in the memory
array. The 3-Byte Address Mode is backward compatible to older generations of serial flash memory that
only support up to 128M-bit data. To address the 256M-bit or more data in 3-Byte Address Mode,
Extended Address Register must be used in addition to the 3-Byte addresses.
4-Byte Address Mode is designed to support Serial Flash Memory devices from 256M-bit to 32G-bit. The
extended Address Register is not necessary when the 4-Byte Address Mode is enabled.
see page 13 of the datasheet.

It is possible to use only 3-byte address mode but you would need to make use of the Extended Address Register:
7.2 Extended Address Register – Volatile Writable Only
In addition to the Status Registers, W25Q256JV provides a volatile Extended Address Register which
consists of the 4th byte of memory address. The Extended Address Register is used only when the device
is operating in the 3-Byte Address Mode (ADS=0). The lower 128Mb memory array (00000000h –
00FFFFFFh) is selected when A24=0, all instructions with 3-Byte addresses will be executed within that
region. When A24=1, the upper 128Mb memory array (01000000h – 01FFFFFFh) will be selected
see page 24.

As for AudioPlaySerialflashRaw looks like this works only for the Flash chips that are set up using standard SPI instructions and not FlexSPI like the Flash Chips on the underside of the T4.1. For example the Flash on the audio board.
 
Status
Not open for further replies.
Back
Top