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

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

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

Postby seonroz » Sun Nov 04, 2018 9:32 pm

rudi ;-) wrote:
boot2.jpg
have a nice week start my friend!


greetings fly out to friends all over the globe

done!

best wishes
rudi ;-)
Morning rudi!

Woah, AWESOME job! So what ram is that?

Cheers,

Seon
unexpectedmaker.com
Seon
unexpectedmaker.com

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

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

Postby seonroz » Sun Nov 04, 2018 9:36 pm

Hey rudi, Can I get a hi-res shot of a close up around the PSRAM? I can't see what you did about 10k pull-up or any decoupling caps.

The images you posted are hard to see, thanks :-)

Thanks
Last edited by seonroz on Sun Nov 04, 2018 9:53 pm, edited 1 time in total.
Seon
unexpectedmaker.com

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

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

Postby rudi ;-) » Sun Nov 04, 2018 9:40 pm

seonroz wrote:Hey rudi, Can I get a hi-res shot of a close up around the PSRAM? I can't see what you did about 10k pull-up or any decoupling caps.

The images you posted are hard to see, thanks :-)

Thanks

Seon
unexpectedmaker.com
yes will upload next time
the 10k pull up is sitting at the psram in this mod
and connected to Vcc (8) and CS#(1) pin of pSRAM
Vcc(8) pin goes to Vcc 3.3V
CS#(1) pin goes to IO9

i did not use in this decoupling caps - but you can use one between Vcc(8) and GND(4) directly on the pSRAM.


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

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

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

Postby seonroz » Sun Nov 04, 2018 9:44 pm

rudi ;-) wrote:
seonroz wrote:Hey rudi, Can I get a hi-res shot of a close up around the PSRAM? I can't see what you did about 10k pull-up or any decoupling caps.

The images you posted are hard to see, thanks :-)

Thanks

Seon
unexpectedmaker.com
yes will upload next time
the 10k pull up is sitting at the psram in this mod
and connected to Vcc (8) and CS#(1) pin of pSRAM
Vcc(8) pin goes to Vcc 3.3V
CS#(1) pin goes to IO9

i did not use in this decoupling caps - but you can use one between Vcc(8) and GND(4) directly on the pSRAM.


best wishes
rudi ;-)
Thanks, I thought I could see a resistor there, just wanted to make sure.
Last edited by seonroz on Sun Nov 04, 2018 9:53 pm, edited 1 time in total.
Seon
unexpectedmaker.com

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

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

Postby rudi ;-) » Sun Nov 04, 2018 9:46 pm

Edit:
i did upload the 8MB Pic now because of server discharge
if there is a problem with the view let me know, then i will upload the pic again to esp32.com

(simple click on the pic or load it i a new browser window, then comes the 8MB Pic again)
Image
Last edited by rudi ;-) on Tue Nov 06, 2018 11:47 am, edited 4 times in total.
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

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

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

Postby seonroz » Sun Nov 04, 2018 9:55 pm

rudi ;-) wrote:
detail_pullup.png
Great shot! Thanks rudi!

I might try again today to make a smaller adapter.

Cheers,
Seon
unexpectedmaker.com

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

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

Postby rudi ;-) » Sun Nov 04, 2018 11:00 pm

seonroz wrote: ..So what ram is that?
Seon, in this i used Lyontek LY68L6400SL (64Mbit / 3.3V )
the IPUS must work too cause it is the same silicon and only repacked. if i find a time window this week, i will repeat the doing with IPUS, not sure i can do this this week but will try.
so i did on sunday that you have it on monday morning :) for a better week start :mrgreen:

btw:
the psram is very stable and sturdy.
so I have the 1.8v psram several times on 3.3v "accidentally" in operation, it had taken no damage. In the long run you should not do that.
You have a nice adapter for the IPUS, try on the back of the Pico board for experimental purposes, a socket and hold the wires short, so short it works.

don't forget to edit the esp-idf spiram_psram.c file

you can create a Kconfig file and put it in the main folder:
menuconfig then select the Pico-D4-Board, and the config choice will setup the right pins
in spiram_psram.c

Kconfig example:

Code: Select all

menuconfig PSRAMMODULES
    bool "PSRAMMODUL"
    default n
    help
        Select this option to enable a PSRAMMODUL.

choice PSRAMMODUL_SELECT
    prompt "Select the ESP_PSRAM_MODUL you want used for PSRAM"
   default CONFIG_PSRAM_PICO_D4_V4
   depends on PSRAMMODULES
   help
      PSRAM_WROVER          Wrover Modul (all)
      PSRAM_PICO_D4_V4      PICO D4 V4 Modul

      You can select here a Modul you want use for PSRAM.

config PSRAM_WROVER
    bool "WROVER Modul (all)"
    help
        Select this: Wrover Modul (all)

config PSRAM_PICO_D4_V4
    bool "PICO D4 V4"
    help
        Select this: PICO D4 V4 Modul

endchoice
example change in spiram_psram.c

Code: Select all

// PICOD4 Support by custom change
// see customer rudi 29.August 2017
// https://www.esp32.com/viewtopic.php?f=2&t=2713&start=30#p13380
// proposal to do:
// change for menuconfig work later to set the right esp32 modul
// or let it do this auto mode by chip package identify
// comes later as patch
#ifdef CONFIG_PSRAM_PICO_D4_V4
#define PICO 1
#endif
#ifdef CONFIG_PSRAM_WROVER
#define WROVER 1
#endif

#ifdef PICO
#define FLASH_CLK_IO       6 //Psram clock is a delayed version of this in 40MHz mode
#define FLASH_CS_IO       16 // 11
#define PSRAM_CLK_IO      10 // 17
#define PSRAM_CS_IO        9 // 16
#define PSRAM_SPIQ_IO     17 // 7
#define PSRAM_SPID_IO      8
#define PSRAM_SPIWP_IO     7 // 10
#define PSRAM_SPIHD_IO    11 // 9
#endif
#ifdef WROVER
#define FLASH_CLK_IO       6 //Psram clock is a delayed version of this in 40MHz mode
#define FLASH_CS_IO       11
#define PSRAM_CLK_IO      17
#define PSRAM_CS_IO       16
#define PSRAM_SPIQ_IO     7
#define PSRAM_SPID_IO     8
#define PSRAM_SPIWP_IO    10
#define PSRAM_SPIHD_IO    9
#endif
and last but not least,
edit the chippack check

Code: Select all

//psram gpio init , different working frequency we have different solutions
esp_err_t IRAM_ATTR psram_enable(psram_cache_mode_t mode, psram_vaddr_mode_t vaddrmode)   //psram init
{
    uint32_t chip_ver = REG_GET_FIELD(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_VER_PKG);
    uint32_t pkg_ver = chip_ver & 0x7;
    if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32D2WDQ5) {
        ESP_EARLY_LOGE(TAG, "ESP32D2WD do not support psram yet");
        return ESP_FAIL;
    } else if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD2) {
        ESP_EARLY_LOGE(TAG, "ESP32PICOD2 do not support psram yet");
        return ESP_FAIL;
    } else if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4) {
        // ESP_EARLY_LOGE(TAG, "ESP32PICOD4  do not support psram yet");
      ESP_EARLY_LOGE(TAG, "ESP32PICOD4  Nice to see this here now Yeah ;-)");
        // return ESP_FAIL;
    }
( i thinked i did create this post - but i think - did forget to send it )

best wishes
rudi ;-)

now 11:55 PM here
good night :)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

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

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

Postby seonroz » Wed Nov 07, 2018 6:09 am

Ok, I finally got PSRAM working on y PICO-KIT... even using Dupont connecters (I know, a stupid idea) but I only have 1 PICO-KIT and didn't want to solder directly to it.

So I am SUPER relieved about that - and big thanks to rudi for all of your info and posting all of your steps.

BUT... One thing that is troubling though is the clock signal I am getting from GPIO10 on the PICO-KIT.

This is what the CLK looks like... this is with NO RAM attached.. just with the probe on GPIO10.
Image

And just for reference, this is my probe calibration...
Image

That looks like a terrible CLK signal.. that can't be right can it?

My scope is a Siglent 1204X-E 200mHz.

Cheers,
Seon
unexpectedmaker.com

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

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

Postby rudi ;-) » Wed Nov 07, 2018 1:07 pm

hi seon,

nice live vid - did watch from begin to end :)
"please write the color to the pins on paper so you need not think over how to connect each time on reconnect"
you did never follows :mrgreen:

your clk sig is a desaster :? - > look here :)

Image

remember me on RMII clk , and the good final i had a very bad gnd on my rigol and did share the 50Mhz clk to 3 measuring points. to much impedanz on the connect bridges, too.

- look at the Rigol - there was no gnd connected ever :)
- look at the corner right, a desaster on connectings at GND...
( had learn many mistakes from me in this theme)

Image

one problem further i had was 3 different version of rtc_plla blob lib to the theme RMII , but now all is working very fine after a HW mod on a manufacturer board :)

@Frank_Sautter did then make a nice hack on waveshare LANto the clk on the shared pin btw.

so i remember me here too on the fiasco for sharings things on clk and gpio pins and so on too,
but all was solved :) like yours in live stream... yeah .. so

back to the main theme :lol: :lol: ( wanted not review all the last 3 years from this forum postings ) ... :roll:
..
be sure you captured not the start clk initialization, there are 2 clk sigs at same time, one on flash clk ( FCLK ) and the other on pSRAM clk ( IO10 ).

btw "double check" for some reason the rules for high speed on pcb if you think the tracert on pcb rev5 could be been one tick better. Fig 4 is interesting point example.

best wishes
rudi ;-)

edit: files src's
link
and
link
Attachments
high-speed-printed-circuit-board-layout.pdf
(153.34 KiB) Downloaded 786 times
scaa082a.pdf
High-Speed Layout Guidelines
(762.23 KiB) Downloaded 854 times
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

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

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

Postby seonroz » Wed Nov 21, 2018 8:32 pm

Hi Everyone,

I just got back from Shenzhen on Sunday with my rev5 PCBs in hand, so I built one and TADA! PSRAM working like a champ!

I'm so glad I got past this little hurdle, and wanted to thank everyone here for your help and support on this Tiny journey ;)

rudi made an image from my LiveStream yesterday where I was showing it off... thanks rudi ;-)

Image

I've just sent off a rev6 PCB for manufacturing with 2 final little tweaks, and then TinyPICO is done and I start the journey of "how am I going to manufacture them" ;)
Seon
unexpectedmaker.com

Who is online

Users browsing this forum: Bing [Bot] and 186 guests