Close
0%
0%

Thing - Raspberry Pi IOT prototyping Board

Thing is a board that can be used for anything - IOT, retro games, Machine Learning, electronic prototyping. Let your imagination run wild!

Public Chat
Similar projects worth following

Thing is a powerful brand-new in-progress electronics prototyping board. Thing consists of a 128x64 OLED screen, 5 buttons, and a Raspberry Pi Zero W with Bluetooth and WiFi connectivity.

Thing can be used for many different things. Here are some examples:

  • Retro Games Console
  • IOT hub
  • To use as mulitimeter
  • To use as sensor in IOT projects
  • To run machine learning programs, using sensor data from a camera or sensors attatched through the header
  • To use as a Arduino-ESP32-Raspberry Pi 4b hybrid with a screen

As stated above, Thing is a new, in-progress project. Here's what we plan to do:

STEP 1: Design, order and solder PCB

STEP 2: Develop an operating system, sort out a way to program it with web browser. Micro editor through SSH will probably be the way to go

STEP 3: Develop useful apps and programs for it and sort out a battery system

STEP 4: Add guide, gerber links, BOM etc, so people can build it themselves

I am currently doing step 3 - I'm developing useful apps. Right now, I'm adding an app where you can connect to wifi networks

It's early days yet, but a price estimate could be £40 plus another £20 for a soldering iron kit, so in total £60 

Adobe Portable Document Format - 45.36 kB - 05/25/2020 at 10:46

Preview
Download

Zip Archive - 10.41 kB - 05/25/2020 at 10:46

Download

  • 1 × Raspberry Pi Zero Used as the brains for thing
  • 1 × OLED LCD 128x64 Display Used to display images and text
  • 1 × 5x Tactile buttons Used to provide user input
  • 1 × PCB Used to bring it all together

  • Developing apps for Thing

    Jacob MacLeod05/25/2020 at 10:38 0 comments

    Ok, I think I'm at the point where I can now develop apps for Thing. The first app I'll make is one where you can connect to various wifi networks. I'll need to develop a keyboard system for that.

    Then, I'll probably make a terminal app, using the keyboard system, and maybe an app where you can connect to different bluetooth devices. Then, I'll make an app store where you can download different apps when connected to wifi.

    After that, I'll probably develop a few games.

  • 'OS' developed

    Jacob MacLeod05/03/2020 at 20:18 0 comments

    I have now developed the OS!

    Ok, it's not actually an OS. It's just a python script that runs on the raspberry pi when it boots, that let you use the screen as a file browser using the buttons.

    You can look at the entire file system of the raspberry pi, using this script, and you can run python files by clicking on them. This will form the basis of the apps, but right now, I've only added a shutdown app.

    I still need to do a few bug fixes, namely, I need to make the text bigger, but once I've done that, I'll develop apps to make it actually useful. 

    I've been programming it using vim in the terminal, but I'm planning to support micro terminal editor. It's a basic terminal editor with mouse support, so it should help beginners feel right at home - it's meant to be an alternative to nano.

    I've got the source code at github, and it's written solely in python, since that it's simpler. However, if I can get the screen working in Java, I'll write some apps and in Java, since i'ts probably more appropiate.

    I'll hopefully have finished improving the 'os' in about a week, and then I'l work on some apps, and maybe an app store.

    Also, feel free to follow me on github, and be notofied whenever I do a new commit!

  • PCB Arrived and Soldered

    Jacob MacLeod04/21/2020 at 21:00 0 comments

    The PCB for the ‘Thing’  arrived today, so I spent the better part of the day soldering it. That went well, except I scraped some of the covering off from some of the copper traces when I tried to cut the leads of the OLED screen to make them shorter to fit the raspberry pi on. Fortunately, JLC sent a free roll of electrical tape, so I used that to cover the traces.

    Here’s hoping that will solve it.

    I spend the rest of the day trying to get the OLED display to work. Finally, I installed Adafruit’s Circuit Python SSD1306 library, and it worked fine. 

    Next, I’ll develop a basic operating system (a menu-based system to interact with the OLED using the buttons), that allows you to run programs. To program it, I’ll use a Jupyter script running as a web server from the pi, which will probably act as the main way to program.

    That may take about 5 - 9 days, depending on what extra tasks need to be done, so I’ll do a log when it is finished.

  • PCB designed

    Jacob MacLeod04/09/2020 at 15:58 0 comments

    I’ve designed the PCB! Here’s a picture: 

    I’ve had some confusion about the buttons, due to how easy easy designed it. However, I’ve made a simple be version of it on a breadboard, and it works fine.


    I’ll probably order the PCB from JLC pcb, and It’ll probably take 2 weeks. I have a Raspberry Pi and buttons, so all I need to get is a 30 pin header and a 128x64 OLED screen, I’ll order that from eBay.


    In terms of size, I don’t completely know, but judging from the picture above, I’ll bet it’s 4.5cm by 8cm, just because I know that the raspberry pi zero is 3cm by 7cm.

    Regardless, it’ll be small enough!

    I don’t know what I will do for the battery, but for now I’ll use a power bank. Maybe I’ll take it apart and hack it.

View all 4 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates