PengAlert: Linux Multifunctional Alert Device

Technical Details

  • Requirements
    • Tested Linux Distribution: Fedora Core 6
    • Other Distributions: Modern Linux Distribution with USB support
    • USB Port: Tested with 2.0 although 1.1 should work
  • Measurements
    • Height: 7.25"
    • Width: 6"
  • Power
    • Voltage: 9VDC 500ma Wall Transformer
    • Maximum Current: 260 ma
    • Quiescent Current: 60 ma
  • Display Devices
    • Top of Head: 2 Yellow LEDs
    • Eyes: 2 Green LEDs
    • Feet: 6 Red LEDs
    • Stomach Area: 3 Seven Segment LEDs
  • Sound Device: One Piezo
  • External Port: 1 DB9 Connector with 4 Binary Ports & VDC/Ground

PengAlert is designed around a PIC18F4550 PIC chip that has USB capabilities. This is a 40 pin CPU chip that has been set-up to utilize a number of pins for the PengAlert application. In addition, the PIC18F4550 has the ability to have code loaded onto it via the USB port once the appropriate boot program has been loaded onto the chip. Because of this, it isn't necessary to purchase another piece of equipment in order to do modifications to the application included with PengAlert.

PengAlert in it's simplest form can be used without any modification to the software. Using the included usend program, you simply issue commands from BASH, Perl, C/C++, etc. to trigger the desired display.

For example, to have LED #1 display or turn on, you would issue:
usend -c "LED1 ON"

A command library is available to control the various devices. See the examples page for a full detailed listing of the various commands in the library.

In the event you want to modify the library or add to it, complete source code is included. What you would do is modify the appropriate application source code files and then run the Make. A application.hex will be produced which you then in turn use the supplied docker application to download the new application into PengAlert.

The source code for the application usend is included with PengAlert too. Depending on modications you may make to application.hex, you may need to modify usend to support the changes.

Though few may make use of this feature, we also include the boot source code files. These can be modified as well. However, you will need an actual programmer such as the Microchip PICkit 2 to load the boot.hex file.