Hi, I'm with a problem during the blink example wi...
# sky130
h
Hi, I'm with a problem during the blink example with my MPW5 board. @jeffdi @Tim Edwards When I use the caravel Nucleo Board + STM Nucleo Board, I get:
Success: Found one matching FTDI device at <ftdi://ftdi:232>h:1:d/1
Caravel data:
mfg        = ffff
product    = ff
project ID = ffffffff
Resetting Flash...
status = 0x00
JEDEC = b'000000'
Winbond SRAM not found
But when I use just the Caravel Nucleo (unplugging the STM Nucleo Board), I get:
Success: Found one matching FTDI device at <ftdi://ftdi:232>h:1:e/1
Caravel data:
mfg        = 0456
product    = 11
project ID = 00051890
Resetting Flash...
status = 0x00
JEDEC = b'ef4016'
Erasing chip...
done
status = 0x0
setting address to 0x0
addr 0x0: flash page write successful
addr 0x100: flash page write successful
addr 0x200: flash page write successful
addr 0x300: flash page write successful
addr 0x400: flash page write successful
addr 0x500: flash page write successful
addr 0x600: flash page write successful
addr 0x700: flash page write successful
total_bytes = 2048
status reg_1 = 0x0
status reg_2 = 0x2
************************************
verifying...
************************************
status reg_1 = 0x0
status reg_2 = 0x2
setting address to 0x0
addr 0x0: *** read compare FAILED ***
b'6f00000b13000000130000001300000013000000130000001300000013000000232e11fe232c51fe232a61fe232871fe2326a1fe2324b1fe2322c1fe2320d1fe232ee1fc232cf1fc232a01fd232811fd2326c1fd2324d1fd2322e1fd2320f1fd130101fcef0000118320c1038322810303234103832301030325c1028325810203264102832601020327c101832781010328410183280101032ec100832e8100032f4100832f0100130101047300203013010040170500001305c5f67310553013050000930500001706000013068673630cb500832606002320d50013054500130646006ff0dffe13050000930580006308b50023200500130545006ff05fff'
<----->
t
I have to go back and refresh my memory on the Nucleo board setup. But I know that as soon as you plug the Nucleo board in, the Nucleo takes control of the chip, so the only way to communicate with the board is through the Nucleo's micropython interface. The code in the
utils/
directory only applies to the board running in standalone mode (which works okay for flashing the part, but has issues with configuring the GPIOs, which is why we have the Nucleo board).
h
So, should I use the Nucleo without the STM32 board to run the blink example?
t
For MPW-2 through MPW-5, if you use the Caravel Nucleo hat board standalone, you are likely not to get a correct GPIO configuration. The Nucleo board is programmed to run a calibration step that determines how to best attempt to get a workable configuration programmed into the GPIO. It will program the flash accordingly. If you then remove the hat from the Nucleo board, there are enough differences in power supply voltages that the configuration is unlikely to work; even ambient temperature changes can cause the configuration to fail. This is not to say that it will necessarily fail if you run the Caravel board standalone, but from experience, I have not had much luck doing that.
h
Got it, so I have this
Winbond SRAM not found
. I've been looking in the Caravel Issues and this slack, but any consistent solution. Some suggestion?
I changed the USB cable of the STM32 Nucleo Board to a higher quality one and it works.