Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

BMO in Adventure time, powered by raspberry pi 3 and google assistant

by choinw Mar 15, 2018
Download All Files

Thing Apps Enabled

Please Login to Comment

Hi choinw, this is an awesome project! I am just wondering if you are able to provide schematics/pins used for connecting the LCD screen and potentiometer board as I am keen to set up my RPi 3 in the same way. Thanks :)


Hi! Thanks for your interest on my project. please refer the link above. You can solder the wires to the bottom of RPi board as pin out is connected. The screen has RCA composite video input has 4 lines for VCC, GND, AV1, AV2. Originally the video screen is designed for 12V input. But I checked and confirmed that the voltage converter of the screen control board has 4.5-15V input. so it works with 5V output of raspberry pi (it consumes a bit more current when working with 5V, if you want to remove voltage controller and wire the power directly, please refer the instruction below.)


You can connect either AV1 or AV2. And I used the audio amplifier module that has a potentiometer for volume control. you just can use the product I introduced in the description. you need to wire power 5V, GND, Audio out Left, Right and 2 4ohm 3W speakers. refer the image below for RPi pinout map.


Thanks for the great detail. Do you have a diagram of the RPi 3 (model B?) for soldering audio L/R, video and GND to the underneath of the board?

Hi Babel, I just added an image of 4-pole connector seen from the bottom with the brief pin description. Please see the attached image of RPi board.

Thanks! I am now 3D printing the pieces for BMO - I will share some photos/videos when my project is done! :)

Great! Looking forward to meeting your BMO soon. Are you planning to make your BMO work as a Speaker? or Game console? To enable BMO'S face splash screen, refer my previous BMO Game console article.

Hi! I am having some trouble displaying a fullscreen BMO face with Pygame. I believe the highest screen resolution is 1600x1200 using pygame.display.list_modes(). But when I create a surface with this resolution it is not fullscreen and there are black borders on the edges of the screen. The closest I have found was resolution 656x416 (a bit low) but there are still borders (see image). How did you display a fullscreen image?

Hi @Babelfish112

You may need to change some setting in raspberry configuration.

execute raspberry pi config with the command below.

$sudo raspi-config

and then, disable overscan.

How the screen is attached on your raspberry pi? Are you using HDMI? Then check the display-resolution options.

If you are using analogue video out, the problem will be fixed by disabling overscan.
Analog video output only support NTSC or PAL (720X480, 720X576)

Thanks for your advice - I have attached the screen via analogue video, and disabling overscan and setting the Pygame resolution to 720x480 fixed it! Much appreciated.