Source code
The source code is available on Github.
It was coded with the PCW compiler by Custom Computer Services and using the included USB libraries.
Updates
The firmware contains a bootloader that allow you to reprogram the PIC through the USB connection, without the need of a dedicated PIC programmer.
To enter bootloader mode, you need only to keep the button pressed when you connect Type4me to your PC: the LED will stay turned on and the PC will detect it as CCS CDC Bootloader:
You can use the free ccsbootloader.exe utility, downloadable from Custom Computer Services website, to upload a new firmware: enter the correct COM port (in my example COM18) and your .hex file path:
Acknowledgements
I was able to design Type4me thanks to the support provided by the users in the Custom Computer Services forum and the users in the Microchip one.
A particular thanks to Embedded Adventures to have published schematics and source code for their USB2Serial Platform project: it’s a very good and cheap demoboard for PIC 18F14K50.
Well done!
By the way, why CCS?
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.
This is a perfect solution for me? Any kit availability?
Hi Chris,
not at the moment… but if you need a pre-programmed PIC or help for building it write me!
Good job. Now shrink it and sell it.
does the keyboard emulation work on linux too?
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.
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?
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).
Luca,
I’m looking for a device that will enter Ctl-N with a button push. i want to put this button on the top of a bar code scanner. I’m thinking that your device will do this and it wouldn’t be a big deal to make the buttom remote from the board. Your thoughts?
Chris
Hi Chris
sending CTRL-N is not a problem at all! About remoting… I’d probably choose a couple of inexpensive nRF24L01.
If you like, write me an email!
Luca,
This device would be perfect for a particular use case: copying a long complex password from a password vault running on 1 PC and “typing” it into the Windows password field on another.
Could we remove the “save to EEPROM” routine and just put a small battery on it to maintain the memory while moving it from one PC to the other? I’d also add an on/off switch to save battery when not in use and to force an erasure of the password. This would also prevent a technician from storing a password permanently in the unit, as sooner or later the battery would run out.
Also, could you add toggles in the GUI for !enter! vs !noenter!! and !save! vs not doing a !save! on each copy?
Mike
Hi Luca,
can I use this device to automatic typing ctrl-alt-canc and user/password for windows7 logging on a specified time?
Thanks,
Aldo from Palermo
Hi Aldo, with some firmware modification, yes. A user has already implemented something similar to automatically change the BIOS password.