-
Final Assembly
08/20/2014 at 14:18 • 0 commentsI've been working at maximum capacity getting units ready to ship to Kickstarter backers. It's been kind of insane. I've got a vacation coming up and I'm trying to get about 45 of these built before I go. The first build is always the hardest. Some of the components had some rework to correct some minor errors and that has made it a little harder to put them together. I had some vias underneath 1/8" jacks that needed to be epoxied. Some of the jacks are then lifted a little which makes it a struggle to get them in the faceplate. This will be alleviated if I do another run with a corrected circuit board. At least that's the biggest challenge and not some fatal flaw.
Sitting putting together your creation for hours and days upon end gives you plenty of time to reflect. When you've worked on something as intensely and as long as I have on Vectr, you begin to wonder how your design will be received. At the very least, you can stand back and say, 'Wow, I built that." But I think the real reward comes when you see someone's eyes light up as they play with your creation or when someone takes the time to send you a thank you note. Because in the end there isn't much point in building things if you can't share them. I just hope that people find this to be a fun, interesting, and beautiful device. And maybe I'd like to see one in a really cool Youtube video...
-
Starting Building
08/18/2014 at 17:01 • 0 commentsI have gotten a number of circuit boards manufactured and have started assembling the units to deliver to the Kickstarter backers. It has taken many months to gather all the components and many more months before that to design all of them. Now, I just need to go through the steps of building and shipping about 50 devices. The final steps are programming the boards, assembling the units with screws and nuts and such, testing each device, and shipping them out.
This weekend I worked on programming the boards. There are two circuit boards in the device. Each board requires programming. The 3D sensor board requires parameterization which normalizes the sensing space and defines values for a number of parameters which affect the user interaction. The parameterization is a single file that just needs to be programmed. It's not unique to each board. As far as I know, Vectr is one of the first devices in the world to use this IC, so I'm mostly on my own as far as the required processes and the best methods, but this seems to be a reasonable process. The image below shows what this programming looks like. One of the development kits comes with a USB to MGC3130 device that handles the firmware upgrade. You can see it plugged into the sensor board. The LEDs light up on their own as they're not being driven, but it's nice to see that they work. You can also see that this is a thick board. I found that extra thickness benefited the sensing.
The microcontroller needs firmware as well. Vectr uses a PIC32 microcontroller, so this process is straightforward.
Next, I'll be assembling units. Maybe I'll even get some help with that.
-
Crystal Stability
08/08/2014 at 12:27 • 0 commentsI got the boards from manufacturing and had 8 sets to check out. On some of them I noticed some strange behavior, they occasionally would be slow to start up or would stall at start up and not get going. It's not a huge problem, but I'm testing to make sure there are zero problems. These types of problems come from one of four places: power, reset, clock, or firmware. I know that the power situation is good and the reset circuit is straight out of the datasheet and I also know what the beginning of the code should do, so I went looking at the clock. Sure enough, this crystal is a little slow to stabilize. I played with the parallel capacitance values for a while, but that didn't change anything. So, I went to the datasheet for the microcontroller to see if there was anything I was misunderstanding. I came across this feature called Internal/External Switchover, which allows for "Two-Speed Start-up." What it does is start the microcontroller for the internal RC (Resistor/Capacitor) Oscillator while it waits for the primary crystal oscillator to stabilize. This worked the trick, I tested it on a number of units and powered them all up a hundred times to make sure the problem was banished. Phew. Problems arising at this point can either be very expensive or time consuming. I'm glad to find solutions.
-
Manufactured PCBsVerified
08/01/2014 at 13:12 • 0 commentsI received the first circuit boards from the manufacturer for verification. I found a few things, most notably that they had put the switch in backwards and that I may need to adjust my crystal parallel capacitance, but otherwise, they work great. The 3D sensing is very clean, accurate and works over a really nice distance. I tested all the other circuits and everything appears to be working, including a first for me, getting a working USB bootloader for user field upgrades. I have imagined different variations on the firmware to enable functionality like composition or extra performance features and I've planned in the ability to connect over I2C to expansion modules or other devices. It was pretty stressful waiting for these boards to come in because it was a sizable investment. The wife never missed an opportunity to remind me. All in all, I'm very excited to be nearly finished with this project. I've been working really hard to finish the software. This project has been by far the most difficult challenge I have ever tackled. I'm so close to success. Smells like solder.