/badger2040-multiple-images

Alternative Firmware for Badger2040, displays multiple images based on bitmaps on the screen, let's you switch between them

Primary LanguageCGNU General Public License v3.0GPL-3.0

Badger2040 - Custom Multiple Image Display Firmware

What is this project?

A small custom firmware, which allows to you to display multiple custom images (presented by a bitmap) on your Badger2040.

What is a Badger2040?

Basically a Pi2040 with an ePaper Display strapped to it, that you can wear around your neck.

I've been to multiple conferences/meet-ups/networking events lately and on those events a name tag is helpful. And a programmable name tag is even better.

Why not use the default BadgerOS?

The default BadgerOS has a built-in method to display images, however it doesn't allow you to display a bitmap.

BadgerOS reads the images from Flash, decodes them automatically from JPEG and then displays them.

This can lead to some artifacts displayed on screen: Top: BadgerOS Example Bottom: My Bitmap The top example is from BadgerOS. The bottom example is from this project. You can clearly see the artefacts created by BadgerOS and the crisp clear image when using bitmaps (like this project does).

Setup of this Arduino Environment

Basically I followed this setup to setup my Arduino IDE.

I used the "Generic RP2040" Board to run my code on the Badger.

Screenshot Arduino IDE

Creating good images

The display has only the ability to display a black or white pixel.

However, you can still display different color shades. The process of "dithering" can be used to do this.

This is a good online tool to do this.

After you have converted the color parts of your original image, you can convert that image to a Bitmap, e.g. with this online tool.

This bitmap can then be added to this project, e.g. in the bitmaps.h file.

Display

The display of the Badger seems to have an uc8151d driver.

Important to know for this display is:

  • 128x296 Pixel
  • you should rotate your image by 270º degrees

Here are my settings for this display that results in one of my example bitmaps. Image2Cpp Settings

Badger

You can find the PIN-Out here. Generally the Pimoroni Source Code seems to be a good place to look for documentation.

Usage

  1. Convert Image to Bitmap
  2. Copy to bitmaps.h (See bitmaps.example.h for examples)
  3. Flash the Badger
  4. Switch between images by pressing up and down keys.