Type4me

luca Monday January 14th, 2013 10

Today’s project was designed to solve the need to enter, using a keyboard, the same sequence of characters (a password, a greeting…) many times.

General description

Type4me is a composite USB device, that is composed by two elements:

  • an USB keyboard
  • serial port

You can send the characters to be typed through the serial connection; in addition the device supports some commands to save/clear the sequence of characters and to include/not include a “return” at the end of it.

All the project’s files (schematics, pcb, firmware…) are available on my Github’s repository.

Schematics

The heart of Type4me is a PIC18F14K50 microcontroller, that includes a slave USB peripheral used to communicate with the PC. The microcontroller needs a 12MHz clock for USB operations; clock provided by Q1 crystal with C2 and C3 capacitors. C4 and C5 capacitors are used to decouple the power supply.

Partlist includes the S1 switch, with its pull-up resistor R1 and the (optional) C1 capacitor for de-bouncing and LED1 led with R2 resistor.

JP1 connector is for programming the microcontroller using an ICSP programmer (for example Microchip’s PICkit).

Pages: 1 2 3 4

10 Comments »

  1. Dario Monday January 14th, 2013 at 08:16 PM - Reply

    Well done!
    By the way, why CCS?

    • luca Monday January 14th, 2013 at 09:36 PM - Reply

      Hi Dario,

      thanks! I chose CCS mostly because of its great ready-to-use libraries, especially the USB stack. I tried to use the new “XC” microchip compiler but at the moment it’s not very mature and it’s hard to use it with Microchip USB stack so I gave up.

  2. Chris Monday January 14th, 2013 at 11:29 PM - Reply

    This is a perfect solution for me? Any kit availability?

    • luca Tuesday January 15th, 2013 at 09:58 AM - Reply

      Hi Chris,

      not at the moment… but if you need a pre-programmed PIC or help for building it write me!

  3. zaion Tuesday January 15th, 2013 at 09:11 AM - Reply

    Good job. Now shrink it and sell it.

  4. lucasvb Tuesday January 15th, 2013 at 09:45 AM - Reply

    does the keyboard emulation work on linux too?

    • luca Tuesday January 15th, 2013 at 09:55 AM - Reply

      Yes: it’s a HID device so under Linux you don’t need any drivers.
      Actually CDC drivers are only for Windows, I haven’t tried if you can use “generic” drivers under Linux.

  5. Chris Tuesday January 15th, 2013 at 06:21 PM - Reply

    Does this have the ability to store multiple pieces of text? For instance, can I store 3 or 4 different items, and then pick which one I want?

    • luca Tuesday January 15th, 2013 at 08:11 PM - Reply

      Hi Chris,

      not at the moment, the v1 of Type4me was kept intentionally simple… v2 will have more buttons (I think 4) and a GUI (to create complex sequences like the one shown to play MAME).

Leave A Response »