Enter RPN

R47: USB-C
Login

R47: USB-C

Motivations

What is the USB-C port on the R47 good for? This article attempts to catalog all known use cases.

Flash Memory Mode

The R47 has an internal FAT filesystem for storing various things:

  1. Firmware images during the update process
  2. BMP-formatted “OFF” mode images
  3. State and program files
  4. Screen shots

And more!

Yet, plugging the R47 into a PC does not instantly turn it into an overpriced and oversized memory stick. Because USB-C on this calculator is used for so much else — read on! — and because the calculator must be in a “settled” state to offer up the delicate FAT filesystem with any amount of surety against corruption, the R47 requires you to explicitly go into that mode via 🟧 PREF ActUSB and then later explicitly detach it. In descending order of safety, your options are:

Provide Power

When plugged into a USB-C power source, the R47 shifts over from being powered by its internal CR2032 coin cell to taking power from the USB-C port. The coin cell should last quite a long time in normal use, but there are good use cases for shifting to USB-C power, as when dealing with a long-running program that would otherwise drain the cell in one big gulp.

It may surprise you that the R47 does not deactivate its idle sleep feature while on USB-C power. Even so, having a constant power source can combine nicely with other features noted here. For instance, when using the R47 as the world’s nerdiest stopwatch, a running timer keeps the calculator from sleeping unless you switch away from the STOPW menu, in which case the timer keeps running, at a cost to power draw. Running your R47 from USB-C power is a good idea in this case.

Note that USB PD is not involved here. Even in the worst case, the R47’s power draw fits well within the baseline power delivery level. Besides which, the USB-C connector is backed by an old-school USB 2.0 bus, predating the PD features.

You can tell that you are no longer pulling power from the coin cell by checking for the USB icon in the upper right corner of the R47’s screen.

Higher Clock Rate

On coin cell power, the CPU inside the R47 runs at 48 MHz. On USB-C power, it shifts to the CPU’s maximum clock rate, 160 MHz, at a cost to power draw. While long-running tasks might complete up to 3 ⅓ times faster, this difference will not matter for most operations. Yet, there are good use cases where it is worth seeking out a USB-C power source.

Increased Clock Accuracy

On battery, the R47’s internal CPU clock comes from a low-accuracy on-chip oscillator. This is fine for calculation, as all we are gating here is the tradeoff in the race-to-idle paradigm, but when using the features like 🟦 CLK STOPW, you may get more accurate results on USB-C power because the CPU shifts to a PLL disciplined by the bus clock.

Firmware Development

The STM32U575 microcontroller at the heart of the R47 has several low-level capabilities involving the USB port. While I have no direct experience with these, I expect it is possible to connect a debugger, reflash the chip directly without involving the DMCP layer, and so forth.

(You may now wish to return to my R47 article index.)

License

This work is © 2025 by Warren Young and is licensed under CC BY-NC-SA 4.0