Introduction

Arduinos are very common microcontroller boards used to study and design programmable electronics. It is often used with multiple peripherals such as buttons, sliders, sensors and motors.

Together with a TIMI acting as a small fancy display, Arduino boards become a lot more powerful and interesting to use in prototyping.

This project showcases a TIMI-96 module controlled by an Arduino Uno to navigate between and simulate each of the pages.

Requirements

To proceed with the project, the following are required.

Hardware

  • TIMI-96
  • BBM Programmer
  • USB Type A to microUSB cable (for the BBM Programmer)
  • USB Type A to Type B cable (for the Arduino, replace as necessary)
  • Connecting Wires
  • Arduino Uno
  • Breadboard

Software

Graphics Design

Step 1: Open Mates Studio and create a Commander project for TIMI-96 with Reversed Landscape orientation

Step 2: Browse the library for appropriate page designs.

For this project, the following pages are used:

  • Category: Date and Time, Page: Digital Clock
  • Category: Notifications, Page: 8 x Flat Round Led
  • Category: Graphs, Page: Various Gauges Green
  • Category: Miscellaneous, Page: Various Digits
  • Category: Notifications, Page: 6-Line Black BG Print Area
  • Category: Notifications, Page: 6-Line Hex Print Area
  • Category: Audio, Page: Media Spectrum
  • Category: Graphs, Page: Full Scope
  • Category: Notifications, Page: Full Dot Matrix

Step 3: After finalizing the design, connect TIMI-96 to your computer

Step 4: Upload the project to the appropriate COM port

Step 5: When prompted, click Proceed to continue with upload.

Note: It is recommended that the graphics design is finalized before moving to the next steps when working on a project.

Programming the Arduino

Step 1: Install the MatesController library using Arduino’s Library Manager.

Step 2: Include MatesController.h to your project.

Copy

Step 3: Create a MatesController instance named mates

Copy

This will initialize the MatesController instance to the default reset pin 4 using a LOW pulse.

Step 4: (Optional) Create a function for toggling the built-in LED of the Arduino board. This can be used for debugging or showing errors if the Serial monitor can’t be used.

Copy

Step 5: (Optional) At the beginning of the setup function, set the built-in LED pin to OUTPUT and set it to LOW.

Copy

Step 6: To start using the MatesController instance, use the begin function

Copy

This will initialize the Serial UART at the default baudrate of 9600

Step 7: (Optional) The begin function can be enclosed in an if condition to handle initialization errors.

Copy

Step 8: To simulate each of the pages, functions to handle simulated animations can be prepared.

Copy

Step 9: Each function can then be defined into a function pointer array

Copy

Step 9: In the loop function, the page navigation is done every iteration.

Copy

As shown, the loop starts by performing the animation. The page counter is then incremented until the last page number and reset as necessary. The next page is then activated at the end of the loop.

Running the Project

After designing the user interface for TIMI and writing code for the Arduino and programming them, it is time to connect the devices together. Follow the diagram below for the connection between TIMI and Arduino.

Finally, supply power to the Arduino and observe the behavior of the project.

Downloadable Resources

Here are the links to the software applications, libraries and completed project files.

Back to Resource Centre

Share this article on socials

Introduction

Arduinos are very common microcontroller boards used to study and design programmable electronics. It is often used with multiple peripherals such as buttons, sliders, sensors and motors.

Together with a TIMI acting as a small fancy display, Arduino boards become a lot more powerful and interesting to use in prototyping.

This project showcases a TIMI-96 module controlled by an Arduino Uno to navigate between and simulate each of the pages.

Requirements

To proceed with the project, the following are required.

Hardware

  • TIMI-96
  • BBM Programmer
  • USB Type A to microUSB cable (for the BBM Programmer)
  • USB Type A to Type B cable (for the Arduino, replace as necessary)
  • Connecting Wires
  • Arduino Uno
  • Breadboard

Software

Graphics Design

Step 1: Open Mates Studio and create a Commander project for TIMI-96 with Reversed Landscape orientation

Step 2: Browse the library for appropriate page designs.

For this project, the following pages are used:

  • Category: Date and Time, Page: Digital Clock
  • Category: Notifications, Page: 8 x Flat Round Led
  • Category: Graphs, Page: Various Gauges Green
  • Category: Miscellaneous, Page: Various Digits
  • Category: Notifications, Page: 6-Line Black BG Print Area
  • Category: Notifications, Page: 6-Line Hex Print Area
  • Category: Audio, Page: Media Spectrum
  • Category: Graphs, Page: Full Scope
  • Category: Notifications, Page: Full Dot Matrix

Step 3: After finalizing the design, connect TIMI-96 to your computer

Step 4: Upload the project to the appropriate COM port

Step 5: When prompted, click Proceed to continue with upload.

Note: It is recommended that the graphics design is finalized before moving to the next steps when working on a project.

Programming the Arduino

Step 1: Install the MatesController library using Arduino’s Library Manager.

Step 2: Include MatesController.h to your project.

Copy

Step 3: Create a MatesController instance named mates

Copy

This will initialize the MatesController instance to the default reset pin 4 using a LOW pulse.

Step 4: (Optional) Create a function for toggling the built-in LED of the Arduino board. This can be used for debugging or showing errors if the Serial monitor can’t be used.

Copy

Step 5: (Optional) At the beginning of the setup function, set the built-in LED pin to OUTPUT and set it to LOW.

Copy

Step 6: To start using the MatesController instance, use the begin function

Copy

This will initialize the Serial UART at the default baudrate of 9600

Step 7: (Optional) The begin function can be enclosed in an if condition to handle initialization errors.

Copy

Step 8: To simulate each of the pages, functions to handle simulated animations can be prepared.

Copy

Step 9: Each function can then be defined into a function pointer array

Copy

Step 9: In the loop function, the page navigation is done every iteration.

Copy

As shown, the loop starts by performing the animation. The page counter is then incremented until the last page number and reset as necessary. The next page is then activated at the end of the loop.

Running the Project

After designing the user interface for TIMI and writing code for the Arduino and programming them, it is time to connect the devices together. Follow the diagram below for the connection between TIMI and Arduino.

Finally, supply power to the Arduino and observe the behavior of the project.

Downloadable Resources

Here are the links to the software applications, libraries and completed project files.

Back to Resource Centre

Share this article on socials