Workshop: Optimizing Code For Memory and Performance

This workshop I have created goes by a few different names:

How to Squeeze a Processor for Memory and Performance

or the longer name:

Squeezing Blood From A Stone: Getting Back Memory and Performance

Regardless of what name got you here, it will debut in less than a month at Hack A Day’s Super Conference November 14th & 15th. It will happen Sunday the 15th 12:15am. 

We’ll guide you though a series of labs to explain how to measure performance and memory, then the basics of improving them based on your goals.

Since this is a hands on but very short workshop focusing on using the following free tools (Download and install it yourself BEFORE the workshop or you’ll be sad) and cheap hardware:

 

Getting Your Bitmaps Converted for Simple Display in Your Firmware

Perhaps you finally got a snazzy display for your latest project. I highly recommend the AdafruitGFX library as well as GIMP, and for making your own fonts, MikroElcktronika GLCD Font Creator (optional and not covered here).

If you are looking for a project to get you started, AdaFruit has a lovely wearable project.

Setup

  • GIMP
  • Access to your lovely bitmaps

Process

  1. Open the target bitmap into GIMP.
  2. Assume it is trimmed to the size you desire.
  3. Take note of the dimensions of the bitmap
  4. From the GIMP menu, select Colors->Rearrange colormap so it is appears a below (BLACK = 1; WHITE = 0) and click OK.

map2

  1. Select from the menu Image->Mode->Indexed. Choose 1-bit palette and click “ Dithering is optional.

dialog

  1. Save the file by selecting File->Export As. Choose c header file (.h) and name appropriately. Now use this however needed in your required firmware infrastructure. Personally, I make sure everything is “const” and indexable with sizes and offsets.Here is an example(rebelbot_bw.h).

Design West Presenter Schedule

It’s that time of year when the smell rosin in the air and sometimes the tiniest hint of a blown cap. But it is also time to come out the San Jose McHenry Conference center and check out what the various vendors for Design West 2013 (formerly known as the Embedded Systems Conference).

This year Jen is will be participating in three session:

  • Start Tinkering– Panel discussion covering everything you need to know about getting started on your own tech projects. We discuss everything from why to equipment to vendors to avoiding problems – Tuesday April 23, 9:30am, Room: 210 GH Free to expo pass holders
  • Sensors Saving Lives– Moderated panel discussion with four different perspectives of using sensors in health. Representatives from A.M. Fitzgerald and Associates, Fitbit, iRhythm, and Logical Elegance give you the critical information about sensors in your health devices. – Wednesday April 24, 1:00pm, Room: Expo Theater – Free to expo pass holders
  • Android Sensors: A Top to Bottom Approach– Jen’s informative Android sensor talk introducing new designers to the entire process from hardware selection through Android application development. Exclusive Android App to attendees – Wednesday April 24, 3:00pm, Room: 210 EF

If you have not obtained your passes, you can obtain them here and use the coupon SP100 for a heavily discounted all-access pass. However the expo pass is always free.

We will see you there.

DesignWest_promo_speaker_728x90

 

Designing an Android Sensor Subsystem: the slides

I had a great time at the Androids Builders Summit earlier this week. It was a great chance to learn some new critical skills in Android development.

Below are my slides from my sensor subsystem talk. In summary, you can spend all the time in the world trying to optimize for power and user experience, here’s one way to expedite that process by narrowing down to a few key decisions.