Thursday, February 24, 2011

Free Timing Diagram Drawing tools

Many a times we need to generate/draw timing diagrams for multitude purposes. While browsing web for the same I came across these free/easy-to-use timing diagram drawing utilities.

  1. Timing Diagram Font -- Timing diagram can be generated in MS Word using this
  2. Timing Analyzer -- A tool for doing the same
  3. Timing Diagram from verilog - using the above tool and small snippet of verilog code, one can generate timing waveform from the design itself. One problem I see with it is that the code snippet doesn't use verilog macro for achieving the same. Handy Timer - A simple and handy timing diagram editor
  4. Timing Editor - Another free waveform editor
  5. Draw Timing - Command line based waveform drawing SW which take a script as its input

Emacs: Start window default size

dit or create ~/.Xdefaults

Put something like this in it:
Emacs.geometry: 80x30+0+30
Save the file. This should make emacs open a window which is 80 characters wide, 30 lines tall, and shifted 0 pixels to the right and 30 pixels down from the upper left corner.

Then in a terminal run:
xrdb -merge ~/.Xdefaults
Launch emacs.

Wednesday, February 9, 2011

fastboot says "< waiting for device >" forever

To be able to use fastboot, you need to be running either an ADP1 or the Engineering Bootloader on your HTC phone.

If you are developing on a linux host, you may need to tweak UDEV to recognize the phone in fastboot mode. You may already have done this to get the phone recognized in Eclipse, but you need to do it again for fastboot, since fastboot uses a different device ID: 0bb4:xxxx. The warning sign is that fastboot says "<>" forever, even when you have the "FASTBOOT" message on the phone; if this happens, try adding the device ID 0bb4:xxxx to your UDEV configuration for Android.

The following config file, in /etc/udev/rules.d/11-android.rules, seems to work:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="xxxx", MODE="0666", OWNER="your login name"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="xxxx", MODE="0666", OWNER="your login name"

NOTE: change "your login name" to your Linux login ID. Also note that the product ID bit is optional (probably easier to leave it out), and you need to change "0bb4" to the vendor ID for your phone if it isn't made by HTC (whose vendor ID is 0bb4). You can find the vendor id using 'lsusb'. An alternative to this is just to run fastboot as root, using sudo.