Frank,
I have a question for RTB2000 owners. I'm not quite sure what is possible with the pattern generator and the "Draw" function, I can't really find anything about it in the manual.
The Arbitrary Pattern is described in the
(online) manual of the RTB2004.
I attach a few screen prints below, so you get an idea for its workings.
There are four physical output pins, and you can use these to send out pre-coded protocol samples (I2C, CAN, SPI, etc) as well as a counter (upward or downward) and arbitrary patterns as well (Screenshot S1).
Concerning the latter, you can draw these by hand (pointing each bit with your finger on the touch screen) or enter the word value (like ‘F’ for ‘1111’) in a hexadecimal input field. Patterns can contain up to 2028 four-bit values. (Screenshot S2). You can set the time length of individual bits, and the period of the overall pattern, and you can also define bursts with idle time between patterns (Screenshot S3).
In Screenshot S4, you see the pattern generator settings and at the same time the resulting signals coming in via the analogue four channels of the scope.
The pattern can be saved (internally or to a USB stick) to an ‘*.SCP’ file format. For the example pattern in the screen shot, the saved file looks like this:
:PGEN:FUNC ARB
:PGEN:PATT:ARB:DATA 1,11,9,8,0,5,2,15,12,0
:PGEN:PATT:ARB:DATA:LENGTH 1.000000e+01
:PGEN:PATT:BURS:STAT 1.000000e+00
:PGEN:PATT:ITIM 2.500000e-01
:PGEN:PATT:BURS:NCYC 4.096000e+03
:PGEN:PATT:STIM 1.000000e-05
:PGEN:PATT:STAT 1.000000e+00
In the second line, you can clearly see the values in the example in the screen print.
OK, that was the fun part. Now as the for a more critical side reflection:
1. Every arbitrary patterns I save from the scope fails to load later on. Trying to load them, the instrument hangs and needs to be restarted. I wonder whether other users have the same experience?
2. In the data sheet, Rohde and Schwarz say:
Waveform and pattern generator
The integrated R&S®RTB-B6 waveform and pattern generator (up to 50 Mbit/s) is useful for educational purposes and for implementing prototype hardware. Apart from the common sine, square/pulse, ramp and noise waveforms, it outputs arbitrary waveforms and 4-bit signal patterns. Waveforms and patterns can be imported as CSV files or copied from oscilloscope waveforms. Before playing signals back, the user can preview them to quickly check signal correctness. Predefined patterns for e.g. I2C, SPI, UART and CAN/LIN can be used.
Data Sheet Version 06.00, page 8; emphasis added.
But I never managed to import CSV files, however. I can import CSV files for reference waveforms and for (one channel) function generator waveforms, but
not for the arbitrary pattern generator. That one only ‘*.SCP’ files. If anyone managed do do this, please let me know?
So, bottom line, having a scope that can output up to 4 lines at the same time is nice. You can output simple hand-made patterns as well as some predefined patterns for I2C, SPI, UART and CAN/LIN. But there are no build-in, ready-made tools to easily create your own I2C or other serial protocols. If you are very patient, you may be able to do so with the arbitrary waveform generator (generating the whole pattern and timing yourself). But the above issues may be serious restrictions in order to create, edit, save and load these (preferably also using an external device).
Depending on your user cases, I guess there mjst be better options to create I2C master signals. Perhaps simply with an Arduino (and using the RTB to monitor them, which it does really well!) may be a better option?
(Also note that the arbitrary pattern function is part of the “Signal Generation Option R&S RTB-B6”, You need to order that separately, or get the version of the RTB scope with full software options included.)
Different than the above may suggest, I really think the RTB is a fantastic instrument and I never regretted my purchase a single second. It can do a lot of things, and do them really well. But generating your own I2C signals is not one of them.