Open Source Calculator Teaches Us About Quality Documentation

Graphing calculators are one of those funny markets that never seem to change. Standardized testing has created a primordial stew of regulatory capture in which ancient technology thrives at modern retail prices while changing little. The NumWorks calculator certainly isn’t the first competitor to challenge the Texas Instruments dynasty with a more modern interface (and a design from this decade), but behind it’s subtle color pops and elegant lines lies the real gem; a fantastically well documented piece of open source hardware. The last time we wrote about the NumWorks, it was to demonstrate a pretty wild hack that embedded an entire Pi Zero but it’s worth drawing attention to the calculator itself.

Hackaday readers traveling to the NumWorks website might spy the section at the bottom of the page titled “Developers” with tantalizing links like “Hardware,” “Software,” and “GitHub.” These lead to a wealth of knowledge about how the product is put together and sources to build the enclosure and firmware yourself (the PCB schematic and layout sources seem to be missing, though there is this handy gerber viewer). However merely posting sources is a low bar NumWorks far exceeds.

How is the firmware put together? Here’s a handy architecture guide! Why did they choose C++ and what tradeoffs were made to fit everything in a resource constrained embedded system? Here’s a design guide! How exactly does the math engine take in text, comprehend the expression contained therein, and evaluate it? There’s a document for it! There’s even a multi-platform SDK setup guide.

Firmware documentation is old hat; we’ve come to expect (or at least hope!) for it. For us the most interesting documentation is actually for the mechanical and electrical systems. The EE guides start with part selection (with datasheet links) then move on to walkthroughs of major areas of the schematic. At this point is should be no surprise that the board has pads for a completely standard 10 pin ARM debug connector and documented test points for UART, SPI, and an SD card.

The mechanical pages read like a quick primer on design for injection molding and tricks to reduce assembly errors (called “poka-yoke“). Ever wondered what that funny frame plastic models come in is called? The NumWorks calculator’s buttons are made in one, and it’s called a “sprue”. There are pages describing each piece of the housing one at a time.

Treat yourself to a reading of NumWorks’ excellent documentation. And if you need a new calculator, maybe consider the open source option.

Continue reading “Open Source Calculator Teaches Us About Quality Documentation”

Circuit-Sword Delivers Retro Justice

You can’t search for “retro gaming” without hitting a plethora of single board computers attached to all manner of controls, batteries, etc. Often these projects have an emphasis on functionality above all else but [Kite]’s Circuit-Sword is different. The Circuit-Sword is the heart of a RaspberryPi-based retro gaming machine with an enviable level of fit and finish.

Fundamentally the Circuit-Sword is a single board computer built around a Raspberry Pi Compute Module 3. We don’t see many projects which use a Compute Module instead of the full Pi, but here it is a perfect choice allowing [Kite] to useful peripherals without carrying the baggage of those that don’t make sense for a portable handheld (we’re looking at you, Ethernet). The Circuit-Sword adds USB-C to quickly charge an onboard LiPo (rates up to 1.5A available) and the appropriate headers to connect a specific LCD. The Compute Module omits wireless connectivity so [Kite] added an SDIO WiFi/Bluetooth module. And if you look closely, you may notice an external ATMega mediating a familiar looking set of button and switches.

Optional Drill Holes

We think those buttons and switches are the most interesting thing going on here, because the whole board is designed to fit into an original GameBoy enclosure. It turns out replacement enclosures are available from China in surprising variety (try searching for “gameboy housing”) as are a variety of parts to facilitate the installation of different screen options and more. One layer deeper in the wiki there are instructions for case mods you may want to perform to make everything work optimally. The number of possible options the user can mod-in are wide. Extra X/Y buttons? Shoulder buttons on the back? Play Station Portable-style slide joysticks? All detailed. For even more examples, try searching the SudoMod forums. For example, here’s a very visual build log by user [DarrylUK].

The case mod instructions are worth a glance even if you have no intent to build a device. There are some clever techniques to facilitate careful alignment of buttons and accurate hole drilling. Predicting their buyers might want a variety of options, [Kite] added reference drill holes in the PCB for the builder to re-drill for mounting buttons or joysticks. To facilitate adding status LEDs externally there is a tiny PCB jig included. There are even instructions for adding a faux game cartridge for the complete look.

If you want to buy one (we certainly do!) [Kite] does group buys periodically. Check out the wiki for links to the right interest form.

Thanks [Speednut Dave] for the tip!

The Era Of Orville Props Has Officially Begun

Over a decade after the last Star Trek show warped off of television, we finally have a new series in the form of Star Trek: Discovery. But much to the chagrin of many old school Trek fans, Discovery has gone all in on the gritty and hyper-serialized storytelling that’s taken over TV since Starfleet last patrolled the airwaves. But for those who are looking for somewhat more lighthearted space adventures, Seth MacFarlane (of Family Guy fame) has created a show which is essentially a love-letter to Star Trek: The Next Generation called The Orville. Some have gone as far as to claim that The Orville is the true continuation of the Trek legacy, though such discussion sounds awfully close to a Holy War to us so we’ll steer clear.

Unfortunately for The Orville fans, the series doesn’t have nearly the commercial draw of Trek. Accordingly, the market for things like replica uniforms and props from the show is still in its infancy, meaning fans of the show have to go the DIY route. [JohnSmallBerries] is one such fan, and his 3D printed “Comscanner” from The Orville is a shot across the bow to the well established Trek prop-making scene.

Without so much as an official toy version of the device, [John] was forced to do his initial 3D rendering based completely on screenshots from the show. Even the scale of the device had to be guessed, as it’s usually only seen being held in a crew member’s hand. In the end he reasoned it’s probably supposed to be about the size of a large smartphone.

Not content with just a static prop, [John] managed to integrate not only the spring-assisted retractable display of the scanner from the show, but also some LED backlit panels complete with a screen-accurate user interface. Judging by the internal shots of the scanner, it looks like there’s still plenty of room inside to add some more advanced electronics. The next evolution of this prop will surely be to add in a microcontroller and potentially even a real screen to add some more elaborate effects and (relatively) practical functions.

We’ve seen plenty of impressive builds of Star Trek gadgets, arguably bringing the devices much closer to reality than the original show runners ever did. It will be interesting to see if The Orville inspires a new generation of engineers to bring their favorite fictional pieces of kit into the real world.

Teardown: The Oregon Trail Handheld

If you were a school-age child in the 1980’s or 1990’s, you almost certainly played The Oregon Trail. Thanks to its vaguely educational nature, it was a staple of school computers until the early 2000’s, creating generations of fans. Now that those fans are old enough to have disposable incomes, we are naturally seeing a resurgence of The Oregon Trail merchandise to capitalize on one of humanity’s greatest weaknesses: nostalgia.

Enter the Target-exclusive The Oregon Trail handheld game. Priced at $24.99 USD and designed to look like the classic beige-box computers that everyone of a certain age remembers from “Computer Class”, it allows you to experience all the thrills of dying from dysentery on the go. Naturally there have been versions of the game for mobile devices in the past, but how is that going to help you when you want to make your peers at the coffee shop jealous?

But we’re not here to pass judgement on those who hold a special place for The Oregon Trail in their hearts. Surely, there’s worse things you could geek-out on than interactive early American history. No, you’re reading this post because somebody has put out a handheld PC-looking game system, complete with a simplified keyboard and you want to know what’s inside it. If there was ever a cheap game system that was begging to be infused with a Raspberry Pi and some retro PC games, this thing is it. Continue reading “Teardown: The Oregon Trail Handheld”

RC Transmitter Hacked Into Music Player

Packed with an incredible amount of hardware, and increasingly likely to be running an open source firmware, the modern RC transmitter is effectively a little multi-purpose computer in its own right. Accordingly there is a small, but growing, community of developers coming out with software applications targeting these switch-festooned wonders. It’s only a matter of time until they are running DOOM.

One such piece of software is TaraniTunes, developed by [GilDev]. This program allows you to load your OpenTX 2.2+ equipped Taranis Q X7 or Taranis X9D with music files which can be played on the transmitter’s built-in speaker. While it likely won’t win any awards for interface design, the large LCD display coupled with the radio’s numerous physical buttons and switches makes it relatively easy to navigate your music collection.

While the software [GilDev] has written for OpenTX looks straightforward enough, getting the songs on the radio is another story. For each track you need to merge the stereo channels into mono (as the transmitter only has a single speaker), and then convert it to a 32 kHz WAV. But don’t worry about the lack of ID3 tag information, TaraniTunes allows you to create a text file containing not only the filename of each track, but its name and artist.

We’ll admit this one should be filed away in the “Because I Can” category, but it’s still an impressive hack and a clever demonstration of the current state of RC transmitter technology.

Continue reading “RC Transmitter Hacked Into Music Player”

Regrowing A Blackberry From The Keyboard Out

Here at Hackaday we’re big fans of device-reuse, and what [arturo182] has done with the Blackberry Q10’s keyboard is a fantastic example. Sometimes you’re working on a portable device and think to yourself “what this could really use is a QWERTY keyboard”. What project doesn’t need a keyboard?

Typically this descends into a cost benefit analysis of the horrors of soldering 60ish SMD tact switches to a board, which is no fun. With more resources you can use Snaptron snap domes like the [NextThingCo’s] PocketCHIP, but those are complex to source for a one off project and the key feel can be hard to really perfect. Instead of choosing one of those routes, [arturo182] reverse engineered the keyboard from a Blackberry Q10.

When you think of good, small keyboards, there has always been one standout: Blackberry. For decades Blackberry has been known for absolutely nailing the sweet tactile feel of a tiny key under your thumb. The Q10 is one example, originally becoming avalible in 2013 as one of the launch devices for their then-new Blackberry OS 10. Like most of Blackberry’s business the OS and the phone are long out of date, but that doesn’t mean the keyboard has aged.

[Arturo182] says he can find them from the usual Chinese sources for around $3 each, which is too cheap to not explore. Building on the work of [WooDWorkeR] (on Hackaday.io) and [JoeN] to reverse engineer the matrix and to find the correct connector, he integrated the keyboard into an easy to use breakout board that exposes the key matrix, per-row backlight controls, and even the MEMS mic! More excitingly, he has built a small portable device with all the trappings of the original Q10; a color LCD, joystick, function buttons, and more in a very small footprint.

KiCAD sources, including 3D models, for the keyboard and for the breakout board are available.

Now if only someone can find a way to salvage the unusual square, high-DPI displays from the Q10, we’d be in portable device nirvana.

Continue reading “Regrowing A Blackberry From The Keyboard Out”

Graphing Calculator Dual Boots With Pi Zero

The nearly limitless array of consumer gadgets hackers have shoved the Raspberry Pi into should really come as no surprise. The Pi is cheap, well documented, and in the case of the Pi Zero, incredibly compact. It’s like the thing is begging to get grafted into toys, game systems, or anything else that could use a penguin-flavored infusion.

But this particular project takes it to the next level. Rather than just cramming the Pi and a cheap LCD into his Numworks graphing calculator, [Zardam] integrated it into the device so well that you’d swear it was a feature from the factory. By exploiting the fact that the calculator has some convenient solder pads connected to its SPI bus, he was able to create an application which switches the display between the Pi and the calculator at will. With just a press of a button, he’s able to switch between using the stock calculator software and having full access to the internal Pi Zero.

In a very detailed write-up on his site, [Zardam] explains the process of getting the Pi Zero to output video over SPI. The first part of the battle was re-configuring the GPIO pins and DMA controller. After that, there was the small issue of writing a Linux SPI framebuffer driver. Luckily he was able to find some work done previously by [Sprite_TM] which helped him get on the right track. His final driver is able to push 320×240 video at 50 FPS via GPIO, more than enough to kick back with some DOOM.

With video sorted out, he still needed a way to interface the calculator’s keyboard with the Pi. For this, he added a function in his calculator application that echoed the keys pressed to the calculator’s UART port. This is connected to the Pi, where a daemon is listening for key presses. The daemon then generates the appropriate keycodes for the kernel via uinput. [Zardam] acknowledges this part of the system could do with some refinement, but judging by the video after the break, it works well enough for a first version.

We’ve seen the Pi Zero get transplanted into everything from a 56K modem to the venerated Game Boy, and figured nothing would surprise us at this point. But we’ve got to say, this is one of the cleanest and most practical builds we’ve seen yet.

[Thanks to EdS for the tip]

Continue reading “Graphing Calculator Dual Boots With Pi Zero”