Phi-shield revised and released


It has been a while since I gave the phi-shield a major revision. I’ve been working on this for a while and now I am releasing the Phi-3 shield. This shield continues to support user interaction with LCDs and buttons. Here is a list of the features:

The following hardware are provided by the shield:

  • 20X4 LCD with back light on/off control
  • Six buttons (up/down/left/right/B/A)
  • Two LED indicators
  • Speaker
  • MicroSD card slot
  • Real-time clock (DS3231)
  • EEPROM (32KB 24LC256)
  • Connector for Adafruit Ultimate GPS module or Bluetooth module
  • Stacking headers for easy access to all pins.
  • Recessed board right edge for easy access to MEGA’s 18X2 pin headers on the right side.
  • Reset button


The following software functions are provided by various supporting libraries:

  • User-selectable menu (LCD + buttons)
  • Number and text entry (LCD + buttons)
  • Scrollable long text (LCD + buttons)
  • Date and time (DS3231 or GPS)
  • Location (GPS)
  • Data and configuration storage (MicroSD card and EEPROM)
  • Playing simple tones (speaker)
  • Indicators (LEDs)
  • Wireless connection (Bluetooth module)


There are three tiers of Phi-3 shield kits: kit0, kit1, and kit2, none of which includes a GPS module. The kits are immediately available. Buttons with color caps as pictured will be included while supplies last.

Here is the Phi-3 shield’s own page. There are links on the page to make purchases. Or you can visit the BUY page to see what stores carry this shield.

Phi-3 shield

Video demonstrations will be available next week. Meanwhile, the support of Phi-2 shield will remain. If you need Phi-2 shields, I have them available.


EAGLE library for 16X2 and 20X4 LCDs

These are the parts that I have used for quite some time for all circuit boards I designed that have LCDs. Free for the grab but please check the dimension of your LCD before using them as some suppliers have smaller/larger mounting holes and not all LCDs have the holes at the same locations. Some parts have only 3 mounting holes since the bottom right corner of the LCD would be right above the GPS connector on phi-2 shields. The 16X2 LCD with connectors on bottom left have been used for some projects too.


phi_prompt 1.0 beta release

I am happy to release the beta version of the phi_prompt library. There are sample codes to get you started while I work on adding a few functions for beginner programmers and finishing the documentation. Except for the init function, everything is the same as the 523 version. Now it’s compatible with arduino 1.0 and uses phi_interfaces library as the physical layer for inputs.

Library download includes phi_prompt, phi_interfaces, sample codes, and modified TinyGPS (by Mike Hart) to run on arduino 1.0:

GPS logger program version 5 is also available if you have a phi-2 shield 2004 and a GPS module:

Phi_morse library is rolled out

Now if you want Morse code functions and can’t do it yourself, you can just download this library and call morse_out(“HELLO”);

Check out the library page:

Phi_morse library page

Phi-2 shields available at

Phi-2 shields are available at now. They are also available at the open source hardware place as well. You are welcome to visit both places!

Here is a coupon SPRING10

Morse code translator new version

This version is completely rewritten with the Phi-prompt interface for Phi-2 shields. Should be easy to use on Phi-1 shields by changing the #define phi_1_shield in main program.

The new program is easier to understand, and has a new library feature. Right now I have about 12 short words in the library. You can just browse the library of words and press confirm or right to play the Morse code for that word. It’s handy for training so you don’t have to enter it in painstakingly. Change the words anyway you want. They don’t have to be 7 letters long. The list can only fit 7 characters.

Here is a video:


->code<- This library includes the above example’s code, which requires phi_prompt and phi_buttons libraries.

The newest edition is based on phi_morse library now and is totally easy to use. I will upload as soon as possible.

Big font

This is another inspiration I drew from the Arduino forum and sparkfun’s contest on a while ago:
I’ve seen several examples of using “Big numbers” to display time on a 16X2 character display.
I’ve seen JO3RI doing animations on a 16X2 character display.
So I asked myself, why can’t someone come up with a way to double up the size of the 16X2 character display, not just ten numbers, but all alphabets, then it’d be useful as a larger display! Time, Speed, Direction, etc.
I’ve brewed this for a while (between last night and this morning), tada!

You can see that I intentionally scaled my images down so small that it would hurt to read the standard size fonts (click to zoom) but the large font is just fine. I made an estimate with it. I can read the clock from about 4 meters (13ft) away just fine, while the standard text is visible less than half that distance away.


The entire thing is for now resident in SRAM (please don’t blame me. I’ve been on this since lunch. I need a break, critic and encouragement before I squeeze memory)

Everything has been integrated smoothly in my phi-menu system now.

If you just want these large fonts, take the following code, but if you want all the interactive features, you need the phi-menu.

Nutshell version code

Full version code (up soon)

%d bloggers like this: