The Digilent Inc. “Embedded Linux® Hands-on Tutorial for the ZYBO” is available from the Digilent website in PDF format (revision July 17, 2014). Another version of the tutorial is available on instructables.com. The tutorial attempts to get you through quite some steps. A little extra help is sometimes needed to have success. This post will document my findings for future use.
The notes below have been made while going through the tutorial with Xilinx Vivado 2014.4 on an Ubuntu 14.10 64-bit install. The Xilinx SDK is required as part of the Vivado package. Note that both Vivado and the SDK have dedicated settings files (e.g. settings64.sh), which need to be sourced both to set the required environment variables. Continue reading
The Instrument of Things project shows how to extend your custom electrical instruments with industry-standard capabilities for remote control via a TCP/IP interface. The WIZnet WIZ550io module is used to enable a basic web server, a portmap service, and a server for the remote control of the instrument using the VXI-11 communications protocol. The ultimate goal for the Instrument of Things is to easily add the VXI-11 communications protocol and LAN eXtensions for Instruments (LXI) technology to any electrical instrument project.
This library has been written to support the Maxim MAX11210 24-bit A/D converter as peripheral of the Spark module. Spark libraries can be used in the Spark IDE.
The code snippet below shows how to add the high resolution A/D converter to the example for measuring the temperature.
The Spark Core is a tiny module with ARM Cortex M3 micro-controller and Wi-Fi interface. These devices will be connect with the Spark Cloud service for firmware updates and remote control. A limited amount of pins on the module can be used for analog and digital signals. The firmware of the Spark Core can be programmed, compiled and uploaded using the Spark Web IDE.
The following code is for a Spark Core installed on the Spark relay shield. All relays are controlled using a single function. Up to four functions are currently supported by Spark. The status of the four relays can be read through a single variable.
Several sites are using the TilePic image format to show sections of a larger image. The TilePic file format contains the image data for a limited number of resolutions (zoom levels) and all image parts (tiles) have the same dimensions. The first level contains the full image scaled to a single tile. The second level could contain 4 tiles of the same size, each containing a quarter of the image data at twice the resolution of the first level. The third level then contains 4 tiles for each tile of the second level, resulting in a total of 16 tiles for the full image. The advantage of the TilePic format is that the client only needs to download the specific tiles for the shown part of the image from the level with the correct resolution. The websites usually provide zoom and scroll functions to magnify a part of the image.
This page will present some projects with my Rigol scope. For now, just a remark on the first firmware update I received (00.00.01 to 00.01.01). The procedure stresses to update the firmware with a blank screen. The steps to get to this boot screen are according to the procedure to:
- “Press the power on button on the front panel of the instrument. All of the buttons will light.”
- “Repeatedly press the Help key on the front panel. All of the buttons will unlight.”
- “The Single light will illuminate.”
Instead of the step-by-step instruction given by Rigol, the trick is to press and release the ‘Help’ button during the one second all LEDs on the scope are on after pressing the power button. If you wait for all of the buttons to light, you are too late. If you have to press the Help key repeatedly, you are too late. The boot procedure of the scope should stop before the Rigol logo is shown and the ‘SINGLE’ button should be lit. The rest is like a walk in the park.
The update procedure for the most recent firmware updates (00.02.01.00.03 and 00.03.00.01.03) confirm the above. It’s disappointing though to see that some more obvious bugs in the firmware itself still have not been fixed yet.
There have been reports on a hack of the DS2072 to increase the bandwidth from 70 MHz to 200 MHz and unlock all features. I might consider this in the near future, when the timers of the evaluation period have stopped and the warranty period of my scope has ended.
Recently I have ordered a FT2232HQ mini-module from the webshop of Future Technology Devices Ltd. for use in an ongoing project with a Xilinx Spartan FPGA. In addition, I ordered a DLP-TH1b data acquisition module as a working application of a FTDI USB UART to play around with. Unfortunately, the source code for Linux systems on the website of DLP Design did not work at all. Opening the black sensor box revealed a Sensirion SHT11 humidity and temperature sensor. The source code has been changed a little using the datasheet of this device and the D2xx programmer’s guide of FTDI. My version is available for download using this link: dlp_th1b.tar.gz.
On request, the script to download and reconstruct TilePic images was modified for Windows users in a quick and dirty way. The requirements for using the script are installed versions of ImageMagick and wget for Windows. Place the following code in a text file, adjust the first two lines to point to the TilePic image and the locations of the installed programs, and change the extension of the filename to .bat to make it an executable script. The script will download all tiles with the highest resolution data. It can take several minutes to append all rows of tiles to make the final image, so be patient.
Several sites are using the Tilepic image format to show sections of a larger image. The Tilepic file format contains the image data for a limited number of resolutions (levels) and all image parts (tiles) have the same dimensions. The first level contains the full image scaled to a single tile. The second level could contain 4 tiles of the same size, each containing a quarter of the image data at twice the resolution of the first level. The third level then contains 4 tiles for each tile of the second level, resulting in a total of 16 tiles for the full image. The advantage of the Tilepic format is that the client only needs to download the specific tiles for the shown part of the image from the level with the correct resolution. The websites usually provide zoom and scroll functions to magnify a part of the image.
Downloading the high-resolution image from the Tilepic file requires some knowledge on the location of the file on the server. This information can be found in the source code of the webpage and may for example be /photo/tilepic/image.tjp. The following script will download all tiles from all levels of the Tilepic image defined by $file.
Some time ago I have been playing around with the Solid Works 3D CAD design software. The idea was to fully model a Heckler & Koch USP Expert 9mm gun by taking accurate measurements from the real deal and to use this CAD model in an animation movie. The two screen dumps below show the design of the slide is almost completed.