retia@sheen:~$ cat readme.md

Newsheen

A cute cat lamp with an upgradable hacker brain.
By Retia LLC.

What if your squishy cat lamp was built by ethical hackers and made to mod, hack, and grow with you? Meet the Newsheen! After 5 years of teaching workshops at hacker conferences and kids cyber camps, we built the Newsheen to be the easiest way to get started hacking with IoT devices, and making your own smart devices.

This little cat features Bluetooth, Wi-Fi, and native USB, and by default runs WLED, the open-source firmware that turns it into a flexible smart lamp. It supports hardware add-ons and IoT projects: add a microphone, IR receiver, speaker, or even a LoRa radio to transform your cat into an audio-reactive lamp, Meshtastic radio node, internet radio speaker, and more!

// flashing runs in any browser with Web Serial · made in the USA by real catboys and catgirls
[01] // getting_started

Glow up your cat in 3 steps

Your Sheen ships as a sweet and innocent smart lamp, flashed with the WLED project. Here's how to switch, or restore any Newsheen from scratch!

  1. 00 Using LoRa? Add a radio for mesh (optional).
    The Sheen ships without a LoRa radio. Meshtastic, MeshCore and RNode need a Seeed Wio-SX1262 added. Once it's soldered in place, attach a 915 MHz antenna before you transmit. This is not needed for most builds!
  2. 01 Plug into USB-C.
    The S3's native USB shows up as a serial port with no drivers needed.
    hint: which serial port?
    macOS /dev/cu.usbmodem*, Linux /dev/ttyACM0, Windows COMx.
  3. 02 Flash a personality.
    Pick a project you want your cat to run in the browser flasher and let it write. Every build is verified against a published hash before it touches your board.
  4. 03 Reset & connect.
    After flashing is complete, unplug your board and plug it back in to run the new firmware. Many firmware projects make their own Wi-Fi AP with a setup page.
    hint: connecting to WLED
    for WLED (the default firmware) look for a Wi-Fi network starting with WLED- (it's unique to your cat) and connect with the password wled1234 to reach the controls. Newsheen Radio makes its own captive page. Mesh builds pair to a phone or web app instead, over Bluetooth or USB.
[02] // flash_and_console

Give your cat a personality

Flash a project in your browser over Web Serial, then use the same console to watch it boot and send it commands. One client per port, so close any other serial monitor first.

loading catalog…
stuck? hold the BOOT button while you plug in USB, then release: that forces download mode. hit CONNECT again.
bins mirrored from scriptkitty.sh; each is verified against its hash before writing.
Talk to your cat over serial
console
// console idle: flash a build, or connect the serial monitor
// one client per port: flashing and the monitor share the connection
>
!! Sheen quirks worth knowing
  1. Stuck flashing? Hold the BOOT button while you plug in USB, then release: that forces download mode. Hit CONNECT again.
  2. Add-ons unlock builds. Newsheen Radio needs a MAX98357A amp and speaker on the J3 header; WLEDkitty's sound-reactive mode needs an I²S mic there, and its remote needs the IR receiver fitted.
The BOOT button on the Newsheen board, circled in red, beside the 16 NEOPIXEL silkscreen label
Where to find the BOOT button (00_BOOT): hold it while plugging in to force download mode.
// bit pirate
Boots to the HIZ> prompt. Type help for the 26 modes, or led to light the ring from the CLI.
// meshtastic note
Meshtastic's USB is the binary client API, not a text log, so this monitor won't show readable output. Talk to it with the Meshtastic phone app over Bluetooth, or the web client at client.meshtastic.org.
// rnode status
The pre-provisioned RNode answers rnodeconf --info PORT straight away: no setup step.
[03] // firmware_catalog

Flash popular open-source projects

Select and switch between any of these officially supported projects, or upload your own. They're all mirrored from scriptkitty.sh; hit flash to load one into the flasher above.

The Sheen is the ESP32-S3 Pusheen puck (esp32_base_puck_v2). Each build's source repo has its own PlatformIO project with the board definition if you want to roll your own.
[04] // hardware_and_pinout

Tech specs

Stock: an ESP32-S3, 8 LEDs, a button, and USB-C. The radio, IR receiver, and mic/amp are footprints you populate to add capabilities.

MCUESP32-S3-WROOM-1: dual-core 240 MHz · WiFi + BLE · 16 MB flash · 2 MB PSRAM (N16R2) · native USB-C
LEDS8× WS2812B ring: top-facing, through the translucent lamp · GPIO 16 (via a 3V3→5V level shifter) · status LED on GPIO 48
INPUTUser button: GPIO 17, active-low · BOOT on GPIO 0
POWERUSB-C, or 5 V external: external 5 V via the N-EXT pad + JP1 bridge (see below)
+ RADIOadd-on: Seeed Wio-SX1262 LoRa (915 MHz, wire-antenna pad) for the mesh builds
+ IRadd-on: VS1838B receiver on GPIO 4 for the 21-key remote (OUT leg in the square pad)
+ AUDIOadd-on: J3 header: an I²S mic (sound-reactive), or a MAX98357A amp + speaker for Newsheen Radio
$ cat pinout.map: the ones you'll reach for
# stock
leds      8× WS2812B ring ── GPIO 16   (via 3V3→5V level shifter)
button    user ───────────── GPIO 17   BOOT ── GPIO 0
status    LED ────────────── GPIO 48
usb       native S3 ──────── D- 19 · D+ 20
power     N-EXT pad + JP1 bridge for external 5 V

# add-on footprints (populate to enable)
ir rx     VS1838B ────────── GPIO 4    (OUT leg in the square pad)
mic/i2c   SDA 35 · SCL 36 · I²S WS 37 · SCK 38 · SD 39   (J3 header)
lora      SX1262: NSS 10 · SCK 13 · MOSI 11 · MISO 12
          NRST 9 · BUSY 47 · DIO1 21 · RF_SW 14
Top render of the Newsheen board: eight WS2812B LEDs around the edge, the ESP32-S3 in the center, the sensor header and buttons
front: rendered from the KiCad board (radio shown unpopulated, as it ships)
Bottom render of the Newsheen board: USB-C, the solder-pad power interface, JP1, and the 3V3 regulator
back: USB-C, the power pads, and JP1

Add hardware, add powers

The Sheen is ready to mod. Populate the sensor header, antenna pad, and IR spot to unlock new projects.

The Newsheen board with an Adafruit I2S microphone on the sensor header and a coil LoRa antenna on the antenna pad
An I²S mic on the sensor header and a LoRa antenna on the pad: sound-reactive WLED and mesh, added.
A MAX98357A I2S amplifier and a speaker wired to the Newsheen J3 header
A MAX98357A amp and speaker on J3: what Newsheen Radio needs to make sound.

The shell & case files

The puck sits in a 3D-printed base under the translucent silicone lamp. Download the printable base, button, and retaining ring (v4) from the Newsheen repo.