A hackable, programmable badge with E Ink® display, powered by Raspberry Pi RP2040.
In honour of Raspberry Pi's 10th birthday, we've fused a RP2040 microcontroller with an EPD display to produce a stylishly monochrome, maker friendly, e-paper badge(r) to attach to your person, your office door or to prop up on your desk. With the support of the fun guys (and gals and non-binary pals) at Ineltek and Raspberry Pi we've been able to keep it as low cost as possible, hoorah!
We've equipped Badger 2040 with plenty of buttons so you can easily change what's displayed on the screen, a slot so you can clip it onto a lanyard and a battery connector so you can keep things portable and refresh the screen whilst on the go. On the back, you'll find some funky badgerpunk stylings plus our RP2040 accoutrements of choice: boot and reset buttons and a Qw/ST connector so it's super easy to plug in Qwiic or STEMMA QT breakouts
Here are some things you could do with it!
- Switch between images, pronouns or secret identities at the push of a button
- Make yourself into a mobile weather station or air quality monitor (by adding a sensor breakout)
- Store important QR codes for getting into places (or to Rickroll people)
- Make a tiny to-do list and tick stuff off
- Display inspirational badger quotes or educational badger facts of the day
Want to show your Badger the world? We've put together a convenient Badger + Accessory Kit which contains batteries, a lanyard and everything else that's needed to get portabello.
RP2040 x e Ink®
We're big fans of electronic paper at Pirate HQ - it makes for a lovely, crisp, high contrast display that's readable even in bright sunlight and it doesn't squirt unnecessary blue light into your environs like LCDs do. It's also ultra low power (EPD displays only consume power while they're refreshing), and the images on the display stick around for a really long time whilst the display is unpowered.
Using a RP2040 chip means we can drive the hardware in fun, experimental, low level ways. We've written custom drivers for the EPD display that prioritise low power consumption whilst enabling lightning fast refresh rates.
- 2.9" black and white E Ink® display (296 x 128 pixels)
- Ultra wide viewing angles
- Ultra low power consumption
- Dot pitch - 0.227 x 0.226 mm
- Powered by RP2040 (Dual Arm Cortex M0+ running at up to 133Mhz with 264kB of SRAM)
- 2MB of QSPI flash supporting XiP
- Five front user buttons
- Reset and boot buttons (the boot button can also be used as a user button)
- White LED
- USB-C connector for power and programming
- JST-PH connector for attaching a battery (input range 2.7V - 6V)
- High-precision voltage reference for battery level monitoring
- Qw/ST (Qwiic/STEMMA QT) connector
- Fully-assembled (no soldering required)
- Mechanical drawing
- C++/MicroPython libraries
Badger + Accessory Kit includes
- Badger 2040
- 2 x AAA battery holder
- 2 x AAA batteries
- Velcro square
- Black lanyard (made from recycled plastic bottles!)
- USB-C to USB-A cable
Because it's a RP2040 board, Badger 2040 is firmware agnostic! You can program it with C/C++, MicroPython or CircuitPython. We'd recommend using our batteries included MicroPython build for ease of getting started.
You can draw on the screen using our lightweight PicoGraphics library, which includes functions for displaying text, shapes and images (plus individual pixels of course), and we've provided some examples to get you started.
Badger ships pre-loaded with MicroPython and our BadgerOS suite of examples.
- (Learn) Getting Started with Badger 2040 (and W)
- (Readme) Installation instructions
- Download Badger flavoured MicroPython (with Badger OS examples)
- Badger 2040 function reference
- PicoGraphics function reference
You can also use CircuitPython on your Badger 2040. CircuitPython drivers are designed to work on a bunch of different microcontrollers so you won't get the fancy RP2040-architecture specific tweaks that you'll find in our library, but you will get access to all the nice conveniences of Adafruit's ecosystem.
- Download CircuitPython for Badger 2040
- Getting Started with CircuitPython
- CircuitPython examples
- BadgerOS ported to CircuitPython by Stephane BeBoX
If your breakout has a QW/ST connector on board, you can plug it straight in with a JST-SH to JST-SH cable, or you can easily connect any of our I2C Breakout Garden breakouts with a JST-SH to JST-SH cable coupled with a Qw/ST to Breakout Garden adaptor.
- List of breakouts currently compatible with our C++/MicroPython build.
Want to protect Badger from knocks and scrapes? Check out these nifty 3D printable cases and enclosures!
- Badger Guard (simple backplate with standoffs)
- Badger 2040 stand by samuelmcdermott
- Case for Pimoroni Badger 2040 by hsavior
Badger 2040 enclosure by Andreas Känner
- Badger 2040 keypad by Andreas Känner
- Measurements: 85.6mm x 48.7mm x 10mm (L x W x H, including connectors). The mounting holes are M2 and 2.9mm in from each edge. The corner radius is 3mm.
- Badger 2040 is fairly accommodating about input voltage (2.7V - 6V), so it's possible to use a variety of different batteries and battery packs. A 2x AAA battery pack fits behind Badger nicely (double/triple AA and AAA battery packs will also work though).
- 2x AAA rechargeable (NiMH) batteries only puts out 2.4V which is, strictly speaking, not enough for Badger. However, in our tests it keeps on truckin' down to an input voltage of 2.05V (without the LED), so if you want to use rechargeable batteries that should be fine.
- Alternatively, you can plug a LiPo/LiIon battery into the battery connector, with the following caveats. Please only consider this if the person wearing the badge is an adult and knows what they're doing with LiPos!
- A solid enclosure or backplate to protect the battery from damage whilst being worn is a very good idea (or you could use one of our Galleon hard case LiPo batteries).
- There's no battery protection included on Badger 2040, so you should only use it with LiPo batteries that include internal protection (all ours do).
- Unlike some of our other boards, Badger 2040 doesn't have battery charging circuitry onboard. You'll need an external LiPo charger to charge the battery (like a LiPo Amigo).
- With older versions of the Badger firmware, reset behaviour is slightly different when running on battery. If you're running on battery power, you will need to tap the reset button on the back, and then hold any of the front buttons to wake it up and trigger a refresh. With version 1.18.5 or later of the Badger firmware you won't need to do this.
- Never set your password as "mushroom". It is not stroganoff.
Raspberry Pi's RP2040 microcontroller is a dual core ARM Cortex M0+ running at up to 133Mhz. It bundles in 264kB of SRAM, 30 multifunction GPIO pins (including a four channel 12-bit ADC), a heap of standard peripherals (I2C, SPI, UART, PWM, clocks, etc), and USB support.
One very exciting feature of RP2040 is the programmable IOs which allow you to execute custom programs that can manipulate GPIO pins and transfer data between peripherals - they can offload tasks that require high data transfer rates or precise timing that traditionally would have required a lot of heavy lifting from the CPU.
Badger + Accessory Kit
Battery holders, lanyards, and more!
2 x AAA Battery Holder with Switch+ £1.25
LiPo batteries and chargers
Galleon 400mAh Hard Case LiPo Battery+ £6.25
LiPo Amigo (LiPo/LiIon Battery Charger) – LiPo Amigo+ £5.00
Shop with confidence – we've been serving the hobbyist electronics, Maker, and retro gaming communities since 2012.
- Satisfaction or refund guarantee
- Worldwide shipping via mail or courier
- 50,000+ customer reviews
- Secure website and payments