Getting started guide

Hardware projects are fun, but challenging. The object of Project Amethyst is to provide a set of examples in the hope you can adapt and learn from them for your own purposes. As is made clear by the licence under which it is distributed, there is explicitly no warranty or implied fitness for purpose. Levels of experience range widely and your success will always reflect the effort you invest.

Required skills

Some experience with electronics is ideal, but not absolutely essential if you are prepared to do some background research, be patient and take it slowly. The level of electronics in, for example, NARG is reasonably basic. The Microchip PIC, the microcontroller used in this design, is very forgiving and has an enormous following online.

Some experience with C and C++ will also be extremely useful, maybe even essential, depending on how much customisation you want to do. If you've dabbled a bit, then hopefully the code in the PA repo will be enough to get you started. Debugging is an art at any level, but debugging firmware is especially so. The ICD (in-circuit debugger) tool is excellent — but it can't always be used when debugging things like USB, where sometimes your only debugging tool is an LED or an oscilloscope (if you have one!)

Get the tools

  1. Most of the software tools required to develop Project Amethyst-based devices are available for free:

  2. Get the hardware tools (eventually). In addition to the components for the hardware, you'll need a Microchip programmer/debugger such as the ICD2 or ICD3. I'm afraid you'll have to pay for one of those, though I believe there are cheaper, 3rd party implementations available.

  3. Get the Project Amethyst source package:

    svn co proj-amethyst

Familiarise yourself with the PA repository

There are three main parts — PCB, firmware and host driver — briefly outlined in the following sections.

PCB schematics and layout

Coming soon...

Microcontroller firmware

Coming soon...

Host driver code

Coming soon...

Tips for digital design

Here is a very non-exhaustive list of tips and suggestions that may be of assistance to novices. Any additional suggestions I haven't thought of are welcome.

dave_infj at
$Id: gsg.html 223 2012-01-10 12:40:52Z dave_infj $
Get Project Amethyst at Fast, secure and Free Open Source software downloads