All Projects → abhra0897 → stm32_tiny_monitor

abhra0897 / stm32_tiny_monitor

Licence: other
A tiny external monitor for PC using STM32 and ST7789. Connects to PC over USB and displays the captured screen on ST7789 (240x240) display.

Programming Languages

c
50402 projects - #5 most used programming language
perl
6916 projects
Makefile
30231 projects
python
139335 projects - #7 most used programming language
assembly
5116 projects
shell
77523 projects

Projects that are alternatives of or similar to stm32 tiny monitor

BlueVGA
VGA library for STM32F103C (BluePill) that can manipulate a screen with 28x30 tiles with 8x8 pixels each, in a total resolution of 224x240 pixels with 8 colors using a very low footprint
Stars: ✭ 39 (-36.07%)
Mutual labels:  display, stm32, bluepill, stm32f103
platformio-libopencm3-freertos
Sample blinky project for PlatformIO using libopencm3 and FreeRTOS
Stars: ✭ 14 (-77.05%)
Mutual labels:  stm32, bluepill, libopencm3, stm32f103
Modbus-STM32-HAL-FreeRTOS
Modbus TCP and RTU, Master and Slave for STM32 using Cube HAL and FreeRTOS
Stars: ✭ 272 (+345.9%)
Mutual labels:  usb, stm32, bluepill
esm
Lightweight communicating state machine framework for embedded systems
Stars: ✭ 21 (-65.57%)
Mutual labels:  stm32, bluepill, stm32f103
versaloon
JTAG Versaloon firmware for the STM32 Bluepill board
Stars: ✭ 95 (+55.74%)
Mutual labels:  stm32, bluepill
stm32-tkg-hid-bootloader
A HID driverless bootloader and flash tool companion for the STM32F1 line
Stars: ✭ 30 (-50.82%)
Mutual labels:  stm32, bluepill
stm32-blue-pill-rust
Rust for STM32 Blue Pill with Visual Studio Code
Stars: ✭ 98 (+60.66%)
Mutual labels:  stm32, bluepill
stm-ILI9341-spi
STM32 ILI9341 spi
Stars: ✭ 77 (+26.23%)
Mutual labels:  stm32, stm32f103
DfuBootloader
STM32 USB device bootloader using DFU class interface
Stars: ✭ 79 (+29.51%)
Mutual labels:  usb, stm32
stm32 i2c to usb hid multitouch
i2c to usb hid multi touch with stm32
Stars: ✭ 55 (-9.84%)
Mutual labels:  usb, stm32
STM32 USB CH341
STM32 USB simulates CH341.
Stars: ✭ 52 (-14.75%)
Mutual labels:  usb, stm32
stm32-usb-bootloader
This repository contains bootloader for stm32f1xx microcontrollers. It works for stm32f103ret6, but you can simply adopt it to any MCU supporting STM32 HAL library with USB and SD-card
Stars: ✭ 40 (-34.43%)
Mutual labels:  usb, stm32
DHT11-DHT22-STM32-HAL
Библиотека для работы с датчиками DHT11/DHT22/AM2302/AM2301 на STM32
Stars: ✭ 26 (-57.38%)
Mutual labels:  stm32, stm32f103
FASTUSBasp
This is the fast avr programmer for AVR MCUs based on cheap stm32f103c8t6 board with usb-to-serial support.
Stars: ✭ 78 (+27.87%)
Mutual labels:  stm32, stm32f103
kikpad
KiKPad : the Midiplus SmartPad reinvented !
Stars: ✭ 31 (-49.18%)
Mutual labels:  usb, stm32
ISASTM
STM32-based ISA-over-USB-adapter
Stars: ✭ 86 (+40.98%)
Mutual labels:  usb, stm32
STM32F103-Bare-Metal
Programming the STM32F103C8 micro controller at the "bare metal" register level.
Stars: ✭ 42 (-31.15%)
Mutual labels:  stm32, stm32f103
STM32F10x Servo Library
Servo library with stm developed by the Liek Software Team. We are working on new versions.
Stars: ✭ 14 (-77.05%)
Mutual labels:  stm32, stm32f103
Dirtyjtag
JTAG probe firmware for STM32F1
Stars: ✭ 183 (+200%)
Mutual labels:  usb, stm32
f1usb
Einfaches Beispiel für die Entwicklung eines USB FullSpeed Device auf Basis des STM32F103 ohne die Verwendung externer Bibliotheken
Stars: ✭ 27 (-55.74%)
Mutual labels:  usb, stm32

STM32 Tiny Monitor

A super tiny monitor for your PC, suitable for your pet ant.

A python script sends the captured screen over USB to the STM32 microcontroller, then that data is displayed on ST7789 display. FPS is not that high, but I made it good enough after several optimizations.

TinyMonitor demo

I made this project because I'm learning USB now and this is a fun project to practice USB stuffs. I still know almost nothing about USB. To get started, follow this tutorial: https://medium.com/@manuel.bl/usb-for-microcontrollers-part-1-basic-usb-concepts-519a33372cc9

Parts:

  • STM32F103 MCU (Bluepill)
  • ST7789 SPI Display (240x240 resolution)

How to use:

  1. Compile the firmware and flash the microcontroller
  2. Follow the instruction in host_python_scripts folder to run the host software.
  3. Connect microcontroller to PC using USB cable. Host software will start the stream.
  4. Enjoy your tiny monitor :)

Demo:

  1. https://youtu.be/5AGjsRObFtk
  2. https://youtu.be/oFxuoMdBxJk

TODO:

  • Optimize the device (mcu) firmware. Buffer the incoming packets befoe sending to SPI bus.
  • Write host software in C/C++ to get higher performance

Feel free to modify the code and do whatever you want with this useless project.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].