Sunday, April 24, 2016

PCBA Bringup: LCD verified


I managed to find some time on the bus ride back from LinuxFest Northwest to get the LCD working. The display will be used for onboard editing of the dictionary when using Stenosaurus in standalone mode - i.e., not using Plover and presenting itself as a normal USB keyboard to the host computer. When using Plover, the display isn't necessary, but might still be useful in some way I haven't thought of yet. Either way, Stenosaurus won't require any special drivers to work.

Next up to test are the microSD card and the USB port.

Wednesday, March 23, 2016

PCBA Bring Up Progress

We've had printed circuit board assembly (PCBA) for the Stenosaurus for several months, but I've only recently been able to begin properly testing it. Here are the tests I've run so far:

  1. Apply power. Nothing started smoking or even heating up. Success!
  2. Program the Stenosaurus to monotonously blink its LEDs. This took a horrendously long time, not because the program was difficult to write or because something was broken, but because the development tool chain for actually compiling and then loading the code onto the Stenosaurus took a long time to get right. Nothing was particularly difficult, but I ended up going through four different laptops, at least as many operating systems for those laptops, and a few combinations of various compilers, linkers, debuggers, and programmers. I'm happy to report that I now have a setup that works and is reasonably easy to replicate so that others can also start developing on Stenosaurus. (Of course, there is only one assembled PCB in existence, but that will hopefully change soon.) What's more, the LEDs blink as expected. Success!
  3. Program the Stenosaurus to blink the LEDs anytime a key is pressed. This was relatively straightforward and worked as expected for all keys. Success!

In short, everything is going well, though there's a lot more testing yet to do. Next steps include:

  1. Test the LCD.
  2. Test USB connectivity.
  3. Test SD card reading and writing.

That's pretty much it for the major subsystems. Once those are tested and check out, we move on to actually programming the Stenosaurus to be a working steno machine that interfaces to Plover via the TX Bolt protocol. This is where Hesky's good work from a few years ago (I can't believe it's been so long) will really shine. If things go well, his code that worked on an early development board will need only a bit of modification to work on the current prototype.

Of course, even if things go perfectly, I already have a short list of minor improvements I want to make to the board, which will require another production run. This list includes updating the style, positioning, and type of LEDs, moving the JTAG connector so its shroud doesn't interfere with nearby components, and revisiting the need for a JTAG connector in the first place (might use a pogo pin jig instead).

Progress is being made. Stay tuned.

Cheers,
Josh

Friday, January 8, 2016

First Mostly Complete Unit

Not to let too much time go by since the last post, here are the very first images of Stenosaurus that has all its main components:
  • assembled PCB
  • key caps
  • top and bottom enclosure panels
  • bent side rail
  • port farm back plate
Right away, you'll notice that the key caps and side rail have changed color from clear anodized aluminum to black anodized aluminum. The back plate, which is still clear anodized aluminum, shows the contrast. In the final units, the back plate will be the same color as the key caps and side rail. Most likely, there will be several color options available, including both clear and black.

There are still some features missing, such as rubber feet and tripod mount, but this is as close as we've yet come to a complete Stenosaurus. I'll be running some tests this weekend and will report back results soon.




The Enclosure Takes Shape

The enclosure Kurt designed is composed of four main pieces: a top panel of milled bamboo, a bottom panel of milled bamboo, and bent piece of aluminum that serves as most of the siding, and a straight piece of aluminum siding in the back that accommodates the micro USB connector and the microSD card slot. Below are shots Kurt took of an assembly of those first three components.

The wood has been stained and the aluminum has been bead blasted and clear anodized. The inner face of the bottom panel has recesses at the location of each key switch so that the switch pins that protrude slightly through the PCB won't interfere with the PCB sitting flush with the bottom of the enclosure. The circular hole in the center of the bottom panel will house a threaded insert for mounting to standard tripods.