Tag Archives: Electronics

bladeRF enclosure – made from laser cut acrylic

I made an enclosure for my bladeRF board from laser-cut acrylic (also known as “Perspex”). This is the first time I experimented with custom laser cutting. The laser cutting service is provided by SeeedStudio. I’m very pleased with the result, see photos below.

bladeRF acrylic enclosure

bladeRF acrylic enclosure

The acrylic used is 2.55 mm thick. The PCB is mounted to the bottom plate using eight M2.5 hex spacers. The top plate and the bottom plate are held together by four M4 hex posts.

Laser-cut acrylic is good for making a prototype enclosure. It is quick and easy to design. It requires no effort in producing them. It also has a nice distinctive look.

ViewRF software – RTL-SDR Spectrum Analyzer for BeagleBone Black

In my previous blog entry I demonstrated my RTL-SDR based spectrum analyzer running on the BeagleBone Black (BBB) with a 7-inch touchscreen LCD.

In this entry I’ve provided instructions on how you can run this software on your own BeagleBone. I’ve released the software – ViewRF – under the GPL license. You can download the source code hosted on GitHub.

The hardware you need (other than the BeagleBone itself) is the RTL2832U based DVB-T (digital TV) USB dongle. See RTL-SDR wiki for a list of supported hardware. I’ve tested the software with dongles based on the Elonics E4000 tuner and also the Rafael Micro R820T tuner. These dongles are available from various online shops.

The software has been designed to run on a 800×480 resolution screen, ie the resolution of the 7 inch LCD cape.

Instructions:

  1. Download and unzip (using 7-zip) this microSD image:
    Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.12-beaglebone-2013.06.20.img.xz. Then copy this unzipped image using Win32 Disk Imager to a microSD card.
  2. Insert the microSD card to your BBB and power it on.
  3. After you are logged in, open a terminal, then disable X Windows autostart using the command:
    systemctl disable gdm
  4. Reboot:
    /sbin/shutdown -r now
  5. At the console, login as root, then calibrate the touchscreen
    ts_calibrate
  6. Install these Angstrom packages:
    opkg update
    opkg install qt4-embedded --force-depends
    opkg install libqtsvge-dev --force-depends
    opkg install libqtguie-dev --force-depends
    opkg install qt4-embedded-dev --force-depends
  7. Set the following environment variables:
    export OE_QMAKE_CXX=/usr/bin/gcc
    export OE_QMAKE_CXX=/usr/bin/g++
    export OE_QMAKE_LINK=/usr/bin/gcc
    export OE_QMAKE_INCDIR_QT=/usr/include/qtopia
    export OE_QMAKE_MOC=/usr/bin/moc
  8. Download, compile and install QWT:
    wget http://jaist.dl.sourceforge.net/project/qwt/qwt/6.1.0/qwt-6.1.0.tar.bz2
    tar -xjvf qwt-6.1.0.tar.bz2
    cd qwt-6.1.0

    Edit qwtconfig.pri, remove QwtOpenGL, QwtDesigner
    Edit ./src/src.pro, change TARGET to:
    TARGET = $$qwtLibraryTarget(qwt$$QT_LIBINFIX)
    Continue with the compilation process:
    qmake
    make
    make install
  9. Download, compile and install RTL-SDR library:
    cd
    git clone git://git.osmocom.org/rtl-sdr.git
    cd rtl-sdr
    autoreconf -i
    ./configure --enable-driver-detach
    make
    make install
    make install-udev-rules
  10. Edit /etc/profile, add the line:
    export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/qwt-6.1.0/lib
  11. Edit /etc/profile.d/qte.sh, if using touchscreen add the line:
    export QWS_MOUSE_PROTO=LinuxInput:/dev/input/touchscreen0
    or if using a mouse, add the line:
    export QWS_MOUSE_PROTO=MouseMan:/dev/psaux
    Logout, then log back in again.
  12. Download and run ViewRF software
    cd
    git clone git://github.com/stephenong/ViewRF.git
    cd ViewRF
  13. To run the pre-built binary (don’t run the git checkout command if you are building from source)
    git checkout 9b4d425331
    ./ViewRF -qws

I hope this software is useful to you. Let me know what you do with it. Feel free to donate :), link on the sidebar.

Demonstration of my Spectrum Analyzer project

A demonstration of my Spectrum Analyzer project built using the Beaglebone Black and a USB DVB-T digital television receiver. The receiver is based on Realtek RTL2832U accessed using RTL-SDR library. The demonstration shows the RF spectrum of various sources.

UPDATE:
If you are interested in this project, I’ll be releasing the application and source code in GitHub so you can build your own. Probably in a month or two, or sooner, or later.
You can now run this software – ViewRF – on your own hardware. See http://robotics.ong.id.au/2013/08/25/viewrf-rtl-sdr-spectrum-analyzer-for-bbb-software/

Seeed Studio DSO nano oscilloscope review

I just received my Seeed Studio DSO nano oscilloscope.

I had difficulty justifying the purchase of this oscilloscope, as I had doubts on its usefulness and performance. However, the unit has such cool form factor that I just had to have it. The oscilloscope is modestly priced at USD $89. I justified buying it because, if for some reason the oscilloscope is not usable, then I still can use it as an ARM STM32 development board (Hey, this is the same CPU that powers Hexi’s locomotion engine).

DSO nano

The DSO nano is really small

Continue reading