alt text



Inspiration

While enjoying Sunpump and its freshly created art in the form of meme coins, I thought, "It would be so cool to display these newly made Tron meme coin images in an internet-connected picture frame." This idea sparked the concept for the miniMEME project. The challenge was to find a way to bring these memes to life on a low-power, single-board computer, while making the system user-friendly and affordable for anyone to start using.



What it does

I'm excited to share that the first release of miniMEME includes the following features:


alt text



Client Side Download

miniMEME (ESP32 Device)

  • Connects to the internet to fetch and display content.
  • Displays a dashboard-style interface.
  • Presents a slideshow of prepared and uploaded meme images on the screen.
  • Lists memecoin prices and 5-minute price changes alongside the latest memes.
  • Prominently displays the TRX price on the screen.
  • Shows the current date and time.
  • Includes a web server with a user-friendly web interface for adjusting settings:
  • Start fullscreen random stack collage mode from the web interface.
  • Change screen orientation (left or right) from the web interface.
  • Adjust the speed of the meme image slideshow from the web interface.

miniMEME Website Visit Website

  • Inform about the project, show resources and related links
  • miniMEME live Simulator that simulates the miniMEME interface with HTML on the website how it will look and work
  • Background slideshow with the miniMEME images

alt text

alt text

alt text




Server Backend View Activity

miniMEME Memescraper (Chrome extension)

  • Extract the latest meme images from sunpump.meme
  • Refresh the page periodically
  • Save the images (png, gif, jpg, jpeg) convert to jpg, scale and size reduce ( Size 15KB +/-)
  • Plays notification sound when new memes are detected

miniMEME Github script (Batch script)

  • Changes the downloaded meme image names
  • Git push upload meme images to Github
  • manages that there are 4 files in the folder
  • Remove previously downloaded old meme images



alt text

serverbackend





How we built it

We built miniMEME using the ESP32-S3 microcontroller for its versatile IoT capabilities, and it's standard combined with a TFT display to showcase dynamic content like memes. The project integrates with the Tron blockchain to create a decentralized IoT application. We used the Arduino IDE for coding and the TJpg_Decoder library to handle image rendering. Additionally, we developed a web interface for easy control of slideshow settings and display rotation etc The system fetches images from a web source that is fed trough the two server side applications.

Challenges we ran into

One of the main challenges we faced was optimizing for the ESP32, especially with rendering images from the web while maintaining smooth transitions, the TJpg_Decoder was giving the best and fasted drawing results. Memory limitations also required us to prepare the files on the server side to manage resources efficiently and to make sure the slide show would be fed what it expects.

Another smaller challenge was creating a user-friendly web interface for controlling the slideshow and TFT rotation. Ensuring seamless integration between the hardware and the Tron blockchain was at times also complex, requiring careful handling of data to maintain low latency. Additionally, debugging issues related to connectivity and display rendering took significant effort to resolve, because testing and making changes take time, compiling for the board takes around 30 seconds to test the made changes.

Accomplishments that we're proud of

  • The moment the first Tron meme image appeared on the ESP32 as a JPG from an online source was a breakthrough for the project. Typically, these devices handle images as byte arrays, so getting it to display JPG images required integrating a specialized JPEG decoder library. Additionally, we developed a server-side solution to prepare and resize various image formats (JPG, PNG, GIF) to ensure they were optimized for the device’s display. Overcoming this challenge confirmed that the project was feasible and paved the way for miniMEME to become a reality.

  • Getting Client and Server side up and running in a stable, low cost way

  • Websites, scraper and miniMEME interface all in same uniform branding

  • Easy to setup and to start tinkering with

  • First IOT device for the Tron Blockcain



alt text



What we learned

Through developing miniMEME, we learned the practical challenges of integrating IoT with blockchain technology. We gained valuable experience in working with hardware like ESP32, optimizing performance for low-power devices, and managing dynamic content being displayed on the tiny device. We also learned the importance of simplifying interfaces, and adding a web-based control panel, to make the IoT solutions more user-friendly. Finally, we deepened our understanding of how Tron blockchain can support innovative, decentralized IoT applications.

What's next for miniMEME

Next, we want to enhance miniMEME by adding more interactive features, such as customizable slideshow settings through the web interface, and expanding its use cases beyond just displaying memes. We aim to explore further integration with the Tron blockchain.

On the wishlist to integrate are:

  • More slideshow effects
  • Dedicated screen to view any Tron wallet, and voting rewards
  • More board related info and settings Brightness, Uptime, system load
  • Add a wifi manager interface, so that the device can be setup to connect to any wifi network. (without the need to hardcode the wifi credentials in the code)
  • Intergrate more Tron blockcain features
  • Replace Github for file storage with BTFS
  • Make it super easy to setup and write the miniMEME ESP32 sketch program to the board with the use of a single downloadable file, and without the need to use the Arduino IDE software.
  • Create a own meme coin for the project (and ideally also create a miniMINER / reward software that can earn the coins with the use of the tiny device.

Our ultimate future goal would be to collaborate with manufacturers like Lilygo or Heltec to produce a batch of Tron Blockchain-themed ESP32 boards, featuring a distinctive red PCB design with Tron logo. These boards would come preinstalled with the miniMEME software, offering users a ready-to-go IoT experience powered by the Tron network. This would not only showcase the potential of the Tron blockchain and IoT integration but also provide a tangible product that embodies the vision behind miniMEME.



Project Milestones:

Milestone 1 - Finished

  • Create the first version of miniMEME opensource client and server side software
  • Make everything aivible to download and try
  • Introduce miniMEME to the Tron community on Devpost and Tron DAO Forum
  • Create Discord and telegram groups

Milestone 2 - unfinished

  • Move the server backend onto a remote server so that it can run 24/7
  • Intergrate a wifi setup manager that makes it possible to enter the wifi credintials of your wifi network with the use of a mobile phone that connect directly to the device. (no hardcoding needed / headless setup / makes it more userfriendly )
  • Create a one file installation method for the client, that would take less than 5 min to install on a new board (No need to install the arduino IDE and libraries, makes it more userfriendly)
  • Add more Slideshow effect
  • Make use of the boards 2 hardware buttons to switch screens / slideshow effects
  • Add improvements and fixes suggested by users of the miniMEME community



Try it

Even if you don't have a board yet, you can still experience miniMEME through our simulator on the miniMEME website, giving you a preview of how it works with an ESP32 device.

Try now



Get Involved! Whether you’re a meme lover, IoT enthusiast, or Tron community member, miniMEME has something for you. We’re looking for feedback, ideas, and collaborators who are interested in pushing this project to the next level.

Ready to dive in? Join the community and show your support to help elevate miniMEME to the next level! Your interest and feedback are crucial in shaping the future of this project. Feel free to ask questions, share ideas, or even contribute directly.

Together, we can bring the Tron IoT meme culture to life!



Tron DAO Forum: https://forum.trondao.org/t/minimeme-a-tron-blockchain-powered-iot-platform

Telegram: https://t.me/+UQ2B4besKqw0NDY0

Discord: https://discord.gg/GyjvNMtJ5V

Website: https://techtek.github.io/miniMEMEwebsite/





Built With

Share this project:

Updates

posted an update

Testing a new update of the miniMEME software.

This update will add the option to switch with the web interface button to a dedicated Sundog screen with Sundog background, price ticker, 5 min price change percentage, and shows the current time.

i will test this dedicated Sundog screen a bit longer and might change the screen design a bit more and will add the updated code to the miniMEME Github repository soon.

https://global.discourse-cdn.com/flex015/uploads/trondao/optimized/3X/f/e/febd80707f6b8779bc1a194a0178beae08f3a0a7_2_690x388.jpeg

Log in or sign up for Devpost to join the conversation.

posted an update

Latest updates


miniMEME Server

  • When the sunpump.meme website reached a set amount of memes (maybe 100 ?) the image class name is than being updated, this would result in the miniMEMEscraper not being able to scrape and prepare images from that location. The class name would than need to be updated manually in the servers popup.js file.

This latest fix makes sure that the miniMEME server continues to scrape and prepare memes even when the class name on Sunpump was changed.


miniMEME Website

  • The website and simulator slide shows are now more uniform in sliding
  • The background slideshow now has a soft blur effect to bring more focus on the introduction text and simulator

Log in or sign up for Devpost to join the conversation.