top of page

Office Digital Memo

Chargable, Portable, Wireless

Make your office.life environment easier to focus

Luyao Han, Finn Linderman

PRODUCT

Product Features

Adaptable to Office/Home Environment

Device features calendar, real time clock and event notice functionalities.

Events can be registered at only several clicks on the app we developed. You can imagine it is a simple electric memo dedicated to "remember things" for you.

Extendable and Easy to use
WeChat Image_20200313175516.jpg

Light, portable, rechargeable.

We have customized a 3D printed case, power solution for this product. It runs on rechargeable 3.7V Li-on battery, and very light. The device has customized circuit board for its functions attached to the L476 board, and can be extended further to other higher level embedded platforms.

ABOUT

Design

I’m a paragraph. Use this space to tell people more about what you do and the services you offer. Double click here or click Edit Text to get started.

READ MORE
WeChat Image_20200313180109.jpg

WEEKLY PROGRESS

WEEK 1: The goal of week1 is to research on the the practicability of the potential functions we may add to the device. This website is created to record the progress along the way.
Finn researched on how to make an app on Android Studio. Luyao has started to structure the firmware implementation starting on the SPI interface with the LCD screen with the controller ILI9341. We have decided to include adding electric design, software design, and mechanical design with the STM32 functionality.


 

61Vv0k3WZfL._SL1010_.jpg

Since the device mostly will appear to have a display. We decided to develop the firmware to drive a 2.2''TFT screen controlled through the ILI9341 controller. The STM32 communicates to the ILI9341 through SPI1.to develop the firmware to drive a 2.2''TFT screen controlled through the ILI9341 controller. The STM32 communicates to the ILI9341 through SPI1.

123.png

We started the structure of a "shield board" that goes onto the top of the STM32 discovery. This is to avoid any loosen wires, and we choose to extends the function of the original board on
1. A power solution - Convert from a power source to stable 5V/3.3V input to accomodate any common devices
2. SPI - To allow a connector on the top of the board so that the screen can be hold firmly
3. Extend a battery charging USB port so our device can be enclosed in a mechanical shell; with the charger we can always charge the device without opening it.

We have also started to implement a library for the ILI9341 controller. Since SPI1 is already finished from Lab3, we successfully adapted our own library for this controller.
The following function is implemented:

void ili9341_settextcolour(uint16_t x,uint16_t y);
void ili9341_settextsize(uint8_t s);
void ili9341_write(uint8_t c);
void ili9341_write_message(char* message, uint16_t cursor_x,uint16_t cursor_y,uint8_t size, uint16_t text_color,uint16_t text_bg_color);
void ili9341_flush(lv_disp_drv_t * drv, const lv_area_t * area,  lv_color_t * color_map);

The following functions are referenced from a github library:
https://gist.github.com/postmodern/ed6e670999f456ad9f13

void ili9341_clear(uint16_t colour);
void ili9341_drawpixel(uint16_t x3,uint16_t y3,uint16_t colour1);
void ili9341_drawvline(uint16_t x,uint16_t y,uint16_t h,uint16_t colour);
void ili9341_drawhline(uint16_t x,uint16_t y,uint16_t w,uint16_t colour);
void ili9341_fillrect(uint16_t x,uint16_t y,uint16_t w,uint16_t h,uint16_t colour);


 

WeChat Image_20200313180117.jpg
WeChat Image_20200313180123.jpg

WEEK 2: THIS WEEK WE MADE A LOT OF PROGRESS OF THE PROJECT. FIRST, FINN WAS ABLE TO CREATE THE INTERFACE FOR THE APP (SEEN BELOW) USING ANDROID STUDIO. THE HAS FOUR SCROLLERS: HOUR, MINUTES, AM/PM AND BLUETOOTH DEVICE SELECT. THE BLUETOOTH DEVICE SELECT WILL ALLOW FOR THE USER TO CONNECT TO ANY BLUETOOTH DEVICE THAT IS PAIRED WITH THE PHONE. THIS HAS ALREADY BEEN IMPLEMENTED, BUT IS NOT ABLE TO BE TESTED ON THE ANDROID EMULATOR. WE HAVE ORDERED A CHEAP ANDROID DEVICE IN ORDER TO TEST THE CONNECTION. LUYAO WORKED ON THE HARDWARE IMPLEMENTATION OF THE LCD SCREEN. BY THE END OF THE WEEK, HE WAS ABLE TO WRITE STRINGS TO THE SCREEN USING SPI. HE ALSO IS ABLE TO EDIT THE FONTS, CHANGE THE FONT COLOR, AND CHANGE THE BACKGROUND COLOR. THE RTC IMPLEMENTATION TO THE SCREEN SHOULD BE IMPLEMENTED BY THIS WEEKEND. IDEALLY, WE WILL HAVE A BASE PROTOTYPE, WITH BASIC FEATURES BY NEXT WEEK. 

Screen Shot 2020-02-21 at 10.16.39 AM.pn
This week was very difficult because we were trying to implement the firmware drive for a gesture sensor APDS9960-- because of limited IO resources on the shield we extended we actually ran out of hardware I2C pins. We would have to implement the software I2C, meaning toggle I/O pins by ourselves.
Eventually the speed of software I2C overwhelms the main resources too much, so we decided to give up the gesture sensor. The idea is very good but since GUI takes much resources we have to move on. In order to implement this in the future, we would need a different, more powerful microcontroller, that is capable of graphics processing and more I2C pins.
WeChat Image_20200313180109.jpg
DEMO

DEMO

COMING SOON
WEEK 3: This week, we were able to make substantial progress on the app and the hardware design. Luyao finalized the RTC GUI on the LCD. Finn finished the app, and by the end of the week, we were able to test whether or not the app would correctly interface with the board/HC05. We were able to interface with the board, and turn the LEDs on and off. Now we just need to create a communication protocol for sending strings with the alarm time back and forth. We also found that certain, typically older, phones are able to sniff the HC 05 signal. Luckily, we were able to find a phone that would sniff the HC05. Also, we started the 3d modeling for the 3d shell that we are making for the clock. We will have a basic prototype very very soon.
WEEK 3: This week, we were able to make substantial progress on the app and the hardware design. Luyao finalized the RTC GUI on the LCD. Finn finished the app, and by the end of the week, we were able to test whether or not the app would correctly interface with the board/HC05. We were able to interface with the board, and turn the LEDs on and off. Now we just need to create a communication protocol for sending strings with the alarm time back and forth. We also found that certain, typically older, phones are able to sniff the HC 05 signal. Luckily, we were able to find a phone that would sniff the HC05. Also, we started the 3d modeling for the 3d shell that we are making for the clock. We will have a basic prototype very very soon.
WeChat Image_20200313180109.jpg
WeChat Image_20200313180109.jpg
Following is an image that we successfully received information from the phone and printed to the LCD screen.
WeChat Image_20200313211711.jpg
WeChat Image_20200313180109.jpg

Demo

WeChat Image_20200313180109.jpg
WEEK 4: We have received a version of the PCB board. On the PCB is a touch pad that connects to the touch sense controller of the STM32. Therefore, the user doesn't need to click an actual button. The STM32 senses the capacitance change once the user places his finger onto the touch pad through the charge transfer principle.
WeChat Image_20200313175451.jpg
WeChat Image_20200313212239.jpg
bottom of page