Testing some "Chain Blocks" and demonstrate an XY Plotter block (with an MCP42010 digital potentiometer) by drawing the PrexLab logo on an Oscilloscope.
My neighbour is developing a prototyping system called Chain Blocks by PrexLab, and passed me some to try out. Disclaimer: at no charge.
Chain Blocks sit somewhere on the continuum of ideas that are trying to make electronics more approachable especially for novices:
- the "building block" approach, perhaps exemplified by littlebits. These require no electronics or coding backgound.
- the standard Shield/Cape/Hat approach and a miscellany or modules that can be directly wired to the microcontroller development board. These are moderately approachable by beginners but require some electronics to be learned along the way, and you must be ready to code
- kit-assisted breadboard prototyping, like shrimping.it
- and beyond that we get into standard protoboard/breadboarding techniques for those willing to dive head-first into electronics as a hobby
I started with a "Chain Nano block with one application block". I turned the application block into an "XY Plotter Block".
For a test, I decided to make an XY plotter block, based on the LEAP#265 XYplotter project.
It uses an MCP42010 dual digital potentiometer to draw images on an oscilloscope.
ChainBlocks.ino is a test sketch that draws "PrexLab" on a scope.
The Python script make_data.py is used to interpolate plotting points over the fundamental text structure. It generates the data.h used by the ChainBlocks.ino sketch:
python make_data.py > data.h
The sketch produces the image below. I'm using a Hantek MSO5074FG oscilloscope, and the image was captured with the following settings:
- XY plot mode
- 0.2s persistence
- display as vectors
- average over 4 samples
- CH1/X and CH2/Y offset to position the image
The time-domain plot for the generated output is like this:
- Chain Blocks - product site
- PrexLab - facebook
- LEAP#265 XYplotter - the scope XY plotting project
- ..as mentioned on my blog