Take the Blue Pill/VNC for OLED

A project log for REMB - Raz0r Electric Mountain Board

An electric mountain board, built from scooter parts.

Daren SchwenkeDaren Schwenke 08/07/2019 at 08:090 Comments

Been going down the road of building the remote and trying to fit everything on an Arduino Pro mini 3.3v 8Mhz.  It's not been going well.  I can fit all the libraries I need, set everything up for communicating, and establish a loop, but then there is not much room left for logic and actually doing stuff like drawing to the display.

I've been toying with the idea of just rendering everything on the mountainboard CPU (Blue Pill) and then streaming just the raw content of the framebuffer to the remote display.  I think that might actually work pretty well with my 128x32 monochrome display as the the whole framebuffer fits in 4096 bits.  Even at the lowest data rate for the NRF24L01 module, that means I can still get 60fps.  Sending the whole content also means missed frames wouldn't matter much. 

I found the commands I would need to dump the internal display buffer and pipe it over.  I would run all my drawing commands on the STM32 which would modify the local buffer, and then on every transmission from the remote I send those buffer contents back.   The remote becomes a dumb terminal.

Then I killed my first Pro mini when a fleck of loose solder shorted two pins near reset.

I think I might undervolt a Nano and be done with it.  Alas, the Blue Pill is a little too big to fit in the controller.

Speaking of the Blue pills, I flashed a bootloader!  Not sure it works yet as I believe I need to do the D+ data line resistor swap thingy on this one.  It doesn't show up via lsusb when I plug it in. :(