Analyse Arduino Uno Bootloader with MSO64B

I created a photo montage below showing how to use a mixed signal oscilloscope as a logic analyzer. 

First, I establish a UART bus by connecting the analog probes to the Rx/Tx pins on the Uno board. This setup allows me to monitor the data transfer between the board and the IDE. 

Then, I use the scope’s “data rate” measure option to find the boot loader baud rate 115,200. 

Alternatively the baud rate can be found in boards.txt file.

Extract from {ide}/hardware/Arduino/avr/boards.txt

uno.upload.tool=avrdude
uno.upload.protocol=arduino
uno.upload.maximum_size=32256
uno.upload.maximum_data_size=2048
uno.upload.speed=115200

Then, I set up my scope’s single event trigger options to capture all transferred data – about 2.5 seconds. 

Finally, I use the bus table to navigate the captured waveform and digital data. In this case, at the beginning, where the board and IDE exchange handshake information starts.

The RS-232 decoder bus for Tektronix MSO6 series oscilloscopes can use two analog scope channels. I found this to be a great combination of detail and flexibility

References:

Author: Ron Fredericks

Ron Fredericks is a research technologist focused on aqueous computing methodologies. He is available for consulting projects. His client success stories include improved productivity within research labs, hands-on electronics, MATLAB scripting, python applications, WordPress plugins, optics bench demonstrations, and leadership in technical marketing. His awards include being co-author of record for two biophysics patents, technical and leadership awards for embedded systems from Mentor Graphics and Wind River, and being recognized as a technology educator by Adobe.

Leave a Reply

Your email address will not be published. Required fields are marked *