MUSB16

Developing a small device using the MUSB16 board

Well almost a year to the day that I last posted here. We did a turn on the MUSB16 small USB board We have been working on. We cleaned up the debug port so you can now hook a PICKit3 directly to it without turning it upside down. We also obtained some 8meg surface mount crystals. You can see the board here. Version 2 should be good to go. We are working on a couple of projects with it to make sure that it is working properly.

MUSB16-1

MUSB16-1

We have been working with this board for a while now. There have been a couple of items developed with it. The first one was a small device to control the power to another device that we have been working on for another company. This device is the Listenpoint assistive listening device. It is used in class rooms to help hearing impaired students. The testing on this device included the ability to enumerate the Listenpoint device on a PC. The box we built controlled the power enabling a test of the enumeration on power up.

We have been working on a small board that takes a PIC24FJ64GB002 and uses the USB on chip peripheral to communicate with a PC. We have our first run of the boards. They are working with one hitch. We have to turn the PICKit3 upside down on the connector to program the boards. This was our first attempt at using Eagle as a layout tool. Before this we were using Protel. It was a lot of work to make the transition and we are happy with the fact that our only problem is the reversed debug connector on the board. There are a few other things that need to be cleaned up but it is working.

MUSB16-2

MUSB16-2

Software

The software is based on the “USB Device – CDC – Basic Demo” in the Microchip Solutions download. The project in the download doesn’t directly support the GB002 device but with a little persuasion it does work. We added a small command interpreter to prove that we were indeed talking to the board via USB.

The firmware and driver provide a virtual com port which can be accessed with any software that has the capability of talking with a serial port. As a preliminary test we used TeraTerm. This proved useful and were very happy to see the version come up for the first time. We are using XP as the OS for all of our testing. We are going to be moving to Windows 7 as we are getting new computers and that is what they come with.

 

Problems

During this process we ran into another snag besides the debug connector and that is the crystal. In our bread board we used a 4meg crystal which worked for us. When we ordered parts for the MUSB16 board we ordered 8meg crystals. We haven’t made the 8meg crystals work yet so we substituted a through hole 4meg crystal to get it working. I’m not sure if we are going to pursue the 8meg crystals or just order some 4meg crystals. That remains to be seen.

The reversed connector really can’t be blamed on the switch from Protel to Eagle. When we checked the board it was noticed that pin one was on the wrong side to connect the debug port to so that was switched. We didn’t catch that the pins were reversed on the connector which later required us to flip the PICKit3 upside down. Happily, we didn’t have to do any cuts or jumpers. We are working on V2 which should correct this problem.