Talk:Beaglebone Spectrum Analyzer
Decided to take a stab at making a quick-hack mockup of a spectrum analyzer using a Beaglebone and and rtlsdr DVB-T dongle. Must be ready by Saturday morning for a presentation I am giving at the 2013 Danish Winter VHF meeting.
To begin with I will be using the default Beaglebone demo image available from the download site, namely Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.05-beaglebone-2012.11.22.img.xz. The application software will be built using:
- Gtk+ for a simple GUI
The spectrum analyzer is working, see photo.
Som info and benchmarks for this completely unoptimized image:
- Automatically starts the application on boot.
- Startup time is somewhere around 2 minutes (from power on till application is running).
- CPU load is around 30% when doing 20 frames per second.
Used the spectrum analyzer mock-up for demo during my SDR talk at the 2013 Danish winter VHF meeting. It was very well received and people were very interested. There has also been a lot of positive reaction on Twitter.
Trying to build a custom image based on cloud9-gfx-image.bb and cloud9-image.bb.
Image successfully built and it boots in 6.3 seconds, see system-analyze output.
Gtk+ libraries are installed, not the devpacks. Same for libusb and ncurses. Git, gcc and pkg-config are installed as well. RTL dongle does not work well with this build (copied binary from other disk built using different version of the libraries).
Trying demo GNOME 2 image again, this time using a class 10 SD card (I was using class 4 previously).
Reduced autologin delay from 10 to 1 second.
Application is running within 45 seconds after poweron:
root@beaglebone:~# systemd-analyze Startup finished in 4784ms (kernel) + 7389ms (userspace) = 12174ms root@beaglebone:~# systemd-analyze blame 3583ms pvr-init.service 2166ms cape.service 1984ms connman.service 1958ms avahi-daemon.service 1932ms systemd-logind.service 1353ms xinetd.service 804ms console-kit-daemon.service 616ms console-kit-log-system-start.service 461ms udev-trigger.service 455ms systemd-modules-load.service 266ms systemd-remount-api-vfs.service 253ms dev-mqueue.mount 172ms dbus.service 164ms systemd-sysctl.service 159ms udev.service 130ms tmp.mount 129ms systemd-user-sessions.service 123ms sys-kernel-debug.mount 74ms systemd-tmpfiles-setup.service 39ms remount-rootfs.service root@beaglebone:~#
So, about 30 seconds are wasted on GDM and GNOME startup.
After a complete opkg upgrade gdm is no longer started :o)
I can still start the spectrum anaylzer by:
$ ssh root@beaglebone $ xinit rtlizer
Had to modify rtlizer to no longer enter full screen mode as there is no WM. We read WxH from command line and use 320x240 if nothing is specified.