Electronic Logbook

I’ve been on a crusade this year to rid myself of paper.  Evernote has replaced my notebooks, Penultimate my scribbles, and google tasks my to-do lists.  So when I began filling out another line in my logbook after a recent flight, I decided it would be the last.  After all, I already had a excel sheet of my hours, and the advantages of a digital format were already apparent: no more running out of space in the comments section, and good riddance to those pesky math errors or mistaken handwriting.

A brief search and comparison of the free and paid offerings available led me to Flightlogg.in.  This is a web-based electronic logbook that is completely free, refreshingly flexible and packed with some great features to take advantage of all the data you can supply about your flights.  The interface looks reassuringly similar to the classic logbook you’re familiar with already:

Flightlog.in main page

My first 50 flights on the Flightlog.in main page (click to enlarge)

Because I was already starting to keep my hours in an excel file, I was able to import the data with minimal additional editing required.  Once in Flightlog.in, that data is not locked away in some proprietary system as in many other applications – you can import and export to an excel-compatible CSV file at any time, and backups are sent to your email as frequently as every single day if you so wish.  You can customize the columns that are displayed, edit an entire block of entries at once, and choose from a number of privacy settings that relate to some of the social features available.  If you’d like to swap your stats with other pilots and work towards one of several achievements, this can be enabled.  For instance, because I have flown 5 distinct aircraft types at some point in my past, I rank a level 2 in the “Type Master” category.  I still need to make it out to several more airports before reaching the 50 required for the next level of “Explorer.”  Some couldn’t care less about achievements, but I think they’re a fun addition.

Flightlog.in also keeps track of your currency, as well as progress towards your next certification:

It goes all the way to ATP, but my progress there was quite pathetic.

It goes all the way to ATP, but my progress there was quite pathetic.

One of my favorite features is the ability to make tables or graphs of almost any combination of data you can think of.  You can use this to quickly access how many hours you flew in the past year, or the amount of experience you have in a given type of aircraft:

Many options / combinations available to generate tables

Many options / combinations available to generate tables or graphs

Finally, Flightlog.in automatically maps your flights on google maps, and measures the distance of each leg, providing a great visual representation of the places you’ve been, and offering ideas of areas yet to be explored.

Oh the places you'll go

Oh the places you’ll go

Category: Flying | Tags: , ,

Space Heater Controlled by Z-Wave Thermostat

A Case Study in Home Automation

In lieu of actually writing a more comprehensive post about my foray into home automation, I decided to begin instead with something more simple: a problem, and its overly-complicated, but totally awesome solution.

My bot-so-smart source of warmth.

My not-so-smart source of warmth.

I currently depend on this heater to keep my basement dwelling habitable.  While the furnace that heats the upper levels sends a token amount of semi-warm air in my general direction, it doesn’t seem too concerned with my comfort.  So, like most people in this situation, I use a glorified toaster to stave off hypothermia.  Actually, “glorified” is being a bit generous – electric space heaters are basically toasters that can’t even handle the simple task of making toast.  Their sole purpose in life is to consume as many kWh as they can get away with and not trip a circuit breaker in the process.  In my experience, they often fail even at this.  In the same way that you would not expect a toaster to keep your room at a constant 70 degrees (while also browning your morning bagel), it soon became obvious that the “thermostat” knob on my space heater contained the functionally of a particularly bland toddler toy.  And so I turned to HomeSeer.

The Solution

"Smart" Thermostat - powered by Z-Wave

“Smart” Thermostat – powered by Z-Wave

How to get one’s thermostat to control not only the furnace, but also one (or more) remote space heaters?  The amature electrician might do something like this, wiring the two directly together, but I didn’t want “wiring” – I wanted wireless.  So the geek instead turned to Z-Wave (a wireless home automation protocol) and HomeSeer (automation software), attached the space heater to a GE 45604 appliance module, and set up some events to define the relationship between thermostat and heater.  Because HomeSeer constantly receives information about the status of the thermostat (current temperature, set point, operating mode etc…), it was easy enough to use these conditions to tell the heater when to turn on or off via the Z-Wave module it was plugged into:

  1. If thermostat is “heating” –> Turn space heater on.
  2. If  thermostat is “idle” –> Turn space heater off.


Really.  It was that simple.  The beauty of this simplicity, is that changing the set point using the buttons on the thermostat would also affect the space heater – no extra programming needed.  However, there was still the issue of occupancy.  I didn’t always want the space heater sucking its 1.5kW just because it was less than 70 degrees.  The first step to solving this issue was easy enough:

3. If time is between 11:00pm and 6:00am –> Remain off.

That solved the problem for the night hours, but what about when I was away from home?  This required a bit of trickery requiring my Android smartphone and Tasker.  I created a profile in Tasker that would detect when the phone was connected to the home’s Wi-Fi network.  As long as it remained connected, it would run a python script (using SL4A) every 5 minutes that activated a virtual device in HomeSeer.  This acted as a sort of “dead man’s switch”, as HomeSeer would only register me as being home if the aforementioned virtual device had been triggered within the last 10 minutes:

4. If “At Home” is ON –> Allow heater to be turned on

Any glitch in the process would result in the heater turning off, rather than remaining on – a measure of safety.

The Results

As you can see in the graphs below, this implementation allowed a very fine control of my room’s temperature – it fluctuates between 69 and 70 degrees just as it should with a set point of 70.

HomeSeer Interface with relevant devices displayed.

HomeSeer Interface with relevant devices displayed.

From the small amount of sensors in place – even if the 2 motion sensors are ignored – a wealth of data can be collected.  The room temperature for the past 24 hours can be displayed as a graph, as well as a comparison of outside versus inside temperatures from the past week (outside temp retrieved from online).  The total time the heater has been on during a given day or week can be logged, giving an accurate estimate of the electricity costs involved in running it.  I can also disable the bottom device, “Electric Heater TStat” if I want to temporarily unlink the two devices.

Hopefully this provides an interesting example of what can be done with even the most basic of Home Automation setups.  I’ll try to delve into this topic further in a later post; there are some really cool implementations of automation I’ve come across, as well as other “problems” of my own that I’ve managed to solve in interesting – if a bit over the top – ways.

Tale of the Icarus

Somewhere, be it high up in a tree or adrift in the waters of the great lakes, lay the proud remains of the Icarus.  This fine machine had barely the chance to experience to wonders of flight; to soar above grassy fields and rolling waves, and to dance between the clouds.  Barely time to stain its underside green from grass landings and see its journeys across the landscape reproduced in Google Earth from data stored in its on-board GPS logger.  The Icarus was a young plane.  And it died a young plane.  This is its story.


Icarus’ final flight into the sunset.

A Noble Birth

Icarus was the spoiled first-born child of a doting parent.  The plane’s construction was somewhat of a prolonged struggle between the desire to keep things simple for a first-time FPV build, and an urge to make things clean, sleek and fully functional.  By the time the Bixler 2 kit was modified and assembled according to the specifications I had planned to incorporate, it had taken on a rather unique profile, featuring a blunted nose to carry the GoPro below the field of view of the secondary flight camera, numerous additional carbon fiber rods to reinforce the airframe, and a seemingly well thought out distribution of electronics and antennas, complete with internal wiring through the hollow tail to keep the fuselage looking sleek and free of excess wires and tape.


Icarus: the Bixler 2 retooled and perfected for FPV.

In hindsight, it may have been better to put a little less effort into a first plane, as the loss of a lesser machine would have been a much lighter blow to take.  Nevertheless, the Icarus, named posthumously, was a marvel to behold, a joy to fly, and – all too soon – a devastating loss.

A Cacophony of Errors

From the start, this plane had some quirks.  It’s maiden flight occurred only after three failed hand-launches, leading me to suspect that while technique could be blamed to an extent, the power, wing loading, and stall speeds of this modified Bixler 2 were close to their limits, despite the upgrades.  Once in the air, though, things went smoothly the rest of the first day of flight tests.  The only other major issue was the fogging lens of the GoPro, which was later remedied with desiccant inserts.  The next day of flights went just as well, although in retrospect, this may have been the beginning of the serious errors that led to the loss of Icarus.

I had just moved to a new location, taking advantage of a long, paved stretch of seldom-traveled road leading to a wide clearing with visibility clear to the horizon 30 degrees to either side of where the road ended, and only a moderate amount of trees to worry about behind the launch spot.  Water was present about 1/2 mile to the East and West, but didn’t seem close enough to be a concern – and shouldn’t have been.  However, things went so well the first few flight, that by the second I was pushing several boundaries farther than was wise.  Flying with 2.4GHz FrSky control (with telemetry) and 5.8GHz video, I expected about a mile of range, and didn’t intend to test my luck even that far.  The video had been clear and free of interference or drop outs, and I was not getting any warning beeps from the telemetry – and so began the lulling to a false sense of security.  Without an autopilot or even an OSD with RTH or RTL (Return to Home / Launch), there was very little that could be done in the event of signal failure.  In fact, I don’t think I quite grasped at the time how vulnerable I was.


Things are going well… perhaps too well.

Other possible failures aside, the loss of reception from either of the two radios (control and video) meant almost certain doom.  A control loss would engage the simple failsafe mode, which was configured to (hopefully) hold the controls in such a way to make the plane execute a lazy circle in the sky while waiting to re-establish a signal.  There was also a fair amount of warning thanks to the FrSky telemetry-enabled receiver, which had three levels of beeps to indicate decreasing levels of signal strength: 1 (less than perfect reception). 2 (model is at far, but safe, range) and 3 (maximum range and imminent failsafe).  Video was a bit more tricky.  5.8GHz video provides maximum resolution at the price of transmission range and object penetration.  From my limited experience, it also features less of a gray-zone in terms of reception quality.  When the video begins to get static, it is likely that it will soon cut out completely.  Regardless, video was the weakest link in my design even if frequency was ignored.  If you can’t see, you can’t fly – at least not for very long.

The Fateful Flight

The lapses in judgement discussed above were probably enough to eventually doom poor Icarus.  I simply hurried its fate with the generous application of sheer stupidity.  After a day of flying, I found myself at home with a troubling realization: I still had two sets of fully charged batteries.  I had seen several videos of night flights with the same camera I was using, and while I was nowhere near ready to try that, I figured it wouldn’t hurt to take advantage of the last few hours of light, and test the highly-reputed Sony PZ0420 camera in the dimmer, evening skies.

The first flight went spectacularly.  It was still bright out, and I finally had the anti-fog inserts for the GoPro, meaning that the footage I was recording would finally be usable for video-making.  It was getting darker, but now we had a couple of bystanders waiting for an encore, and the sun was only just setting – there would be light for an hour still.  And then the ground station died.  It seems the batteries had been exhausted from earlier in the day, and there was no longer sufficient voltage to run the DVR.  This didn’t directly interfere with my ability to fly the plane, as I was using my FatShark goggles with its own battery.  However, the DVR signified a small but important insurance measure when it came to finding a lost plane.  By recording the footage the plane was transmitting back to me, it would provide a way to review the last seconds before a crash or loss of signal, yielding valuable clues as to where it may have ended up.  I decide to go ahead anyways.  For better or worse, it probably wouldn’t have made a difference in this case.

The first few minutes were uneventful.  I made some passes over my small audience, but then decided to gain some altitude to view the sunset.  At this point, I estimate I was about 1/2 mile out (ground distance), but as high as 1,000-2,500 feet AGL.  This was no higher than I’d been before, but for whatever reason, disaster chose to strike this time.  I was flying level, and began to experience a trace amount of static.  I turned away from the water, searching for my launch point.  For the first time, though, I was lost.  It didn’t matter – that realization came far too late.  With almost no warning, the video cut out completely.  I may have gotten a short glimpse of terrain a second or two later, but in little time, my ears were filled with telemetry warnings from the FrSky.  Within 20 seconds from the first static – and less than 10 seconds from losing the video completely – I had also lost radio control.  Whether it was just bad luck that both radios had maxed out their range at the same time, or if the plane was able to lose enough altitude in that 10-ish seconds to drop below line of sight, I’ll never know.  I angled my antennas in vain and held my transmitter into the air, but the effort was futile.  The plane was going down.  Just where the Icarus cratered in is still a mystery.  After hours of searching, first with transmitter and goggles on in hopes of picking up a signal, than with mere eyeballs and a prayer, I had to return empty-handed: Icarus was a total loss, GoPro and all.


Lonely ground station stands watch in vain hope of Icarus’ return.

NTSB Report: Pilot Error

I’ll save the NTSB their precious time in this investigation.  This was a classic case of pilot error, the reasons of which I discussed in length above, and have summarized below:

  1. Failure to set strict “personal minimums” on range and altitude before sortie
  2. Failure to test failsafe mode to determine its actual effect in flight
  3. Failure to test and fully understand the margin of safety provided by telemetry, and how much time/range remained after hearing the first warning beeps vs the second or third.
  4. Failure to test the range and characteristics of the 5.8GHz video system to to an extent sufficient to understand how much time existed between static and full signal loss.  Naive about “pushing through” the static.
  5. Never bow to the whims of bystanders.
  6. No DVR, No Fly.
  7. No RTH, No Fly (at least not beyond visual range).
  8. Spotter was not briefed to always be aware of where the plane was, and was not provided with binoculars.
  9. Underestimated the contrast / dynamic range issues associated with twilight lighting conditions.
  10. Did not fully understand the risk of flying near water at an altitude high enough that said water was well within gliding range.
  11. No plan for what to do in the seconds following signal loss – try to execute a slow climb with full throttle?  Glide in a circle?  Roll to expose a blocked antenna?
  12. Engineering flaws:
    1. Antenna blocked by battery – VTX was shielded by 5000mah of battery when plane was above the receiver rather than more lateral to it.
    2. No lost plane buzzer.
    3. Poor battery monitoring (no OSD – relied on audio and voltage buzzer).

Crash Reconstruction

As I already discussed, I have no video of the final moments.  As FPV crashes go, however, my situation is hardly unique.  In fact, it is quite common, regrettably.  The nice thing about this is that I can provide a pretty representative depiction of what likely happened in the final seconds of that doomed flight:

Telemetry beeps: A Warning Unheeded

A Glimpse of Imminent Doom


The Crash: What probably happened


Skywalker: A New Hope?

While the loss of the Icarus was truly tragic, its successor is already in the works.  In short, it will be a larger airframe with a much more redundant control setup, and several emergency recovery features based on the lessons learned with Icarus.  I’ll detail these in a later post, and hopefully have a video featuring some highlights captured with both Icarus and the yet-unnamed Skywalker up sometime this fall.

Category: Flying | Tags: , , , ,

Guide: Galaxy Nexus on PagePlus

It was painful trying to find a simple, step-by-step walkthrough of how to flash a Verizon Samsung Galaxy Nexus LTE to PagePlus.  I was sick of the $60 wireless bill – unlimited data couldn’t even justify it anymore – and $27/mo for essentially the same coverage, more minutes and texts than any sane person needs (1200 and 3000, respectively), and 500MB on 3G was an easy pill to swallow.  Getting $400 for my unlimited data plan on eBay didn’t hurt, either.

Verizon's coverage with T-Mobile's pricing.  You can't lose.

Verizon’s coverage with T-Mobile’s pricing. You can’t lose.

The biggest hurdle lay in the fact that 4G phones such as the nexus aren’t officially supported.  A bit of work under the hood is required, so to speak, and the mechanics don’t come cheap.  Before I began the perilous task, I decided I’d document it and save the world a few hundred wasted hours of searching, reading and screwing up.  Here it is:

Prepare your PagePlus Account

  1. Register your phone with PagePlus.  I chose to go through Kitty Wireless, an authorized dealer, as they will take care of monthly billing with the 1200 Plan.  I’m also a member of the Level 2 “Crazy Kitty PIN Rebate Club ” which gives a discounted rate on plans – $26.97/mo vs $29.99/mo – it adds up over time, especially with multiple lines.  This club is only offered at select times during the year, and costs a one-time fee of $100 to join.
  2. Make sure to supply the MEID correctly when your register your device – you need to remove the last digit (because it is 4G capable) for the order to go through.  For example,mine was 990000xxxxxx223.  I supplied 990000xxxxxx22.  Should end up being 14 digits instead of 15.
  3. Wait for the order confirmation email.  You’ll need the following: Phone # (MDN) MIN (MSID), and SID.  For the SID, you need to call PagePlus at 800-550-2436.  Expect to wait a while.
  4. Make sure you have a Verizon 4G LTE SIM card.  If you want to be sure you won’t have trouble, get a new one.  Leave it out for now.  It makes things easier.

UPDATE: This guide (and all others) should get you at least 1X data on your Galaxy Nexus.  It is unlikely, if not impossible, that you will have 3G without the use of a donor phone.  I certainly did not.  If you wish to have 3G data, than there is an extra step:

5.  Acquire a donor phone.  This can be any Verizon dumbphone (that supports 3G) or any 3G ONLY smartphone.  You may already have one in a drawer somewhere.  If not, do a quick google search to make sure the one you are buying is compatible with DFS or CDMA Workshop.  I used a Samsung Convoy (SCH-u640).

Please read my guide for the donor process before continuing below.  You can always do this later, but you may have to repeat some of the below steps again.

Prepare your Computer

  1. Download this file (404MB).  It contains everything necessary for the process.
  2. Install the 32-bit or 64-bit Samsung USB drivers
  3. Install ETS
  4. Install Galaxy Nexus Toolkit (optional if you already have your phone rooted, bootloader is unlocked, and you have ClockworkMod recovery or similar installed)

Now…the Phone

Your nexus needs to have an unlocked bootloader.  I’ll cover that first, so if you’ve been using custom ROMs up to this point, you can skip to part 2.

Part 1 – Unlock the Bootloader

  1. Enable USB Debugging.  Settings –> About Phone –> Tap “Build Number” 7 times to enable the development menu.  Then go to it (Settings –> Development) and make sure Enable USB Debugging is checked.
  2. Turn off the phone.
  3. Enter FastBoot: While off, hold both volume buttons and the power button.
  4. Plug phone into computer and start Galaxy Nexus Toolkit.
  5. Select your phone (ie. option 36 for Android 4.2.2) then option 8 (1 CLICK FOR ALL). Use the recommended options and proceed through the prompts to unlock the bootloader (press VOL DOWN then POWER to unlock bootloader when asked).
  6. Proceed to install the ClockworkMod or TWRP recovery (your preference).
  7. The phone is now unlocked and rooted.

Part 2 – Flash to PagePlus

  1. Make sure the SIM card is removed.
  2. Copy the folder of necessary files you downloaded earlier onto your phone.
  3. Enter the bootloader (Power off, then Power + Volume Up button).
  4. Back up Everything.
  5. Wipe Data, System, Cache, and Dalvik-cache
  6. Install EOS rom, Gapps, toroplus-for-toro-FC12 radio
  7. WipeDalvik-cache and reboot.  Skip through all of the google registration / activation stuff.
  8. Unplug the phone from the computer, if it’s not already.
  9. Once loaded into the Android OS, do a full reset of all of your previous attempted programming, if any.  Dial *#*#786#*#* and set MSL to 000000, then choose reset.  Phone will reboot.
  10. Open the CDMA Tools app, swipe to the right and enable “USB Diagnostic Mode”
  11. Open the dialer, and type *#*#3282#*#*
  12. Edit –> Set MSL to 000000
  13. Others/More –> ETS Channel –> USB –> Ok
  14. Put the phone in Airplane Mode.  Plug it in to the computer.  Several VIA drivers should install (USB Hub, Modem, ETS).  If they don’t, try toggling USB Diagnostic Mode in CDMA tools.
  15. Start ETS Tools on your computer (Run as Administrator), and plug in the phone.  Look for the status to show it has connected, and that there are no errors:
    ETS Tools properly connected to the Galaxy Nexus

    ETS Tools properly connected to the Galaxy Nexus

  16. Go to Utilities –> Script Utility
  17. Open the script.txt from the files you downloaded.  Follow the instructions in the comments, replacing the first two items with the MDN (phone number), the next 3 with your MIN (MSID), and the remainder with your MDN.  The last replacement is the SID, which you had to call PagePlus to get.
  18. Copy the contents of the text file into the ETS script window, and hit Run.  Make sure no errors were reported.  If you get something like Code 1=HLP_ERR_ACTIVE_PARM_PROFILE_ID, Code 2=0x00000002, it may mean the drivers didn’t install correctly.  Also, try running as Administrator.
  19. Back in the CDMA Tools app, swype all the way to the right.  Change the directory from /data/media/ to /sdcard/ and flash the 52896 prl.
  20. Reboot to recovery.  Once again, wipe Data, System, Cache, and Dalvik-cache.  Flash your ROM of choice (Paranoid Android included in the files you downloaded), and install Gapps
  21. Last, install the i515 3g patch
  22. Power off, Install your SIM card (finally), Power on.
  23. Activate (*611) with PagePlus.  Then, dial *228, option 2 to update your PRL with Verizon.  Reboot.  Everything should be working: Voice, 3G Data, SMS, MMS.


INTF2 driver not installing – Install it manually via device manager – browse to C:\Program Files\SAMSUNG\USB Drivers\19_VIA_driver\amd64\VIA_USB_ETS and try the VIA ETS.

Driver for “Android 1.0” not found – choose Samsung Android Phone from the list.

Call PagePlus at (800) 550-2436 and verify your ESN / IMEI is correct and in their system.  I had mistyped a digit in mine, which is why this troubleshooting section exists and is is so long :/

3G not working?  Try this:

  1. Dial *#*#4636#*#*
  2. Select Phone Information
  3. Scroll down and change network type to CDMA auto prl
  4. Wait for few seconds…
  5. Reboot…
  6. Voila 3G will start

If all else fails…Nuke it from orbit.  Open up Galaxy Nexus Toolkit and do a full wipe and reflash to stock android (option 9).  It’ll undo all of the VZW programming (leave the sim out until you finish programming or it’ll try to reactivate your VZW sim information) and allow you a clean slate to start on.  Careful – this wipes EVERYTHING, including files on the “SD Card” partition.


As it turns out, dragonhart6505 has a great walkthrough detailing the process, but it is buried in pages of fluff over at XDA.  He was also generous enough to record a how-to on Youtube.  I borrowed heavily from his guide to write this, but still found some areas that required a bit of trial and error.  My goal was to have a clear guide I could come back to in the future if I had to do this again.

9c8337_25ef62e2e2f27eacb62ce16a1b0ee639 (1)

Interestingly enough, I actually went through this process back in the good old days with a Windows Mobile 6.5 HTC Touch Pro, switching it from Sprint to Verizon to take advantage of the lower price and better (non-crippled) specs of the Sprint version of the phone.  The process was just as convoluted as this one, and I somehow doubt the information even exists on how to do it again.  I certainly don’t remember, and didn’t have the foresight to document the process.  Fool me once…

Category: Technology | Tags: , , ,

Review: SD_Card_DVR

I was looking for a low cost Digital Video Recorder to save footage in real-time from the FPV camera on my Bixler 2.  I wanted decent video quality at 480p and a device that didn’t display a blue screen during signal loss, which often occurs when pushing range with wireless video.  Two commonly mentioned DVRs specifically for FPV include the FJ-DVR-SD4 from FPV Japan and the SD DVR from Hobbyking, costing $154.95 and $48.49, respectively.  The FPV Japan unit includes a screen to preview footage, but even still, both devices seem overpriced for the low-tech function they provide.  Recording input from a composite video source is very much 20th century.

Inputs: Audio and Video in and out; 12V power

Inputs: Audio and Video in and out; 12V power

Enter the SD_Card_DVR, a no-brand device made in china and sold at various outlets under different names, including Dx.com (Mini Digital DVR Video Recorder w/ SD Slot), Amazon (Mini Sd Card Motion Detection Digital Video Recorder) and eBay (1 CH Mini CCTV Camera Audio/Video SD Card DVR).  There is also a blue-cased unit that likely runs the same firmware but uses combined A/V jacks instead of composite and a MicroSD slot instead of a full size.  Price for either is a more palatable $30-40.  Unfortunately, there were no reviews of this particular DVR to be found, so I decided to roll the dice and report my findings.


A simple on-screen display offers options to toggle between English and Chinese (default is Chinese; it’s the top menu item), NTSC or PAL recording, Recording mode (continuous, motion detection or mixed), and resolution (VGA or QVGA).  Menus are brought up with the function button, navigated with the rocker switch, and selected by pressing the rocker switch in – this took some trial and error to figure out – naturally, the supplied chinglish manual was of no help.

Controls and SD card slot

Controls and SD card slot

Once recording starts, the time is displayed for a few seconds, then there is an audible toggle and the video returns to pass-through mode, sending the signal straight through to the outputs without any change in quality.  Recording is still occurring when this happens, but in the “background” – this also took some figuring out.  The advantage of this is that there is no input lag – a must for FPV flying.

In my testing, I did notice that this DVR is rather sensitive to input voltage.  Specifically, if the voltage gets much below 12V (below about 11.5V, or 30% capacity), it will cease recording – and will even stop passing through video to the outputs.  If powering this with a battery, I’d use a high capacity 3S lipo and try to keep it above 50% capacity, or use a 4S lipo with a 12v step down board.

In continuous recording mode, the DVR will break up the recordings into 30 minute sections.  Once the SD card fills up, it will automatically erase the oldest file and replace it with the current recording – not really needed for my current task, but absolutely mandatory for video surveillance purposes.


There are two recording settings:VGA or QVGA, both encoded in MJPG.  These settings can be further refined, but you must do so by placing a properly-formatted “system.txt” file on the SD card.  That file should contain only 7 characters, for example: F15V0S9, where F = Framerate (0-30; default 15), V = video system (default 0 for PAL .. change to 1 for NTSC), and  S = sensitivity (0-9; default 9).  On the next boot, the new settings will be loaded and you can then delete the file.

Interestingly, the default 480p settings had the framerate set at 15fps.  Long story short, it is best to keep it there.  While you can increase it up to 30, the bitrate remains the same, resulting in a lower quality recording from attempting to encode twice the data without an increase in file size.  I found no way to adjust the bitrate, other than switching between VGA and QVGA.  Below is the file info for the 3 settings I tested (click to expand):

VGA: 640x480 (30fps)

Type: AVI
Video: MJPG 640×480 30fps [Stream 00] Audio: PCM 8000Hz mono 128kbps [Stream 01]

File name : 2013-07-04 00-36-46-C.AVI
Format : AVI
File size : 446 MiB
Duration : 14mn 11s
Overall bit rate : 4388 Kbps
Writing application : ankarec

ID : 0
Format : JPEG
Codec ID : MJPG
Duration : 14mn 11s
Bit rate : 4254 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 30.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.462
Stream size : 432 MiB (97%)

ID : 1
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : 1
Duration : 14mn 11s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 1 channel
Sampling rate : 8 000 Hz
Bit depth : 16 bits
Stream size : 13.0 MiB (3%)
Interleave, duration : 500 ms (15.01 video frames)

VGA: 640x480 (15fps)

Type: AVI
Video: MJPG 640×480 15fps [Stream 00] Audio: PCM 8000Hz mono 128kbps [Stream 01]

File name : 2013-07-03 22-47-26-C.AVI
Format : AVI
File size : 492 MiB
Duration : 16mn 36s
Overall bit rate : 4144 Kbps
Writing application : ankarec

ID : 0
Format : JPEG
Codec ID : MJPG
Bit rate : 4013 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 15.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.871
Stream size : 477 MiB (97%)

ID : 1
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : 1
Duration : 16mn 36s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 1 channel
Sampling rate : 8 000 Hz
Bit depth : 16 bits
Stream size : 15.2 MiB (3%)
Interleave, duration : 500 ms (7.50 video frames)

320x240 (15fps)

Type: AVI
Video: MJPG 320×240 15fps [Stream 00] Audio: PCM 8000Hz mono 128kbps [Stream 01]

File name : 2013-07-03 23-25-20-Q-C.AVI
Format : AVI
File size : 163 MiB
Duration : 11mn 0s
Overall bit rate : 2071 Kbps
Writing application : ankarec

ID : 0
Format : JPEG
Codec ID : MJPG
Duration : 11mn 0s
Bit rate : 1940 Kbps
Width : 320 pixels
Height : 240 pixels
Display aspect ratio : 4:3
Frame rate : 15.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Compression mode : Lossy
Bits/(Pixel*Frame) : 1.684
Stream size : 153 MiB (94%)

ID : 1
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : 1
Duration : 11mn 0s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 1 channel
Sampling rate : 8 000 Hz
Bit depth : 16 bits
Stream size : 10.1 MiB (6%)
Interleave, duration : 500 ms (7.50 video frames)

I uploaded a short recording to Youtube to exemplify the degraded quality when going from 15 to 30 fps:

Other features

Recording starts as soon as power is supplied to the device, and ends when it is disconnected.  There seems to be a capacitor inside that allows for a safe shutdown after power is removed and thereby avoiding file corruption.  The SD_Card_DVR handled both a generic-brand 8GB microSD card inside an adapter as well as a PNY 16GB SD card, both  formatted to FAT 32.

As I mentioned at the start, there is a blue version of this DVR that appears to be identical in all but the input connectors and microSD slot.  Unlike my unit, some enterprising merchant actually bothered to make a demo video for the blue one:



The SD_Card_DVR proved itself a worthy addition to my FPV gear, and has faithfully been recording flights ever since:

I’m satisfied with the features and quality (at 15fps) of this DVR.  It certainly works well enough to help me trace down my plane if it should crash out of view.  For $30, I don’t think it can be beat, and the continuous loop recording is a great feature that is often annoyingly absent on similar cheap DVRs.  For $10-20 more, however, I think the HobbyKing DVR might be a better bet if quality is a priority – I’d imagine its performance at 30fps is superior, and it has a remote.

Bixler 2 FPV Mods

The HobbyKing Bixler 2 is a EPO foam plane designed for both those new to RC aircraft, as well as more experienced pilots looking for a stable platform for First Person View flying.  The pusher-prop design allows the FPV and/or secondary flight camera to be positioned at the front of the airframe with an unobstructed forward view.  Not having to film through a spinning prop saves the footage from being ruined by the rolling-shutter distortion which classically affects the CMOS sensors used in most small cameras.

Because of its broad target audience, the Bixler 2 requires substantial modification to be used as a dedicated FPV platform.  The increases in gross weight due to larger batteries, cameras and electronics add a substantial amount of stress to the entire airframe, and particularly the wing loading. This stress is further exacerbated by the more powerful electric motor and longer propeller that are often needed to maintain acceptable performance with the increased weight and drag.

Click for the gallery

Click for the gallery


I referenced a number of forums and build logs when deciding how best to assemble and modify my Bixler 2 kit.  Among these were RCGroups and FPV Labs, each containing almost too much information on different people’s experiences with the Bixler and its various iterations.  My greatest inspiration came from a fellow blogger at bixler2fpv, whose overall design I chose to emulate.  Along the way, I did my best to capture pictures of the plane’s construction:

Click for the gallery

Click for the gallery

Below, I have summarized a list of the mods I made to my Bixler 2:

  • Permanently glued the wings on, allowing for removal of the bolts and tubes that spanned the fuselage and wasted space.
  • Reinforced wing spar to handle extra weight – guled 2 additional carbon fiber rods (4mm hollow and 2mm solid) inside the stock 6mm hollow rod with gorilla glue.
  • Relocated Elevator and Rudder servos to the rear – both to free up space in the main cargo area, as well as to shift more weight to the back and reduce the travel needed for the control linkages.
  • Also relocated the RC receiver to the rear, for weight & balance reasons as well as to distance it from possible interference by the VTX.
  • Moved the ESC and VTX outside the cargo bay and onto the top of the plane for better thermal management.
  • Replaced the stock motor mount with the SmallParts CNC mount, allowing for 9×6″ propellers vs the stock 6×4″ size prop.  Result: better cruise time.
  • Removed the nose to mount the GoPro via a wooden mount screwed and bolted into the front bulkhead.  GoPro attaches with velcro, and can be swapped out for the nosecone if desired (also velcroed).  A sock around the mount prevents dirt from getting into the velcro.  Foam between the wood mount and fuselage reduces vibration.
  • Hollowed out the fuselage by removing all obstructions between the canopy and tail, allowing for a single 3S 5000mAh lipo or 2x 2200mAh batteries in parallel.
  • Added packaging tape to the leading edge of the wing surfaces to prevent damage during hard landings.
  • Glued velcro along the bottom of the cargo bay to prevent batteries (also with velcro) from slipping and altering the aircraft’s COG in flight.
  • Rubber band to augment the weak canopy magnets.  This also serves the purpose of securing my VTX and microphone.

Flight Characteristics

The extra 600g in weight was immediately apparent during the maiden flight.  Hand launching was more difficult than with previous planes I have flown, and my first attempt ended up in the tall grass.  Having two people made things easier, and the next 3 launches were successful.  I’m hoping solo launches will be possible with additional practice.

Once airborne, the Bixler 2 lives up to its great reputation for stability and performance.  I was unable to provoke any nasty stall / spin characteristics, and climb performance was very reasonable – although nowhere near being capable of sustained vertical ascents.  Rolls were smooth and loops possible with enough speed – though not from level flight.

Slow flight performance was unsurprisingly less impressive than a lighter stock bixler would be capable of, although the flaps helped immensely.  I still found myself wanting to be able to slow down a bit more, but I think that will have to wait for a Skywalker or similar 2 meter wingspan airframe.  Top speed was measured by GPS at approximately 40mph.

Bench testing of the power vs thrust.

Bench testing of the power vs thrust.

The 1050kv Turnigy Park450 motor and 9×6 prop combo drew a maximum of 213 watts when I tested it on the bench, producing 860g of thrust.  In the air, I noticed flight times of about 20min with 4400-5000mAh of 3S lipo battery capacity at 60-80% average throttle.

Cruise efficiency at various power settings. Throttle reported as a percent of maximum amps consumed.

Cruise efficiency at various power settings, measured in grams of thrust per Watt. Throttle reported as a percent of maximum amps consumed.


Below is a near-comprehensive list of the parts used in my Bixler 2 build.  I re-used a motor and ESC already in my possession.  If you are building this from scratch, I suggest the NTM Prop Drive 2836 2200KV  if using the stock 6×4 prop (or the 35-36 1400KV with a larger 9×6 prop) and a beefier ESC to go with it.  Note that when buying motors you often need to buy an accessory mounting kit and often a spare shaft is a wise idea.  Nothing is worse than needing a $0.50 part and having to wait 3 weeks to get it from a warehouse in china.

Price qty Item
$44.85 1 Hobbyking Bixler 2 EPO 1500mm w/Optional Flaps (KIT)
$14.52 1 Turnigy Park450 Brushless Outrunner 1050kv
$17.95 1 smallpartscnc Bixler 2 Motor Mount
$12.19 1 TURNIGY Plush 25amp Speed Controller
$0.80 1 GWS EP Propeller (RD-1047 254x119mm) (6pcs/set)
$18.83 7 HXT900 9g / 1.6kg / .12sec Micro Servo
$4.43 1 Turnigy TGY-R5180MG 180 Degree Servo
$26.42 1 FrSky D8R-XP 2.4Ghz Receiver (w/telemetry)
$270.00 1 GoPro Hero2
$45.00 1 PZ0420 600TVL SONY SUPER HAD CCD Camera
$40.00 1 FatShark 250mW 5.8GHz Video Transmitter
$35.00 1 5.8GHz Circular Polarized spiroNet Antenna set
$3.17 1 FPV Fiberglass Pan-Tilt Camera Mount L-Size
$3.29 1 12v amplified mic
$2.99 1 L-C Power Filter for FPV A/V Systems
$24.19 1 ZIPPY Compact 5000mAh 3S 25C Lipo Pack
$17.98 2 ZIPPY Flightmax 2200mAh 3S1P 20C
$5.21 1 HobbyKing HKU5 5V/5A UBEC
$1.88 1 On Board Lipoly Low Voltage Alarm (2s~4s)
$6.75 2 2mm CF Rod, 24″
$8.98 1 4mm 40″ CF rod
$5.75 1 Gorilla Glue, 2oz
$21.36 1 Cat6 Molded Patch Cable, Grey (35′); Shileded pairs
$60.00 1 Estimated Shipping costs


Additional performance information:

Wingspan 1500mm
Material EPO
Length 963mm
Cabin space irregular
Wing Area 26.5 dm2
Wing loading 54.7g/dm2
Thrust 960g
Empty weight 900g
Maximum takeoff weight 1600g
Maximum useful load 700g
Power / Prop / Battery curves from eCalc.

Power / Prop / Battery curves from eCalc.

The video footage I captured showed no evidence of vibrations, though between the wind and my novice flying, it wasn’t a product I’d be in any hurry to publish.  I also learned why many fly with naked GoPros – ie. not using the protective case.  In addition to the weight savings, I suspect fogging of the lens may be the real motivator.  Due to substantial temperature changes with as little as a couple thousand feet of altitude, fogging is a real issue – and one that ruined my already lackluster video from the GoPro.  Fortunately, the PZ0420 camera which I used to actually fly the plane had no issue.  Future flights will see the use of newly-purchased anti-fog inserts inside the GoPro case, which should hopefully resolve the issue.

Category: Flying | Tags: , , , ,

Going Paperless

In the 20 years that I have been a student, I have always had a backpack.  I was never in want of a place to stow a binder, pockets for extra pens and highlighters, and still more compartments for snacks, a laptop, umbrella, and the various tools, trinkets and gadgets that I might (never) need to use.

Well, I’m still a student, but now I have only two pockets in a short white coat to assume the place of my trusty pack.  Suddenly, I have become over-encumbered with what would have in the past only been only a moderate load.  It wasn’t too difficult to boot the umbrella and trinkets from my cargo manifest, but the nature of the true culprit quickly became obvious: paper.  I hate paper.  It has been only three weeks since I have been forced to accelerate the demise of this pulpy, archaic medium, but I am happy to declare that progress has been made.

Looking back, it’s scary how dependant I was on 19th century (and older) technology for organizing my life.  Because of its insidious creep into every nook of my routine, there was no single solution to ridding myself of those stacks of ugly scrawl, often labored over for hours only to be buried under an unstable tower of their brethren and forgotten.  Yet slowly I have succeeded in reducing – if not eliminating – my dependance on parchment.  Here is what I have used to accomplish the task:

Notepad / Scrap paper: Google Tasks

Google Tasks open in Gmail

Google Tasks open in Gmail

Google Tasks is the best tool for anyone integrated into the google ecosystem, as it is quickly accessible from gmail.  I leave it enabled in the bottom right corner of my screen, and have lists for To-Dos, personal notes, long term reminders, and tasks specific to certain occupations, organizations or activities.  These liste are instantly synced across all of my computers, as well as my android phone (app: GTasks) and iPad (app: GoTasks).  There is a checkbox to mark a task complete, and you can also set reminders and due dates.  Say goodbye to sticky notes and that pile of cut-up recycle paper you used to keep on your desk.

Filing Cabinet: Evernote

Evernote Web Clipper browser plugin

Evernote Web Clipper browser plugin

Evernote occupies that second tier of notes – those that aren’t tasks or items to be remembered for a short time later, but rather all of those pesky little details in life that need to be remembered.  That combination for the bike lock that you always forget in the spring?  You know, the one you wrote down….somewhere?  Yup, evernote will take care of it.  Along with longer items such as notes, pictures and even audio recordings.  You’re limited to 100MB of uploaded stuff per month, so plan on paying for the premium account if you do much of the latter.  For text and the occasional picture / scan, it’s plenty. The web clipper browser plugin is also essential for saving interesting/funny things you read online.  Storing them in evernote solves the issue of trying to find them later only to realize the content was pulled, the site offline, or you just plain forgot where to look.  Of course, like Google Tasks, Evernote is available on the desktop, web, and mobile platforms, so your filing cabinet is always with you.

Scrawl: Penultimate

penultimateI use this app on the iPad for those rare situations in which you simply need to write.  The resolution and accuracy of a capacitive stylus leaves much to be desired, but it works in a pinch.  Samsung’s Note line of phones/tablets, as well as many Windows tablets such as MS Surface, have Wacom digitizer hardware, allowing the use of a proper stylus for better accuracy and ease of use.  Still, my 9″ iPad mini is about as good as a 3×5 paper notecard as far as the amount I can fit on a page.  On the plus side, it syncs to Evernote – a feat that leaves the note card feeling quite resentful and unwanted.  Good riddance.


Binders: Dropbox

Dropbox or Google Drive, you can have your pick.  Either of these are great for storing vast archives of created content or school/work documents and keeping them synced across all your devices.

Flashcards: Anki

I already wrote in length about Anki.  In short, if you have a pile of things to memorize and retain for any significant amount of time, there’s nothing better.

Textbooks: PDF

It’s amazing how many things you can find online if you dig a bit.  And by digging, I actually mean a simple google search.  If you’re lucky enough to find a decent quality PDF of the textbook you need, I still think Adobe Reader is the best app for the job (perhaps with the exception of PDF X-Change Viewer on a Windows machine).  Sadly, the CHM format is still used frequently, and it necessities using apps that are generally more buggy and less polished.

Books / Novels: Calibre and ePub

Calibre is an awesome piece of software for managing an eBook library for use with dedicated eReaders, tablets or phones.  Not only will it organize and convert your library of digital books, but it can also act as a server to allow those books to be accessed from anywhere if you happen to have a computer you can leave running all the time.  My favorite apps that support the ODPS protocol that Calibre uses as well as the widely-used ePub format for eBooks are FBReader on Android and Marvin on the iPad.










With the above tools, as well as a capable PC, smartphone and tablet, you have all that’s needed to leave paper behind in the last century where it belongs.  If you still find yourself having to use it from time to time, I think you would be well served by adding two more items to that list: a scanner and document shredder.

Why Medicine?

Recently, a friend considering medicine as a career asked me for my perspective.   I actually had a bit too much fun with this, reflecting back on how I ended up here in this little cubicle with my First Aid and a computer screen taunting me with 2200 practice questions to be studied so that I could jump through the next of many academic hoops in the long progression toward becoming a productive member of society.   Well, I may know a bit less about biostatistics for STEP 1, but the time spent reflecting was valuable to my mental health.  The curse of being a very long-sighted, future-thinking individual is that you’re willing to accept almost any punishment in the short term if it is necessary to achieve your ultimate utopian dream life.  Despite being experts on the subject of delayed gratification, even us med students can get a bit weary of the grind.  So, the chance to be introspective for a bit and recall why all this hard work was supposed to be worth it turned out to be quite refreshing.

The Questions

 How did you know that this was what you wanted to do?

I can’t say I was that person who knew from birth that they wanted to be a Doctor when they grew up.  Nor did I have any one experience or revelation that this is what I wanted to do, despite what my elegant Personal Statement may have implied.  Honestly, I could have seen myself in any number of fields (medicine, engineering, IT, military, aviation, business, consulting, intelligence, game development…you name it) – it came down to Aerospace Engineering vs Medicine in high school, and Medicine won out.  There were many reasons for the ultimate decision, including both the rational (nature of the work, didn’t want to be constrained to a certain geographical location, lifestyle, pay, work/family balance) and personal (I didn’t want to be a cog in a wheel, wanted to directly and unquestionably be doing something good for the world and be helping people, didn’t want to work for a bean-counter, didn’t want to slave for years making a revolutionary trinket that would be obsolete and forgotten a decade later, wanted independence, etc…).  In the end, I wanted a career that I could look back on years down the road and be proud not only of my own accomplishments, but more importantly in what I had done for the world; the fact that I had made a significant and positive difference in the lives of my patients.  Above all else, this is why I chose medicine, and why, no matter how hard the daily struggle, the frustrations of politics, academia and bureaucracy, or the boredom of memorizing minute facts for an exam, I will always be satisfied with my choice.

How many schools did you apply to?

Just MSU CHM.  I fell in love with the school, the collaborative (vs competitive) atmosphere and our magnificent, $100M new campus in Grand Rapids, MI.  The fact that I wouldn’t have to move was also a plus.  I applied through my undergraduate university’s Early Admissions Program, which meant that I only applied (early) to MSU, took the MCAT early (in May vs July or Aug), and got a decision almost a year early (June after Junior year).  If I hadn’t been accepted, I could have still entered the normal application process without losing any time. I wanted to stay in state for med school – there is little reason to spend double the tuition going to an out of state or private school, unless you are either dead-set on getting into a highly prestigious residency or want to practice Academic Medicine at a prestigious university. Say your life goal is to do a Retina fellowship in Ophthalmology at Johns Hopkins’ Wilmer Eye Institute.  Are you going to get one of those 4 or so spots without being from a top-10 medical school — probably not.  Can you still go into Retina Ophtho – absolutely.  Just do well on STEP 1 and perform well during your 3rd year rotations and your choice of medical school (as long as it is an accredited MD school in the U.S.) is of little significance in what specialty you can attain.

How did you prepare for the MCAT?

I got suckered into taking the Kaplan course.  Fear is a powerful motivator, and the fear that I wasn’t doing everything I could to prepare for a test that would determine my life overcame my reservations (and the protests of my wallet) for taking said prep course.  Hindsight is 20/20, and if I had to do things again, I’d have followed my gut and just used the resources recommended by other students on SDN, made my own plan, and stuck to it.  Actually, this is what I mostly ended up doing anyways, albeit with the inferior Kaplan books, a class taught by a GVSU senior that was more distraction than a help, and $1800 less to my name.  If you’re the type that needs externally-imposed structure and guidance, a prep course may be worth it, but otherwise I’d recommend against it.  Get the best books, take a solid month or so off to study them, do lots of practice tests, and take the real deal when you’re fully ready.  In the end though, it all worked out, so I guess I can’t complain too much.

What kind of things did you do to make yourself look good to med schools?

I checked most of the important boxes for the “good med school applicant”.  In order from most to least important, they would be a good MCAT score, competitive GPA, personality / “fit” for the school based on the impressions made during your interview and your personal statement, service (not necessarily related to medicine) and work experiences in the field (I was Nurse Assistant for a few summers during undergrad), research and/or publications (dissecting pig hearts was actually pretty fun) and other leadership experiences / awards (president of bla bla bla organization, prestigious scholarship of awesomeness, and the ever illustrious Dean’s List) ,etc..  Unlike residencies, which care much more about the first two items (test scores and grades), it is very important to have a “balanced” application for medical school.  All of these items are important.

Is med school impossible?

Haha, probably not the best time to ask this question – I’m currently studying for USMLE STEP 1, our first licensing exam – which makes the MCAT look like a colorful, fun toddler toy in comparison.  We refer to it as the mKitty.  Seriously, though – it’s easy to become overwhelmed with the path ahead.  The best way to tackle med school is to focus on the now.  Take things day by day, break large tasks into smaller tasks, and don’t get caught in the trap of comparing yourself to others and fretting about the little things that don’t matter.  There may be some long days, but in retrospect, time flies by and you really get a sense of accomplishment looking back on how far you’ve come.

Do you get sleep?

lol, yes.  I’m ferociously protective of my sleep.  Actually, I can honestly say I had more late nights studying in undergrad vs med school.  You could cram for organic chemistry.  Cardiology?  Not so much.  With the amount of materiel we are fed, there is little to be gained by an all-nighter.  Even procrastinators like myself figure out real fast that their definition of procrastination must at least be…adjusted a bit.  I feel like I’m cramming for STEP 1, and I’ve been studying for 35 days straight, with several more to go until the big day.  This is as extreme as it gets, as like the MCAT, the impact of your score determines the career options that remain available to you.  That said, I’ve managed to get 7-8 hours of sleep each night, work out an hour each day, find time to eat, and even sneak in the occasional break for a bike ride, movie, or night with friends.  It’s not impossible – you just have to manage your time.

Are you going to specialize?

Well, everyone “specializes” in that you will have at least a 3-year residency after medical school in which you train and become certified in a particular field.  Family Medicine is no less a specialty than Neurosurgery in this respect.  You can then go on and do a Fellowship to sub-specialize in a particular niche within your specialty.  I begin my clinical rotations this summer, and I fully expect that the experiences I’ll have over the next year will have the greatest influence on what I end up going into – regardless of my current leanings.  Really, though, this is one of the coolest parts of medicine – you have so many options from which to choose a field that fits you and your interests / needs.

For those still in undergrad and considering medicine as a career, it is important to learn as much about what’s involved in this decision as you can.  Keep asking questions, shadow some Docs, get involved in pre-professional clubs, and most importantly – have fun!  Don’t waste those blissful undergrad days working yourself too hard just for the sake of it (read – don’t torture yourself with the waste of time and sanity that is analytical chemistry for a meaningless minor, unless you’re actually interested in…titrating colored water and writing lab reports…and stuff).

Anatomy of a Board Question

Posted on by 1 comment

In an attempt to displace some of the frustration of studying for boards, I decided to provide an insight into why USMLE STEP 1 is such a difficult exam for medical students – such that, on average, 5-6 weeks need to be dedicated solely to the task of preparation, in addition to the time spent throughout the course of second year.  The best way to illustrate the misery of this test is simply to describe the average question that may appear on it.  Multiply this by 322, and you have the 7-hour exam that is STEP 1.

To ease the pain ever so slightly, I’ll cast it tn the context of a history question:

In the 20th century, a prominent political figure became heavily involved in the production of a new automobile known as the “People’s Car.”  A few years later, this man’s favorite pet, “Blondi”, delivered several offspring.  He named one of them “Wolf.”  Of what species or breed was “Wolf”?
A)  Canis lupus
B)  Oryctolagus cuniculus
C)  Doberman Pinscher
D)  Felis catus
E)  Golden Retriever
F)  German Shepherd
G)  Thylacinus Cynocephalus
H)  Bradypus variegatus
I)  Bloodhound
J)  Chihuahua

Now, the first question you may have after attempting to answer this is “What does this have to do with history?”  Understandably, trivia is not a favorite pastime for most people.  If this is the case, the logical approach might be to try answering one or more of the separate components of this question, hoping that this would lead to the answer.  An automobile fan may recognize that “People’s Car” is actually an English translation for Volkswagen, and thus come at the question from this angle – who was behind the success of this company?  Sadly, there are no people in the answer choices.  “Well,” you say, “I can still get this.  After all, I know the genus and species of the Wolf – and Canis Lupus IS an answer choice.”  You would be right — and yet ultimately still wrong.  Who names their wolf “Wolf”?  At this point, you will probably throw up your hands in fury and, rather than continue attempting to answer the question, complain about why it was even asked.  Who cares about the pet of a car company owner?

Now, is the purpose of this question really to test your knowledge of cars or famous pets? Of course not.  Obviously, the question was testing your understanding of historical leaders, with the simple task of identifying Germany’s leader in the mid 1900s.  Because everyone knows that this was Adolf Hitler, it would be silly to have this be an answer choice – no one would get the question wrong, and the bell curve would be all nasty and skewed to the right.  Examiners worship the uniformity of the curve like a cult, and do everything in their power to maintain it – even if it means asking the name of Hitler’s pet dog, who happened to be a German Shepard.  What, you never learned that?  Clearly, you should have studied a couple more weeks.

With the example out of the way, one can begin to identify a structure; a method to the madness:

Diagram of a board question.

Anatomy of a board question.

Knowing the structure gives you some idea of what it takes to successfully work through a question, but it is even more useful if we distill this structure into a couple of High-Yield rules:

  1. The question and answer will rarely be what is explicitly asked.
  2. The obvious answer is almost always wrong.
  3. The seemingly logical answer is also generally wrong.
  4. On a rare occasion, the obvious or logical answer will be right.

Now, the first 3 rules can arguably be explained away as methods to test your critical thinking.  Of course, the 4th is there just to play with your mind.  Similar to the way your high school biology teacher would have 10 answers in a row be “C” on your multiple choice test, just to troll you.  Combine these rules with the multi-step nature of the question, in which you must jump through a series of mental hoops just to figure out what is being asked.  Now, add 6-10 answer choices and a time limit.  The result: a multiple-choice question in which a failure to successfully complete any one of the steps necessary to answer it results in failure.  Guessing doesn’t work out too well, either.

To prove that this isn’t all hyperbole, I actually have a real question to submit as evidence:

A sample USMLE STEP 1 question

A sample USMLE STEP 1 question

I hope you can see the resemblance to my example.  Perhaps the detailed analysis and rules actually allowed you to come to the correct answer.  Of course, knowing the rules only gets you part of the way there.  You still need to know that the Erythropoietin Receptor is a Type I cytokine receptor, meaning that it is associated with a non-receptor tyrosine kinase, and that a JAK2 mutation of this non-receptor tyrosine kinase will lead to a clonal proliferation of hematopoietic stem cells, the disease for which is called Polycythemia Vera.  No problem, right?  Or at least… nothing a few more weeks of studying First Aid can’t fix.

The problem I have with these questions, is that they’re essentially training us naive young physicians to miss the forest for the trees.  You spend so much time memorizing that the creator of the Volkswagen had a German Shepard named Blondi that you forget the fact that this individual was named Adolf Hitler and was responsible for the Second World War.  The goal of these so-called “Licensing Exams” has become badly warped.  Rather than asking questions that test knowledge a competent physician should have, similar to the way an FAA exam would ask student pilots about proper navigation techniques, the USMLE examiners have somehow decided that the purpose of their test is to stratify medical students into the most symmetric bell curve possible, regardless of the cost.  The intent behind many questions is “Let’s try to ask them something they might not know” instead of “Let’s ask something that they should know.”  I’m sure this approach makes residency directors happy, as they have a convenient 3-digit number available to sort applicants with, rather than relying on more subjective determinants of ability, such as clinical performance, letters of recommendation, and impressions made during interviews.  I suppose I don’t blame them – who in their right mind wants to read 1200 CVs, anyways?

Saving Battery with Tasker

Posted on by 1 comment

The Galaxy Nexus is notorious for its mediocre battery life, especially when operating in an area with marginal 4G coverage.  Finding that my phone would frequently attempt to maintain a cellular data connection even while not being used, I decided to remedy the issue with BattSaver, my creatively-named Tasker profile designed to minimize power usage from the phone’s radios while not in use.


BattSaver comes in 4 parts, either due to necessity or my own inefficiency.  Still, it is quite simple, and the results speak for themselves.

Left: Samsung Galaxy Nexus LTE failing || Right: Running BattSaver Tasker profile

Left: Samsung Galaxy Nexus LTE failing at being a phone || Right: Improvement with BattSaver activated

There are many of these profiles out there, such as this one on XDA, but I found them to be  either too complex or overly rigid.  While one can attempt to plan for every usage scenario, it eventually becomes so burdensome and inefficient to do so that the whole point of automation is lost.  I don’t, for instance, want to manually add every Wi-Fi network I use to the profile so that it can trigger when away from home.  This is an inconvenience, but worse, it is inflexible.  What if I go on a trip, or change my routine?  I do not want to have to manually update my phone to keep the task working.

Here, as with most things, I’m a fan of the KISS (keep it simple, stupid!) principle.  My profile may not have as many functions, but it is predictable.  BattSaver requires no attention aside from enabling or disabling it, and is –  I’ll bet – at least 90% as effective.

So, back to the 4 components:

Batt Saver Trigger

This profile checks to see that the phone is not in use, as defined by the following conditions:

  • Screen is OFF
  • Charger is disconnected
  • Phone is not at home

If these are met, Batt Saver will activate.  You can also set a minimum percentage the battery must reach before the profile engages – I typically use 25%.

Batt Saver

This is the main profile, which enables airplane mode as long as the above conditions remain met, and no phone calls are ongoing.

Battery Status

This maintains a variable (%BATTLVL) to monitor the battery percentage and use it as a condition in Batt Saver Trigger.

Batt Check

Finally, we need a way to periodically check for messages and email while the battery saver is running.  This turns the radios on every 30min by interrupting Batt Saver for one minute – enough time to connect and send/receive data.


As usual, here is a zip of the profiles and tasks if you wish to import them.  Aside from Tasker, you will also need the free version of SecureSettings installed.

The only modification you will need to make is to change or remove the condition in Batt Saver Trigger that checks if the phone is at home.  I use a variable that is set by another profile that monitors the nearby WiFi and Cell towers, so you can either create a similar profile and have it change the %AT_HOME variable (1=yes, 0=no), use a different condition, or just delete it.

Category: Technology | Tags: , , , , ,