Commit Graph

24 Commits

Author SHA1 Message Date
0efa8d4fd8 Add WIP test script
Depends on having:

1. An STM32 Nucleo with an STM32L412RB connected
2. A serial device connected to that board
3. A JLink connected to that board (no the onboard ST-Link!)

For now, there are some hardcoded paths, too.
2020-04-13 19:43:32 -07:00
5942d98e21 Add UsartDriver (TX-only) 2020-04-11 11:08:50 -07:00
99317eb99b Hack in support for other boards/microcontrollers, add GpioDriver
There's definitely plenty of cleanup work to be done (see:
"ifdefs").
2020-04-11 11:07:57 -07:00
385402e7aa Add/update STM32 headers 2020-04-11 10:41:39 -07:00
08bf863e79 Move .gdbinit to the firmware directory 2019-12-17 22:19:39 -08:00
463c3afd3d Add Stopwatch application
It can be started, stopped, and cleared. It also continues to run if
you leave the screen.
2019-12-17 22:19:39 -08:00
00c9910872 Swap button assignments
They were flipped in the watch v1.1 design, since the are now on the
opposite side.
2019-12-17 22:19:39 -08:00
2a633fe748 _Really_ fix the badge link 2019-12-16 04:39:46 +00:00
03a4dfc7a3 Fix badge link 2019-12-16 04:38:08 +00:00
b8783059c3 Enable Drone CI 2019-12-16 04:36:44 +00:00
ae837eef12 refactor tree, add ecad, mcad 2019-08-28 23:23:48 -07:00
d5ddd76bef Full color support, rework the directory structure 2019-08-05 22:15:40 -07:00
77f09bca16 At least: font code generator, exchange code support for color 128x128 2019-08-04 15:35:44 -07:00
e0b49ba109 Fix screen stack popping and add a menu 2019-06-26 09:07:34 -07:00
5cfa22c650 Add a C file generator for TrueType fonts
In order to be able to optimize the output better, add my own TTF
generator. Fortunately, freetype-py handles all of the hard work.

The generator is not yet integrated.
2019-06-26 09:02:34 -07:00
125ddfb687 Enable buttons and the display.
Kind-of-sort-of usable-ish.
2019-06-06 22:30:27 -07:00
1cc2f7adf4 Happy times: things work on real hardware! 2019-06-02 21:34:18 -07:00
a7f1ffc1b5 Huge refactoring for C++ and low-power mode
The display currently shows the time, with hours and minutes, and is
capable of receiving input with buttons (though does nothing). It
sleeps during intervals where nothing is happening. The display task
runs once per second, and RTC alarm A is used for periodic alarms to
update the system time.
2019-04-17 21:51:35 -07:00
6747d6c831 C++ refactoring, plus low-power support, plus software-based SPI CS
I'm backlogged.
2019-04-13 15:08:02 -07:00
d5bfecedb2 Use the builtin RTC and display it
Its roughly %15 fast, and initializes to zero, but the display
currently shows HH:MM:SS AM/PM.
2019-03-11 22:56:08 -07:00
dedcb5af71 Start beautifying the code
* Split out SPI and display (a little)
* Use more of the common Macros
* Remove wasted bytes from notomono font
* Create a mock "menu"
2019-03-10 18:16:55 -07:00
fab3332c65 Enable text display on Sharp display
1. Add basic code for Sharp Display
2. Add embedded font (generated by fontem)
3. Add the worst code possible to print strings to the display
4. Rejoice in the beautiful (small) text.
2019-03-04 00:22:01 -08:00
43d29285ef Add functional-ish SPI
Still need to correctly handle NSS, since the hardware seems to do
strange things.

Also, no DMA is being used yet.
2019-03-02 12:50:06 -08:00
f69fbec0ae Initial commit
Add startup code for STM32L031K6, and blink two LEDs, one with CPU,
and one with the LPTIM at 60Hz for the (to-be-implemented) Sharp display.
2019-02-23 17:32:07 -08:00