Skip to content
This repository has been archived by the owner on Aug 2, 2020. It is now read-only.
Vince van Oosten edited this page Jan 5, 2018 · 6 revisions

Diary

Here I will make notes about my journey

Some days between repo init and 2016-12-27

  • initialized repo
  • did some research on the microcontroller recommended for the dactyl (teensy 2.0)
  • tried to run blink device on my arduino nano (same/similar chip), was quite a hassle (can't remember if I got it working)
  • decided I wanted to use an ARM board instead (rust has pretty good ARM support already)
  • discovered that the teensy 3.2 is an ARM board and only sligthly larger than the 2 and decided to use that
  • ordered several parts that have since arrived
  • used the blink

2016-12-27: Research! The curious incident of the whatchdog in the night-time

I did a lot of research today, and in doing that I found out that there are a lot of resources availiable already (^^,). The rust community is so amazing! However, almost none of those are teensy 3 specific, so some work on my part is required :3 .
In the end I created the Programming section and added a lot of ideas and links to it.
Oh! I also found out that the teensy 3 / ARM Cortex M4 has an interrupt controller (which is very common in modern architechtures) So I thought that I use that for keypresses (not one per key, I don't have nearly enough).
Almost next to that I see the term whatchdog, which I know as a software program that restarts another deamon (or the whole OS) if another program suddenly stops working, so that peaks my interest. It turns out that the whatchdog in hardware(!) might be useful. It looks like I am required to write to a specific register, otherwise it resets. Since in minimal-embedded-rust the panic! is implemented as literally loop {} (no, really!), the whatchdog instantly becomes useful! (because a loop that is equivalent to while true; do nothing does not write to the register)

2018-01-05: Over a year later, not much progress

Between playing bass and working full-time I haven't had much time (nor motivation) to do much work on this project, and it doesn't help if you don't know where to start. Luckily, the community has done more work on microcontrollers in rust 😄.
In the past year I've attempted to continue every now and then, but I haven't made much progress until recently. Encountering the rust assembly at the 34C3 has given me new motivation to continue this (long) project.

I've seen that tockos has been improving, and I have also found someone who is porting tockos to the teensy 3.6: tock for teensy 3.6.
I've asked the author for help, but no response yet. I then forked it and started porting tock to the teensy 3.2 here: tock for teensy 3.2

Perhaps I'll ask the tockos community for some assistance.

Misc Ideas: