Bootterm – a developer-friendly serial terminal program

There are plenty of terminal programs to access the serial console from minicom or screen to Putty. But Willy Tarreau was not quite happy with those tools, so he decided to write his own: Bootterm. I was terribly fed up with the current state of serial terminals, which either don’t cope well with errors, or take ages to start, making you lose the first characters, or don’t support non-standard speeds etc. I finally wrote mine to address all that at once, plus support for automatic port detection (the last registered one is the good one by default), waiting for the port to be ready, and also support fixed or timed captures. And a few environment variables make it possible not to type any argument at all yet have the expected behavior. If that’s something of interest to you, you can check it there: https://github.com/wtarreau/bootterm It’s still young (no support for automatic speed switching nor macros yet) but pretty usable, and […]

Ollie USB board exposes isolated UART, CAN, USB, RS485 & RS232 interfaces (crowdfunding)

Ollie USB board

Just like months, we wrote about Tigard open-source USB FT2232H board for hardware hacking with easy access to OpenOCD, JTAG, Cortex, flashrom interfaces used to debug/flash boards, extra I/Os with UART, SPI, and I2C, as well as a header to connect a logic analyzer and observe signals. If the board does not exactly match your requirements, Ollie USB board might, also it may not serve exactly the same purpose(s). The board acts as a USB bridge to isolated UART (x2), CAN, USB, RS485, and RS232 interfaces. Ollie specifications: MCU – STMicro STM32F042 Arm Cortex-M0 microcontroller with CAN interface Host interface – Micro USB port Isolated interfaces (all with ESD protection) 2x UART ports up to 12 Mbps with 1.8/3.3/5 V voltage levels (set by slide switch) CAN bus based on CANable/CANtact open hardware, flashed with dual firmware CANtact and Candlelight (switch selectable) and equipped with termination resistor switch Downstream USB – USB Type-A connector up to 12 Mbps; current limited […]

Tigard is an open-source FT2232H board for hardware hacking (Crowdfunding)

Tigard FT2232H board hardware hacking

There is plenty of cheap 5V or 3.3V USB to TTL debug boards used to access the serial console and/or program boards, but FTDI FT2232H based Tigard open-source hardware board does much more than that as it supports multiple protocols, multiple voltages for hardware hacking & debugging. The developer explains Tigard can be used as a drop-in replacement for dozens of other hardware tools based on FTDI chips and includes native support OpenOCD, FlashROM, and more. Tigard board specifications: Main chip – FTDI FT2232HQ dual high-speed USB to multi-purpose UART/FIFO IC Primary port dedicated to UART including access to all flow control signals Secondary port shared among dedicated headers for SWD, JTAG, SPI, and I²C USB – USB 2.0 Type-C (480 Mbps) port I/Os 9-pin UART header Qwiic I2C connector 8-pin SPI & I2C header 8-pin JTAG header 10-pin Cortex debug header 14-pin logic analyzer (LA) header to observe device-level signals Directional level-shifters for 1.8 to 5.5 V operation Misc […]

Nordic Semi nRF52 WiSoCs are Susceptible to Debug Resurrection using APProtect Bypass

nRF52 APProtect

Nordic Semi nRF52 are popular wireless Cortex-M4 SoCs with Bluetooth 5.0 and 802.15.4 radios. APProtect (Access Port Protection) is a new security feature of nRF52 MCUs designed to enable readback protection and disable the debug interface. This is supposed to prevent an attacker to obtain a copy of the firmware that would allow him/her to start the reverse engineering process or access some sensitive data such as keys and passwords. It’s all good, except “LimitedResults” managed to bypass APProtect and permanently resurrect the debug interface on nRF52840-DK and a Bluetooth mouse. This requires physical access to the hardware and relies on a fault injection technique. The APProtect background and hacking technique are all explained in detail on LimitedResults blog post, but basically he first had to remove some capacitors and use a low-cost homemade voltage glitching system combines with an oscilloscope to try to locate a particular pattern into the power consumption. The goal was to find when the User […]

Getting Started with Qoitech Otii Developer Tool using ESP8266 and Raspberry Pi 4 Boards

Qoitech Otii Arc Raspberry Pi 4

Last month, I received Qoitech Otii Arc power supply, power meter, and DAQ unit that aims at helping hardware and software engineers develop energy-efficient products. I’ve now had time to test the unit with an ESP8266 board and Raspberry Pi 4 SBC, so I’ll show how to get started and my overall experience with the hardware and program. Requirements and Initial Setup The unit takes a 9V power supply or micro USB adapter as power input, but power output is done through banana plugs. I did not have any cables with banana plugs so I bought one on eBay for about $5 shipped. This cable is really convenient with output to USB (female connector), crocodile clips, and hook clips. However, as we’ll see below it may not be suitable for all types of loads, and you may have to make your own with a higher rated cable. You’ll need to download Otii program available for Windows 10 / 7 64-bit, […]

A First Look at Otii Arc Power Supply, Power Meter, and DAQ Unit

Otii Arc

I have recently been contacted by a Swedish company called Qoitech about their Otii solution that aims to help hardware and software engineers achieve long battery life for their IoT devices or apps. At the heart of Otii is Otii Arc hardware that acts as a power supply, voltage and current meter, and data acquisition (DAQ) unit. The company has now sent me a unit for review. I’ll start with a first quick post describing the device and checking out the hardware and interfaces, before writing my experience, or a getting started guide, with Otti hardware and software. Otii Arc specifications: Current/Voltage Measurement Current Accuracy – ±(0.1% + 50 nA) Sample Rate – in ±19 mA range:  4 ksps;  in ±2.7 A range: 1 ksps;  in 0 – 5 A range: 1 ksps Analog Bandwidth (3dB) –  400 Hz Voltage Total accuracy –  ±(0.1% + 1.5 mV) Sample Rate –  1 ksps 14-pin DAQ Interface UART – 110 bps to […]

MikroElektronika Launches Fusion for ARM & EasyPic MCU Development Boards

fusion for arm

During Embedded World 2020 (EW2020), some companies withdrew their presence, while some were at the event. MikroElektronika presented several new boards and among them Fusion for ARM v8 and EasyPic v8 development boards. While we already wrote about Fusion fo TIVA, we haven’t covered any EasyPic board yet. Development boards from MikroElektronika allow rapid prototyping in the most efficient and effortless way. Fusion for ARM v8 Fusion for ARM v8 belongs to the Fusion family of development boards. It has integrated the world’s first embedded debugger/programmer over WiFi, while the CODEGRIP WiFi license is available as an add-on feature. The board is designed to be used in almost every environment retaining full debugging and programming access. The CODEGRIP currently supports more than 1600 microcontrollers from different vendors. The Fusion board integrates a new MCU card standard. It is a low profile standard where sockets consist of two connectors (male/female) which prevents the wrong insertion. The MCU card has standardized dimensions […]

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 […]