Thanks to visit codestin.com
Credit goes to qsantos.fr

Quentin Santos

Obsessed with computers since 2002

I have always been fascinated with computers. Nowadays, I mostly use Rust, but I started out with a QuickBASIC book from the local library when I was in elementary school. I also got a Master in computer science from ENSL and a PhD in cryptography from ENS.

Contact me at [email protected].

Latest articles

  • (No) alternatives to the RP2350-USB-A
    Following my adventures (part 1, part 2) with the RP2350-USB-A, I took another look at the alternatives. Specifically, I am looking for a cheap dev board with two full USB ports (1 device, 1 host), that could be easily programmable, and would be production-ready for hobbyist projects (if you’re a professional, you’ll just manufacture your own board). First, I want to clarify that strikes out the boards that expose UART-over-USB as one of the two USB ports, such as the Arduino Due, or the ESP32-S3-DevKitC. In these cases, the MCU (MicroController Unit) only supports USB, but also has UART for… Read more: (No) alternatives to the RP2350-USB-A
  • The RP2350-USB-A cannot see devices disconnect
    What’s better for New Year’s Eve than debugging some USB hardware issues? In my previous article, I explained how the design of Waveshare’s RP2350-USB-A can make the USB-A host connector incapable of detecting certain USB devices, and of any hot-plugging. The solution was to desolder R13, a pull-up resistor on D+: With this fix, my RP2350-USB-A was able to detect when I connected a keyboard to the USB-A port, and to receive keypresses. However, I noticed another issue: when disconnecting the keyboard, the board would not detect that it happened. When connecting the keyboard again, it would often not work… Read more: The RP2350-USB-A cannot see devices disconnect
  • Fixing the RP2350-USB-A not working as USB host
    tl;dr: you need to desolder R13, the resistor closest the pin 6 of the board, as indicated by the red arrow in the cover picture of this article Context I am currently toying around with emulating a USB device. However, I also wanted to be able to plug a keyboard in, so I needed a second USB port. Since I am not at the stage where I would design my own boards, I only use dev boards. I found exactly what I needed for my purposes with the RP2350-USB-A: It is still relatively cheap at ~5 €, features a USB-C port… Read more: Fixing the RP2350-USB-A not working as USB host
  • The serial TX path seems to be down
    The previous series of articles about UART was initially motivated by an error I was getting when using the ESP-Prog. I could have jumped straight to the conclusion, but I took the time to really understand what was going on, and we are finally reaching the end of this investigation. Connecting to “real” UART again I already used the ESP-Prog in previous articles, but this part was written before any of them, so it goes back to some fundamentals. The main change from the first article is that we will be using the ESP-Prog (~13 € on AliExpress) instead of any… Read more: The serial TX path seems to be down
  • Transistors in reverse and redundant circuits
    The mystery In the previous article, I briefly mentioned a slight difference between the ESP-Prog and the reproduced circuit, when it comes to EN: Focusing on EN, it looks like the voltage level goes back to 3.3V much faster on the ESP-Prog than on the breadboard circuit. The grid is horizontally spaced at 2ms, so it takes about 0.8ms for the breadboard circuit to cross 2V, and about 0.2ms for the ESP-Prog. Zooming in I actually noticed this when observing the behavior of the breadboard circuit with my oscilloscope when trigering a reboot into bootloader mode. This uses the same… Read more: Transistors in reverse and redundant circuits

All articles