Great question, Neil. As a programmer, my transitions were TRS-80 Basic, Z80, Forth, Fortran on VAX/VMS, Cobol, C, and then UNIX, and almost every language that the various UNIX flavours have. I've _never_ owned a Microsoft Windows system, but once or twice did have to target the platform professionally. That knowledge is way out of date, but the general principles for build tool chains can still be followed. 1. be wary of closed tool chains; the APIs are often faulty, never fixed (because of the closed nature), and you can waste days on simple things, or you are forced into relying on a user community, which can be great if there is one and has no barriers to entry, 2. paying for it is fine, but if you feel you'll be chasing up the tool chain vendor with questions, don't forget to cost your time as well as theirs, and if your initial estimate of what you'll need exceeds the cost of the license and support, perhaps you're paying too little, In terms of language and environment choice, the only cross-platform language for both desktop, laptop, and handheld computers today is JavaScript. The language has come a long way since it first appeared, and is now production capable. Your application could be in two parts; one part manages the serial connection, the other part provides the user interface. Suitable searches; "javascript serial port". I've not taken this path yet, but in the current market that's the path I would size up. I'd give myself about two weeks to do it right. --=20 James Cameron http://quozl.linux.org.au/ --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .