Wednesday, May 8, 2024

MSP430 Development on Linux

For the last few years, I've moved as many of my programming projects as possible from Windows to Linux. This includes PIC32 programming as explained in MIPS Development on Linux. My most recent MSP430 projects like the Electronic Birthday Card, Kitty Salon, and some Christmas tree ornaments for this past Christmas were programmed entirely on Linux. On the other hand, my Tiny Calculator project, which started in 2018, is compiled with IAR Embedded Workbench running on Windows. Since returning to the Tiny Calculator is one of my goals for the coming year, I spent some time improving my MSP430 setup on Linux.

Saturday, March 9, 2024

Calculator Keypads

As described in my 2023 goals post, my plan for the year was to finish enough projects to give a presentation at the 2023 Hewlett-Packard Handheld Conference (HHC). Even though I didn't finish everything on my list, there were still enough interesting things to give a presentation on including my Blinky Robot and 6507 Calculator Forth Virtual Machine. The largest part of the presentation was about building calculator keypads.

While building a circuit board or writing the firmware for a calculator are achievable goals for a hobbyist or amateur, building a keypad tends to be much more challenging. The keys themselves can be made on a 3D printer, but getting good quality labels on the keys is very difficult. Since none of my calculator projects so far have had really good keypads, I decided to try every method available for making keys to compare the results.

3D Model
The 3D model for the test consists of eight rows of five keys each designed in OpenSCAD for my still unfinished 6507 Graphing Calculator. OpenSCAD has been my go-to program for modeling since I started with 3D printing a few years ago. The biggest advantage of this program is that the entire model is specified by a script so nothing needs to be manipulated or placed by hand. This works well for people like me who don't have a lot of artistic talent but feel comfortable with programming. It's cheap and relatively quick to print out a set of these keys on my Ender 3.