Call to arms | Teensy + WiFi = true

Hmm, all I get is this:

Code:
16:04:31.288 -> CPU speed: 600 MHz
16:04:31.288 -> ===========================
16:04:31.288 -> CYW4343W Card::begin: SDIO2
16:04:31.288 -> ===========================
16:04:31.288 -> Attaching OOB interrupt to pin 29
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> CMD52 failed
16:04:31.482 -> BUS_IORDY_REG (Ready indication) returned 0
16:04:31.482 -> initialization failed!
16:04:31.482 -> Setup complete
16:04:31.482 ->
16:04:31.482 ->
16:04:31.482 -> ====== STARTING SCAN ======

Also, that happens regardless of whether I change WL_REG_ON and WL_IRQ pins.
Looks like we have some more work ahead of us. I have spent the last two days stepping through the PICO 2W initialization process and most of it is similar to the CYW4343W. Will probably need to start at the beginning diagnosing with my LA...
 
Gotcha, thanks for the clarification! Would like to know what was done to test both chips, I'd love to do the same to prove that there's no hardware problems before shipping the boards out.
 
As far as the CYW4343W (1DX) chip check out post #117 in this thread. I explained to @gigapod what was done with the 1DX chip up till now. I did not have access to the 1YN board for testing. So can't comment on what others may have developed with that board...
EDIT: Just to be clear I used a logic analyzer that decodes the SDIO protocol to check the status of the CYW4343W chip...
 
Update: Setup to compile and run the picowi library on the PICO 2W. It uses an SPI interface instead of the SDIO interface we use with T41. The SPI initialization is similar to the SDIO initialization after the low level hardware setup is done. Looking at other SDIO systems initialization, it looks similar to ours starting with loading the firmware. There are differences between the 1DX and 1YN setup. Nothing major though.
Done with this for now...
 
Update: Setup to compile and run the picowi library on the PICO 2W. It uses an SPI interface instead of the SDIO interface we use with T41. The SPI initialization is similar to the SDIO initialization after the low level hardware setup is done. Looking at other SDIO systems initialization, it looks similar to ours starting with loading the firmware. There are differences between the 1DX and 1YN setup. Nothing major though.
Done with this for now...
Nice job - anxious to try it out - hope it all works with the hardware.
🤞
 
@mjs513 - Just to be clear, I have not created the driver yet because I need a CYW43439 board setup to use SDIO. The PICO 2W uses SPI 1 wire comms. Hopefully we will have a board available soon to work with or even better a verified working version :D
 
@mjs513 - Just to be clear, I have not created the driver yet because I need a CYW43439 board setup to use SDIO. The PICO 2W uses SPI 1 wire comms. Hopefully we will have a board available soon to work with or even better a verified working version :D
Understood. But using the PICO 2W as a test to understand the driver is half the battle. It sounds like once you get the real board to test with it should go alot faster than you would have if you were starting from scratch. Probably should have be a little less excited. :)
 
Great news, the prototypes are working!

Apologies for my long delay, I've been out sick for over a week. Finally back in the office and working on this again.

Long story short, the chip was populated backwards!

1785865660790.png


After reworking one board, the scan example was able to correctly identify the ID as seen in the snippet below! The rest of the code fails, which is expected, but it at least proves the Teensy can talk with the chip!

Code:
11:43:41.921 -> CPU speed: 600 MHz
11:43:41.921 -> ===========================
11:43:41.921 -> CYW4343W Card::begin: SDIO2
11:43:41.921 -> ===========================
11:43:41.921 -> Attaching OOB interrupt to pin 29
11:43:42.113 -> Enabled CYW4343W bus high speed interface
11:43:42.113 -> BUS_IORDY_REG (Ready indication) returned OK
11:43:42.113 -> SDHC bus set to 4-bit, speed set to 33MHz
11:43:42.113 -> Backplane Window set to 0x18000000
11:43:42.113 -> *************
11:43:42.113 -> CardID: 43439
11:43:42.113 -> *************

I also like what y'all are doing with a Pico W, so I grabbed one as well and wired it up. I'm very familiar with MicroPython, so I changed the pin definitions and am able to prove that the antenna also works with a WiFi scan:

1785866645704.jpeg


Code:
>>> import network
>>> wlan = network.WLAN()
>>> wlan.active(True)
>>> scan_results = wlan.scan()
>>> len(scan_results)
18
>>> scan_results[0]
(b'sparkfun-guest', b'\xe6c\xda%p|', 1, -54, 0, 2)

I will go through each board and verify they're all working, then ship these out to folks. I'll follow up with tracking info individually once I have it!
 
@defragster - I do plan to integrate the 1YN device into my current 1DX version of QNEthernet until @shawn has his version up and running. There are drivers out in the wild that accommodate both the 1YN and 1DX WiFI devices. They just use a simple define to select which chip to setup and use.
Just like @defragster my prototype is supposed to show up tomorrow and then I can start stepping through the init portion of the code with the appropriate firmware, NVRAM and CLM code.
You don't suppose it will be a slam dunk do you? Who knows :unsure:
 
You don't suppose it will be a slam dunk do you
Seems you've done it before - I have faith in you :) And should be able to test whatever you can post.

In the end the old unit won't matter I suppose - though mine is still sitting here. Though I did wire Serial 1&2 together to test some code yesterday for @KenHahn.

Will find out tomorrow if we got a bare WiFi SparkFun board or one built onto a fresh T_4.1?
 
Back
Top