Posts

Showing posts from 2013

nmake: Installing PyQt In Windows 7 with Visual Studio .NET 2010

For those of you interested in pursuing Python development involving a front-end GUI made from Qt, and don't know how to get started on Windows 7, this is what you need to do.  This could generalize to any software you might wish to install with the "nmake" tool, which allows you to "configure", "make", and "make install" different software packages in much the same way you would on a Linux box.

My setup:

Windows 7 machineWindows 7.0 APIs installed (C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A)Microsoft Visual C++ 2010 Ultimate (will hopefully work with Express too)First, for our specific purpose, download and install Qt if you haven't done that already.  It'll take so long that you ought to have plenty of time to run the next step (building SIP) in parallel and still have time to play at least a couple rounds of solitaire.
In general, before you build from any Makefile in Windows, download and unzip your sources into a known loc…

Livin' La Vida SSD

The other day, I upgraded my laptop's hard drive from a 500GB 7200rpm drive to a 500GB Samsung 840 EVO solid-state drive.  I purchased the SSD from Newegg.com for $290.00 (which is probably the most I've paid for a drive since 2007), and after taking about a week to get packaged by their warehouse and UPS taking their sweet time to get it over here, it finally came time for me to clone the contents of my HDD over to my SSD.

The performance of my HDD had been dismal, especially as it became more full of Heaven knows what.  (This is still an issue, hence why I recently downloaded Mark Russinovich's "du" program for Windows, so I could analyze which directories contained the biggest wastes of space.)  As you'll see if you watch the video, it took over seven minutes for my computer to become responsive enough to be useful after a cold boot.  Windows itself took a real long time to spin up, then it took even longer for my desktop icons to come up so I could actuall…

I'm a Loser... (of Data on Hard Drives!)

I started getting good at building computers in 9th grade, and throughout high school, I had lots of fun constantly upgrading and improving my "big rig" to have more hard drive space than anyone else in the neighborhood.  By 2005, I was well on my way to 2 terabytes of space, and I now have approximately 20 hard drives ranging from 100GB to 2TB in size, and with both SATA & PATA (IDE) interfaces.  (This doesn't count all the really old <5GB drives I used to play with while I was busting my chops.)

Anyone who's taken a probability class with a focus on electrical engineering knows of a little statistic that works against me and anyone else who owns a large number of hard drives: this statistic is called "Mean Time Between Failure" (MTBF).  In short, the more hard drives you own, the more likely any one of them will fail on a given day.  Well, over the last 16 years, I've had a fair share of failures:

1997 - Laptop hard drive2006 - Power surge on my …

Ben Stein wasn't the first...

Those of you who have followed Win Ben Stein's Money at all may recall that time back on July 1, 1998 when a contestant finally managed to defeat Ben Stein and get a perfect 10 score on the bonus round, thus prompting Ben & Jimmy to drop their trousers.  However, you may not have heard about another instance over 20 years prior when the pants-dropping bug bit Pat Sajak on Wheel of Fortune!

While I've been meaning to post this clip for a very long time (and it appears someone did in fact beat me to the punch with a very brief 7-second clip of it), a Facebook thread prompted me to finally take action, dust off the ol' DVD collection, and spin this one up to rekindle its glory and a piece of the Internet's ever-wandering attention.

The year was 1987, Black Monday was about to hit the stock market, Microsoft released Windows 2.0, and to start its fifth season in syndication, the producers of Wheel decided to lose the shopping round format and have the players spin strict…

Presenting at the Perot Museum

Honestly I've been forgetting to post here lately; had a lot of company at the house keeping me distracted!  Plus, the work on the LEDgoes project & some other extracurriculars have been keeping me rather busy.  One such extracurricular is a series of interactive demonstrations displayed in conjunction with the Dallas Makerspace at the Perot Museum in downtown Dallas tomorrow, 10/4/2013.

I'm showing off the DecorreLab project (that I wrote about here previously) at the museum, and am hoping to inspire and engage a bunch of people with some really neat psychoacoustic effects in person.  (I might want to study up on some of the psychoacoustic theories in the meantime!)  Some of the other DMS members are also working on displays driven by a Makey Makey, allowing museum-goers to tap on various fruits and conductive non-Newtonian fluids in order to get a laptop to play sounds.  The third display (that lots of DMS members took videos of while we were building it) is non-Newtonia…

Creepy Facebook Ads: How Do They Work?

First, it's been a long time since I've been over here!  The LEDgoes Kickstarter has been keeping me quite busy, and I've been focusing most of my attention on that the past several weeks.  We raised our funding goal in about 9 hours, and currently stand at almost 800% funded.  However, it takes me at least a couple hours just to write these blog posts, and usually by the time I sit down on Thursdays to start writing them, I'd really rather be doing something else.  (I don't know how influencers balance their time doing vs. their time writing... maybe they have staff?)

And just another brief aside: today, my samples from Texas Instruments arrived!  I ordered a CC3000 WiFi chip and several USB transceivers including the TUSB1105.  Clearly I thought it'd be fun to build my very own mobile device from the ground up. :-P  As much as these chips cost me nothing, they're also ridiculously small and hard to solder since they're in a QFN package -- tiny chips wi…

My New Kickstarter: LEDgoes, a Modular Scrolling LED Matrix

Image
Well, this is big news!  LEDgoes, my modular scrolling LED matrix system, is finally being put on Kickstarter.  Check out the product here and learn more!  (The Kickstarter isn't live yet because it's still awaiting approval; I'll post the link here when it's ready.)

Why is this cool?

Most LED matrices are fixed-width panels; ours is made from smaller panel modules you can push together to make your own desired size, up to 64 panels long.Because you snap the modules together, you can make a bendy LED display.This kit does 3 colors; most DIY kits can only show 1 color.It has an open, simplistic serial interface implemented in firmware, and very versatile software that can drive the firmware to scroll a message from various sources or even show animations.  The software could even help you break the 64-panel limit.The software can control a display consisting of multiple rows of panels in order to display bigger, taller letters.  In this case, each row could have up to 64 …

Trials & Tribulations with the ATmega168

Image
I created a board design for some hardware that involves two ATmega chips in TQFP form.  TQFP stands for Thin Quad Flat Package, and is basically on the larger end of the surface-mount chips (but still way smaller than chips in DIP form).  Whether you use ATmega328 or ATmega168 chips on this board is irrelevant until you start talking about large quantities, in which the 168 will spare a great deal of production costs.  What this hardware does is irrelevant for now (though you will find out soon enough), but I wanted to share my experiences trying to get this board and its chips to work in exactly the way I intended.  It was very difficult, for some reason, to get the 168s to cooperate with me, while the 328s worked with no trouble at all.

My Board Design, with ATmega168s and SMD resistors (all soldered on by hand by Yours Truly, who doesn't even have all that much soldering experience :-P)
The Problem?
One of my product requirements is that users can upgrade the firmware on the chip…

DFW Restaurant Week 2013 Listing in Open Data Format

Residents of the Dallas-Fort Worth area can, as of this past Monday, begin making reservations at any of a number of area restaurants participating in DFW Restaurant Week 2013.  The choices are astounding; there are 131 restaurants to choose from between Weatherford and Rockwall, and from Denton down to Balch Springs.

However, given the way the data is presented on most of these websites, how are you supposed to make heads or tails of it?  The restaurants are often listed in tabular form, complete with obscure pictures & color codes to tell you what days these restaurants will be offering what kinds of services and specials.  Not only that, but not everyone knows exactly where every single avenue and alley these restaurants are on, so it might be easy for you to miss out on restaurants near you.

To rectify this, I am opening up access to a JSON dataset of all the restaurants participating in DFW Restaurant Week 2013.  You can download the dataset at http://www.headonout.com/dfw-rest…

VGA Monitor Output from an Arduino

Image
One of the coolest things about programming on a platform for the first time is making something graphical or somehow otherwise tangible to the eye.  Terminal apps generally aren't very exciting because they're just text, but making an application with its own window & graphics is much more exciting for the beginner.  If it's a microcontroller, making that LED blink is a first big step toward future fun.  However, there is a lot more to do when it comes to making graphical output from microcontrollers -- output on 7-segment displays, an LED matrix, LCD touchscreens, or the pinnacle & mainstay of computer displays -- the monitor.
Having taken a class in FPGA design and becoming fascinated with video output without needing an operating system, I decided to look into what it'd take to use the Arduino to produce VGA output.  It turns out the hardware requirements can be somewhat hard to come by these days: A nice, old, tolerant CRT monitor -- my LCD monitors won…