Small ESP32 Modul ( all include in new ESP32-PICO )

playflash
Posts: 3
Joined: Sat Nov 18, 2017 9:16 am

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby playflash » Thu Nov 23, 2017 8:38 am

Please note that PICO and D2WD are not supported in combination with PSRAM yet:
https://github.com/espressif/esp-idf/bl ... #L480-L489
Thank you, then I am thinking to use ESP32-D0WD with PSRAM32 instead.

User avatar
rudi ;-)
Posts: 1246
Joined: Fri Nov 13, 2015 3:25 pm

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby rudi ;-) » Sun Dec 10, 2017 2:17 am

Please note that PICO and D2WD are not supported in combination with PSRAM yet:
https://github.com/espressif/esp-idf/bl ... #L480-L489
hi ivan,
you mean in the combine with SIP / D2WD (Rev0) and heap allocation right?
cause malloc_psram works.

btw, is this a "typo" with the swapping

great job 3.0 RC1!!!

best wishes
rudi ;-)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

User avatar
rudi ;-)
Posts: 1246
Joined: Fri Nov 13, 2015 3:25 pm

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby rudi ;-) » Sun Dec 10, 2017 2:46 pm

thanks for updating
revised_v1.0_31.08.2017.png
ESP32-PICO-D4 datasheet V1.0 from 31. August 2017
esp32-pico-d4_datasheet_en_V1.0_vom_31.08.2017.pdf
src now online again

best wishes
rudi ;-)
Hi, rudi,
I must say you did a great job here.
So, an External PSRAM work with these two chips.
- D2WD
- PICO
Can you tell me what PSRAM you tested? And where to buy them if you know?
It is pity that espressif didn't put a PSRAM in PICO.
Thank you very much.
https://esp32.com/viewtopic.php?f=13&t= ... =30#p10095

best wishes
rudi ;-)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

User avatar
rudi ;-)
Posts: 1246
Joined: Fri Nov 13, 2015 3:25 pm

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby rudi ;-) » Tue Jan 02, 2018 10:37 pm

So PICO samples are rev0 but will all production PICO have rev1?

hi WiFive,
happy new year!

FYI: the hello world test app says:
Pico D4 ( 382017 ) on PICO KIT V4 is Rev1

best wishes
rudi ;-)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

WiFive
Posts: 2048
Joined: Tue Dec 01, 2015 7:35 am

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby WiFive » Wed Jan 03, 2018 12:05 am

So PICO samples are rev0 but will all production PICO have rev1?

hi WiFive,
happy new year!

FYI: the hello world test app says:
Pico D4 ( 382017 ) on PICO KIT V4 is Rev1

best wishes
rudi ;-)
Thanks for info. Happy New Year!

User avatar
seonroz
Posts: 37
Joined: Thu Oct 25, 2018 3:51 am
Location: Melbourne, Australia
Contact:

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby seonroz » Thu Oct 25, 2018 4:28 am

Hey Rudi.. I'd like to revive this thread!

Firstly, thanks for all of your work on getting PSRAM working on the PICO-D4!

I have a board that I have designed (TinyPICO - http://tinypico.com ) that I am trying to get PSRAM working with.

What are the final pin mappings you used for rev1 silicon?

I'm using MicroPython - using logoris psram branch
https://github.com/loboris/MicroPython_ ... D/firmware

And I am using the Lyontek LY68L6400SLIT
https://lcsc.com/product-detail/RAM_Lyo ... 61881.html

I have tried the following 2 variations of pin assignments, but neither work (psram not found - see boot log below)

CE# - GPIO16
SIO1 - Default SD0
SIO2 - Default SD3
VSS - GND
VCC - 3.3V off the regulator
SIO3 - Default SD2
SCLK - GPIO17
SIO0 - Default SD1

and

CE# - GPIO16
SIO1 - Default SD1
SIO2 - Default SD2
VSS - GND
VCC - 3.3V off the regulator
SIO3 - Default SD3
SCLK - GPIO17
SIO0 - Default SD0

But I always get the following...
Image

So has there been any further developments on this? Is there anything more you can share on pinouts etc?

Thanks in advance

Seon
http://unexpectedmaker.com
Seon
unexpectedmaker.com

User avatar
loboris
Posts: 461
Joined: Wed Dec 21, 2016 7:40 pm

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby loboris » Thu Oct 25, 2018 8:27 am

You have to modify the esp-idf/components/esp32/spiram_psram.c, (I'll do it in the next MicroPython repository update), to enable psRAM initialization for ESP32-PICO-D4 and rebuild the firmware.
See this for instructions.

The correct pin mapping should be like this (latest response from esp-idf team).

User avatar
seonroz
Posts: 37
Joined: Thu Oct 25, 2018 3:51 am
Location: Melbourne, Australia
Contact:

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby seonroz » Thu Oct 25, 2018 9:08 am

You have to modify the esp-idf/components/esp32/spiram_psram.c, (I'll do it in the next MicroPython repository update), to enable psRAM initialization for ESP32-PICO-D4 and rebuild the firmware.
See this for instructions.

The correct pin mapping should be like this (latest response from esp-idf team).
Oh that's fantastic news, thanks Boris.

I've clearly gotten the pin mappings wrong, which is an easy fix, but knowing the firmware was blocking me anyway makes me feel a little "less stupid" :-)

Cheers,

Seon
unexpectedmaker.com
Seon
unexpectedmaker.com

User avatar
seonroz
Posts: 37
Joined: Thu Oct 25, 2018 3:51 am
Location: Melbourne, Australia
Contact:

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby seonroz » Tue Oct 30, 2018 1:45 am

Ok, both @Matty and I have lost days on this...

I cloned the latest PSRAM MicroPython stuff from loboris as per these instructions
https://github.com/loboris/MicroPython_ ... wiki/build

I've mod'd the spiram_psram.c and removed the early fail for PICOD4, so it continues to initialise SPIRAM
I've setup sdkconfig to use spiram and use as heap alloc like loboris instructions
I've wired up some Lyontek SPIRAM in various combinations - the pin definitions across all of the code/schematics/hardware are completely inconsistent :)

I get a hard crash when trying to boot my PICO-KIT

I (902) boot: Loaded app from partition at offset 0x10000
I (902) boot: Disabling RNG early entropy source...
D (902) boot: Mapping segment 0 as IROM
D (906) boot: Mapping segment 5 as DROM
D (910) boot: calling set_cache_and_start_app
D (915) boot: configure drom and irom and start
D (919) boot: start: 0x400816ac
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC : 0x40083587 PS : 0x00060b30 A0 : 0x800843f8 A1 : 0x3ffe3bc0
A2 : 0xc00fffff A3 : 0xffffffff A4 : 0x00013ffc A5 : 0x00000000
A6 : 0x000008ff A7 : 0x3ffe3b19 A8 : 0x80083510 A9 : 0x3ffe3ba0
A10 : 0x00000000 A11 : 0x3ff42000 A12 : 0x00000034 A13 : 0x00000000
A14 : 0x00000000 A15 : 0x00000004 SAR : 0x00000017 EXCCAUSE: 0x0000001c
EXCVADDR: 0xffffffff LBEG : 0x4009bb90 LEND : 0x4009bb9b LCOUNT : 0x00000000

Backtrace: 0x40083587:0x3ffe3bc0 0x400843f5:0x3ffe3be0 0x400d3fa9:0x3ffe3c10 0x4008171a:0x3ffe3c30 0x400791b6:0x3ffe3c50 0x400792ad:0x3ffe3c80 0x400792cb:0x3ffe3cc0 0x4007967f:0x3ffe3ce0 0x40080391:0x3ffe3df0 0x40007c31:0x3ffe3eb0 0x4000073d:0x3ffe3f20

CPU halted.


I have the SPIRAM on a breakout board with a 0.1uF cap across VCC + GND

VCC is connected to 3V on the PICO-KIT and I've tried pretty much every combo of connecting everything, including not connecting SIO[2] and SIO[3] as they should not be needed for SPI operation mode I believe, but have tried with and without.

Either the board hangs on boot from here "D (xxx) boot: start: 0x400816ac" - or it crashes as per above.

I'm using the PICO-KIT to confirm correct wiring before I commit to another TinyPICO revision with wrong pins connected, but I just cant get it working.

NOTE: I've NOT tried re-mapping pins in spiram_psram.c as that's just a bad idea... I want TinyPICO to be compatible with PICO boards.

Anyone with any ideas?

Thanks

Seon
unexpectedmaker.com
Seon
unexpectedmaker.com

User avatar
loboris
Posts: 461
Joined: Wed Dec 21, 2016 7:40 pm

Re: Small ESP32 Modul ( all include in new ESP32-PICO )

Postby loboris » Tue Oct 30, 2018 9:47 am

NOTE: I've NOT tried re-mapping pins in spiram_psram.c as that's just a bad idea... I want TinyPICO to be compatible with PICO boards.
I think you must remap the pins, otherwise the psRAM driver will try to use the wrong pins for psRAM and it will not work...
Conditional defines should probably be used in final spiram_psram.c for psSRAM with PICO.
For example, on ESP32-PICO-D4 GPIO17 is used for Flash/psRAM IO1, on other ESP32 chips for Flash CLK. Other pins are connected differently too.
Hopefully this will be supported officially soon...

Who is online

Users browsing this forum: Google [Bot] and 15 guests