ESP32 JTAG Debugging can be done through a MicroSD Card Socket

ESP32 JTAG MicroSD Card Adapter

Found in most microcontrollers and processors, JTAG is an industry standard for verifying designs and testing printed circuit boards after manufacture, and that is also often used for low-level debugging or reverse-engineering. Espressif ESP32 also has a JTAG interface, but interestingly it’s shared with the SD card interface, and in ESP32 LyRaT audio development board where both MicroSD card slot and JTAG header are present selection is made by jumpers. The extract from ESP32 LyRaT schematics above shows IO’s 12, 13, 14 and 15 can present on the SD card and 4-pin JTAG header. Some boards may not come with a JTAG header but may feature a MicroSD card slot, but you don’t have to solder wires to the board to access JTAG, and instead, you could simply use a custom MicroSD card adapter to insert into the MicroSD card socket of the board and access JTAG as explained by cibomahto on Twitter. Nice little hardware trick! The photo below …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

MCCI Sells a $795 USB4 Switch for USB4 Product Development

USB4 Switch

The USB4 specification was officially released last September with the new standard promising speeds of up to 40 Gbps and up to 100 Watts power delivery over USB-C connectors. MMCI is now offering a 2:1 USB4 switch, the first computer-controlled USB4 mux according to the company, that can control 1 or 2 products up to 20 Gbps. Model 3141 USB4 Switch is not designed for consumers, as there aren’t any USB4 devices around at this time, but for electronics designers, firmware and software developers to enable them to test & debug their USB4 implementations. MCCI Model 3141 USB4 Switch key features and specifications: USB Specifications/Features USB4 Thunderbolt 3 USB 3.2 gen2 (x2 and x1), gen 1 (x2 and x1) USB 2.0 high speed, full speed, and low speed USB Power Delivery VCONN-powered devices (up to 0.5A) Alternate modes like DisplayPort. 2:1 switch, connecting two USB Type-C receptacles to a single Type-C plug Transparent connection between SUT (System under Test) and …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Raspberry Pi 4 WiFi Fails When Setting HDMI to 2560×1440 Resolution

Raspberry Pi 4 WiFi Fail 2560x1440 Resolution

Enrico Zini was working on a digital signage solution based on Raspberry Pi 4, then he set the video output to 2560×1440, and all hell broke loose. And by that, I mean WiFi stopped working. It was not obvious at first but after a full day of debugging, trying both micro HDMI outputs, different HDMI cables, three different Raspberry Pi boards, different power adapters, Raspbian Buster and Buster Lite, different MicroSD cards… He could reproduce the problem in all conditions, all he needed to do was to set the resolution to 2560×1440, and WiFi would just stop working. Setting the resolution to 2048×1080 or lower, and all WiFi connectivity issues disappeared. He did not test at higher resolutions, and another user reported a similar problem happening at 2.4 GHz, but not at 5 GHz, albeit when setting HDMI output to 1920×1080. So it looks like interference, but as noted by some it’s also surprising because the HDMI port and the …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Fix for Raspberry Pi 4 4GB model’s USB Ports not Working on Ubuntu 19.10

Raspberry Pi 4 4GB RAM Ubuntu 19.10

Ubuntu 19.10 server was recently released with official support for Raspberry Pi 4 SBC. Shortly after I read stories about the USB ports not working on the board, but it took another interesting turn as Canonical now explains the bug only affects RPI 4 with 4GB RAM, and USB works just fine on boards with just 1/2GB RAM. The issue has been identified and it’s been found to be a kernel bug with a solution in the works that being tested. In the meantime, you can access to your Raspberry Pi 4 4GB USB ports by limiting the memory to 3GB in /boot/firmware/usercfg.txt as follows: Alternatively here’s the link to an updated kernel provided by Hui Wang with you want to test it out: I built a testing kernel, not only includes the fix for USB host, but also includes all new patches from https://github.com/raspberrypi/linux.git rpi-5.3.y branch (about 107 patches). I tested both arm64 and armhf kernels on Pi4 without …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

ctxLink Open Hardware WiFi Debug Probe is based Black Magic Probe (Crowdfunding)

ctxlink

Last month, we wrote about Blip nRF52840 dev board that also included an STM32F103 MCU running the open source Black Magic Probe (BMP) firmware for debugging and programming. Based on the original Black Magic Probe hardware product page, BMP is a JTAG and SWD adapter used for programming and debugging ARM Cortex MCUs, and does not require intermediate programs such as OpenOCD or STLink server. Instead, you can run GNU Debugger (GDB) and select the virtual COM port offered by the debug board. The reason I’m bringing BMP again today, is because a new open source hardware wireless debugging probe for Cortex-M based on Black Magic Probe has been launched in the last few days. ctxLink key features and specifications: Microcontroller – STMicro STM32F401RE Arm Cortex -M4F MCU at up to 84 MHz Connectivity – 802.11b/g/n WiFi via Microchip WINC1500 module USB – 1x micro USB port for connection to host computer and/or power Debugging Features Implements SWD and JTAG …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Embedded Linux Conference (ELC) Europe 2019 Schedule – October 28-30

Embedded Linux Conference Europe 2019 Schedule

I may have just written about Linaro Connect San Diego 2019 schedule, but there’s another interesting event that will also take place this fall: the Embedded Linux Conference Europe on  October 28 -30, 2019 in Lyon, France. The full schedule was also published by the Linux Foundation a few days ago, so I’ll create a virtual schedule to see what interesting topics will be addressed during the 3-day event. Monday, October 28 11:30 – 12:05 – Debian and Yocto Project-Based Long-Term Maintenance Approaches for Embedded Products by Kazuhiro Hayashi, Toshiba & Jan Kiszka, Siemens AG In industrial products, 10+ years maintenance is required, including security fixes, reproducible builds, and continuous system updates. Selecting appropriate base systems and tools is necessary for efficient product development. Debian has been applied to industrial products because of its stability, long-term supports, and powerful tools for packages development. The CIP Project, which provides scalable and customizable base image and BSP layers, is now used in …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

PhyWhisperer-USB Python Controlled USB 2.0 Sniffer Enables USB Security Testing (Crowdfunding)

PhyWhisperer-USB is a hardware USB sniffer & triggering platform that allows users to test the security of USB devices using side-channel power analysis and fault injection using a Python 3 interface, beside simply capturing packets. This has become especially important now as some USB devices include Bitcoin Wallets, FIDO2 keys, and encrypted drives with valuable data. PhyWhisperer-USB hardware specifications: FPGA – Xilinx Spartan 7S15 with 12,800 logic cells USB USB 2.0 Low/Full/High Speed mode PC connection – Micro-USB 2.0 HS port Host connection – Micro-USB port Target connection – USB-A female connector Trigger pattern – 1 – 64 bytes with mask Trigger delay – 0 – 1048576‬ cycles of 240 MHz internal clock derived from USB clock USB sniffer FIFO – 8192 bytes (FPGA block RAM, adjustable depending on FPGA utilization) Expansion – Spare digital I/O: 8 data pins, 1 clock pin routed to FPGA (on front panel) Clock output – 60 MHz Target Power Source – Selectable: Host USB …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linaro Connect San Diego 2019 Schedule – IoT, AI, Optimizations, Compilers and More

Linaro Connect San Diego 2019

Linaro has recently released the full schedule of Linaro Connect San Diego 2019 that will take place on  September 23-27. Even if you can’t attend, it’s always interested to check out the schedule to find out what interesting work is done on Arm Linux, Zephyr OS, and so on. So I’ve created my own virtual schedule with some of the most relevant and interesting sessions of the five-day event. Monday, September 23 14:00 – 14:25 – SAN19-101 Thermal Governors: How to pick the right one by Keerthy Jagadeesh, Software Engineer, Texas Instruments With higher Gigahertz and multiple cores packed in a SoC the need for thermal management for Arm based SoCs gets more and more critical. Thermal governors that define the policy for thermal management play a pivotal role in ensuring thermal safety of the device. Choosing the right one ensures the device performs optimally with in the thermal budget. In this presentation Keerthy Jagadeesh, co-maintainer of TI BANDGAP AND …

Support CNX Software – Donate via PayPal or become a Patron on Patreon