Teensy Script Plays Nintendo Switch, Strikes Out

The most recent of the Zelda franchise, Breath of the Wild, is known for its many, many puzzles.  One of the more frustrating ones involved bowling with a giant snowball at the top of a hillside.  [Bertrand] did not like this, so he cheated the system hacked the Nintendo Switch so that he “genuinely earned” a strike every time he played.  He achieved this by writing a script for a Teensy module that got him those sweet rupees.

The Teensy houses an Atmel 90USB1286 microcontroller.  When paired with LUFA software, it can emulate numerous controllers including keyboards, joysticks, etc.  It also handily has a Mini-B USB connector located on its rear, allowing it to communicate to the Switch with ease.  After confirming the hardware was compatible, [Bertrand] looked towards the software side noticing the similarity between what already existed and what he was attempting to accomplish.  He happened upon this in a Splatoon 2 fork that allows players to draw posts. 

In essence, it takes image files as input and emulates the controls and buttons to draw a 1-bit version of the image automatically.  This takes care of syncing the hardware as well as how to simulate the button presses.  But instead of reading an image file, it needed to take a custom script as the input.  This required starting from scratch.  The first logical step — of course — was to create a language similar to Logo, a name that surely brings back memories of the time of big hair and shoulder pads.  He only needed a handful of simple commands to control Link:

typedef enum {
	UP,
	DOWN,
	LEFT,
	RIGHT,
	X,
	Y,
	A,
	B,
	L,
	R,
	THROW,
	NOTHING,
	TRIGGERS
} Buttons_t;

Continue reading “Teensy Script Plays Nintendo Switch, Strikes Out”

Balancing Robot Needs Innovative Controller and Motor

A self-balancing robot is a great way to get introduced to control theory and robotics in general. The ability for a robot to sense its position and its current set of circumstances and then to make a proportional response to accomplish its goal is key to all robotics. While hobby robots might use cheap servos or brushed motors, for any more advanced balancing robot you might want to reach for a brushless DC motor and a new fully open-source controller.

The main problem with brushless DC motors is that they don’t perform very well at low velocities. To combat this downside, there are a large number of specialized controllers on the market that can help mitigate their behavior. Until now, all of these controllers have been locked down and proprietary. SmoothControl is looking to create a fully open source design for these motors, and they look like they have a pretty good start. The controller is designed to run on the ubiquitous ATmega32U4 with an open source 3-phase driver board. They are currently using these boards with two specific motors but plan to also support more motors as the project grows.

We’ve seen projects before that detail why brushless motors are difficult to deal with, so an open source driver for brushless DC motors that does the work for us seems appealing. There are lots of applications for brushless DC motors outside of robots where a controller like this could be useful as well, such as driving an airplane’s propeller.

Flappy Bird is the New “Does it Run Doom?”

Back in 2014 [Johan] decided to celebrate BASIC’s 30 50 year anniversary by writing his own BASIC interpreter. Now, a few years later, he says he feels he has hit a certain milestone: he can play Flappy Bird, written in his own version of BASIC, running on his own home-built computer, the BASIC-1.

Inside the BASIC-1 is an Atmel XMega128A4, a keyboard from a broken Commodore 64, a joystick port, a serial to TV out adapter, and an SD card adapter for program storage. An attractively laser-cut enclosure with kerf bends houses the keyboard and hardware. The BASIC-1 boots into BASIC just like many of its home computer counterparts from the 80s.

Continue reading “Flappy Bird is the New “Does it Run Doom?””

Does This Demo Remind You of Mario Kart? It Should!

Here’s a slick-looking VGA demo written in assembly by [Yianni Kostaris]; it’s VGA output from an otherwise stock ATmega2560 at 16MHz with no external chips involved. If you’re getting some Super Mario Kart vibes from how it looks, there’s a good reason for that. The demo implements a form of the Super Nintendo’s Mode 7 graphics, which allowed for a background to be efficiently texture-mapped, rotated, and scaled for a 3D effect. It was used in racing games (such as Super Mario Kart) but also in many others. A video of the demo is embedded below.

[Yianni] posted the original demo a year earlier, but just recently added detailed technical information on how it was all accomplished. The AVR outputs VGA signals directly, resulting in 100×120 resolution with 256 colors, zipping along at 60 fps. The AVR itself is not modified or overclocked in any way — it runs at an entirely normal 16MHz and spends 93% of its time handling interrupts. Despite sharing details for how this is done, [Yianni] hasn’t released any code, but told us this demo is an offshoot from another project that is still in progress. It’s worth staying tuned because it’s clear [Yianni] knows his stuff.

Continue reading “Does This Demo Remind You of Mario Kart? It Should!”

Custom Data Writer Board For 1996 Plane’s GPS

[Dmitry Grinberg] recently bought a Cessna 150 that contained an old IFR-certified GPS from 1996, the KLN89B. The GPS unit contains a database which by law has to be kept up-to-date for IFR flight. The problem was that, while Honeywell still supplied the data in electronic form, [Dmitry] had no way to update the GPS. The original ways for doing it are either no longer supported, too expensive and a pain to do, or not available to him due to the way his GPS was installed.

Two of those ways involved removing a data card which can legally be slid out of the GPS’s front panel. The data card is what stores all the data but it’s a proprietary card and there’s no reader for it. [Dmitry]’s solution was therefore to make his own reader/writer board.

Continue reading “Custom Data Writer Board For 1996 Plane’s GPS”

Hook Any Mouse to an Acorn

Acorn was one of the great IT giants that rose high and then fell to obscurity during the rise of personal computing. However, for many hobbyists these computers are as important and as loved as the Commodore 64. [Simon Inns] has made a great adapter to interface modern USB mice to these old boxes. 

After thirty years of interaction with people, one might be hard pressed to find a working mouse for an older computer. On top of that, even if you did, these mice are likely a lackluster experience to begin with. They were made long before industrial designers were invited to play with computers and are often frustrating and weird. Cotton swabs and alcohol are involved, to say the least.

[Simon]’s box converts a regular USB HID compliant mouse to a quadrature signal that these 8-bit computers like. The computer then counts the fake pulses and happily moves the cursor around. No stranger to useful conversion boxes, he used an Atmel micro (AT90USB1287) with a good set of USB peripherals. It’s all nicely packed into a project box. There’s a switch on the front to select between emulation modes.

If you’d like one for yourself the code and schematics are available on his site. As you can see in the video below, the device works well!

Continue reading “Hook Any Mouse to an Acorn”

What’s The Deal With Atmel And Microchip?

It’s been nearly a year since Microchip acquired Atmel for $3.56 Billion. As with any merger, acquisition, or buyout, there has been concern and speculation over what will become of the Atmel catalog, the Microchip catalog, and Microchip’s strategy for the coming years.

For the Hackaday audience, this is a far more important issue than Intel’s acquisition of Altera, On Semi and Fairchild, and even Avago’s purchase of Broadcom in the largest semiconductor deal in history. The reason Microchip’s acquisition of Atmel is such an important issue is simply due to the fact the Hackaday community uses a lot of their parts. This was a holy war, and even changing the name of a line of chips to ‘MCMega’ would result in a consumer rebellion, or at least a lot of very annoying tweets.

For the record, I’ve tried my best to figure out what’s going on with Microchip’s acquisition of Atmel for the last few months. I’ve talked to a few Microchip reps, a few Atmel reps, and talked to a few ‘out of band’ connections – people who should know what’s going on but aren’t directly tied to either Atmel or Microchip. The best I’ve come up with is a strange silence. From my perspective, it seems like something is going on, but no one is saying anything.

Take the following with several grains of salt, but Microchip recently got in touch with me regarding their strategy following their Atmel acquisition. In a few thousand words, they outlined what’s going on in casa Microchip, and what will happen to the Atmel portfolio in the future.

Broad Strokes

In broad strokes, the Microchip PR team wanted to emphasize a few of the plans regarding their cores, software, and how Microchip parts are made obsolete. In simple, bullet point terms, this is what Microchip passed on to me, to pass on to you:

  • Microchip will continue their philosophy of customer-driven obsolescence. This has historically been true – Microchip does not EOL parts lightly, and the state of the art from 1995 is still, somewhere, in their catalog.
  • We plan to support both Atmel Studio 7 and MPLAB® X for the foreseeable future.
  • Microchip has never focused on “one core”, but rather on the whole solution providing “one platform.” This is also true. A year ago, Microchip had the MIPS-based PIC-32 cores, a few older PIC cores, and recently Microchip has released a few ARM cores. Atmel, likewise, has the family tree of 8 and 32-bit AVR cores and the ARM-based SAM cores.
  • We will continue to support and invest in growing our 8-bit PIC® and AVR MCU product families.

Specifics

In addition to the broad strokes outlined above, Microchip also sent along a few questions and answers from Ganesh Moorthy, Microchip’s President and COO. These statements dig a little bit deeper into what’s in store for the Microchip and Atmel portfolios:

How will the 32-bit products complement each other? Atmel has a few 32-bit microcontrollers, like the SAM and AT32 series. Microchip has the PIC-32. The answer to this question is, “Many of the 32-bit MCU products are largely complementary because of their different strengths and focus.  For example, the SAM series has specific families targeting lower power consumption and 5 volts where PIC32 has families more optimally suited for audio and graphics solutions. We plan to continue investing in both SAM and PIC32 families of products.

Will Atmel’s START support 8-bit AVRs? “Yes, although it is too early to commit to any specific dates at this stage, we consider modern rapid prototyping tools, such as START and the MPLAB Code Configurator, strategic for the our customers to deliver innovative and competitive solutions in this fast-paced industry.”

Now that Microchip has a complete portfolio of low-power, inexpensive 32-bit microcontrollers, will the focus on 8-bit product be inevitably reduced? No, we see that in actual embedded control applications there is still a large demand for the type of qualities that are uniquely provided by an 8-bit product such as: ease-of-use, 5V operation, robustness, noise immunity, real-time performance, long endurance, integration of analog and digital peripherals, extremely low-static power consumption and more. We don’t think that the number of bits is an appropriate / sufficient way to classify a complex product such as the modern microcontroller. We believe that having the right peripherals is actually what matters most.”

Security, Memories, WiFi, and Analog products. For both Atmel and Microchip, the most visible products in each of their portfolios is the lineup of microcontrollers. This isn’t the limit of their portfolios, though: Atmel has space-grade memories, Microchip has some very useful networking chips, and both companies have a number of security and crypto chips. In the statements given by Moorthy, very little will change. The reason for this is the relative lack of overlap in these devices. Even in segments where there is significant overlap, no EOLs are planned, circling back to the, “philosophy of customer-driven obsolescence.” In other words, if people keep buying it, it’s not going away.

The Takeaway

What is the future of Microchip post-Atmel acquisition? From what I’m seeing, not much. Microchip is falling back on their philosophy of ‘customer-driven obsolescence’. What does that mean? Any non-biased assessment of Microchip’s EOL policy is extremely generous. The chip found in the Basic Stamp 1, from 1993, is still available. It’s not recommended for new designs, but you can still buy it. That’s impressive any way you look at it.

The one thing we’re not getting out of this pseudo press release is information about what Atmel will be called in a few years. Will the Atmel mark be subsumed by a gigantic letter ‘M’? Will the company retain two different trademarks? There is no public information about this.

Yes, I know this post is a nearly verbatim copy of a pseudo press release. I’m not particularly happy this information was presented to me this way, but then again, the Atmel/Microchip ecosystem has been impressively secretive. This is the only information that exists, though, and I’m glad to have it in any event.

That said, there are a lot of people in the Hackaday community that want to know what the deal is with Microchip and Atmel. Short of pulling Jerry Seinfeld out of retirement, this is the best we’re going to get for now. Of course, if you have any info or speculation, the comments below are wide open.