abdulsamad.zahir
Member
Hi Everybody,
I've got a custom board that's based on Teensy 3.2 design, but the device wouldn't be recognized when connected using USB port to PC. There's a workaround that we've found after a lot of head-scratching, but it still doesn't reveal the real reason behind the issue. So, I'm sharing the necessary schematics here for a potential solution.
Here are the details.
There are two boards stacked on top of each other similar to shields. I'll refer to the stacked boards as module. The bottom board contains MK20, MKL02, on/off controller, as well as the RESET switch and other components. The top board contains the USB connection and a power switch to switch the device on/off among other components. The two boards are connected to each other using headers. The schematics attached show how the mentioned connections.
The header connections and required soldering were done at factory and then they were sent to us. When the batch arrived, I connected the boards, but none of them were detected by PC. I've checked the cable and it's a data cable allowing code to be uploaded; I've also used other cables, but to no avail. I tried pressing the RESET button, tried to switch the device on/off using power button, and tried combinations of RESET/power switch, but nothing helped. We went through the threads in this forum and tried different alternatives, but it wasn't helping. We did find a temporary fix though.
After a while, we found an alternative which consisted of detaching the boards, cutting a USB cable and soldering the wires to the bottom board using VUSB, DN, DP, and GND connections. We didn't opt for this option initially because detaching the boards needs soldering and the boards are a little fragile. Surprisingly, after detaching the two boards, the board was recognized and code was uploaded successfully. Mind you that while the top board was stacked on top of the first board the board was not recognized even though the USB wires were soldered to the mentioned pins. However, after the first upload, I de-soldered the USB cables from the pins, stacked the top board on the bottom board and connected the module to PC using USB connection and everything went normally: the board was recognized and any code uploads would go normally.
This is quite surprising since we've used teensy 3.2 before without having any issues of this sorts. More surprisingly, it looks like it's a problem that is eliminated after the first code upload.
Has anyone come across such a problem before? Any ideas as why this is happening?
https://www.dropbox.com/s/xuf38ojkqkelqv1/MCP73833.jpg?dl=0
https://www.dropbox.com/s/7lv0l2piygtz8kj/MK20-MKL02-USB.jpg?dl=0
https://www.dropbox.com/s/xfrgmvh8yqmthpw/STM6600-TPS73733-Headers.jpg?dl=0
I've got a custom board that's based on Teensy 3.2 design, but the device wouldn't be recognized when connected using USB port to PC. There's a workaround that we've found after a lot of head-scratching, but it still doesn't reveal the real reason behind the issue. So, I'm sharing the necessary schematics here for a potential solution.
Here are the details.
There are two boards stacked on top of each other similar to shields. I'll refer to the stacked boards as module. The bottom board contains MK20, MKL02, on/off controller, as well as the RESET switch and other components. The top board contains the USB connection and a power switch to switch the device on/off among other components. The two boards are connected to each other using headers. The schematics attached show how the mentioned connections.
The header connections and required soldering were done at factory and then they were sent to us. When the batch arrived, I connected the boards, but none of them were detected by PC. I've checked the cable and it's a data cable allowing code to be uploaded; I've also used other cables, but to no avail. I tried pressing the RESET button, tried to switch the device on/off using power button, and tried combinations of RESET/power switch, but nothing helped. We went through the threads in this forum and tried different alternatives, but it wasn't helping. We did find a temporary fix though.
After a while, we found an alternative which consisted of detaching the boards, cutting a USB cable and soldering the wires to the bottom board using VUSB, DN, DP, and GND connections. We didn't opt for this option initially because detaching the boards needs soldering and the boards are a little fragile. Surprisingly, after detaching the two boards, the board was recognized and code was uploaded successfully. Mind you that while the top board was stacked on top of the first board the board was not recognized even though the USB wires were soldered to the mentioned pins. However, after the first upload, I de-soldered the USB cables from the pins, stacked the top board on the bottom board and connected the module to PC using USB connection and everything went normally: the board was recognized and any code uploads would go normally.
This is quite surprising since we've used teensy 3.2 before without having any issues of this sorts. More surprisingly, it looks like it's a problem that is eliminated after the first code upload.
Has anyone come across such a problem before? Any ideas as why this is happening?
https://www.dropbox.com/s/xuf38ojkqkelqv1/MCP73833.jpg?dl=0
https://www.dropbox.com/s/7lv0l2piygtz8kj/MK20-MKL02-USB.jpg?dl=0
https://www.dropbox.com/s/xfrgmvh8yqmthpw/STM6600-TPS73733-Headers.jpg?dl=0