When you build a keyboard You can choose Keycaps for appearance and touch
3
Keyboard firmware
4
e.g. prk_pipigherkin/keymap.rb
5
Install into the microcontroller
6
A new drive automatically mounted
7
Drag & drop keymap.rb
8
Demonstrations
9
Fibonacci in keymap.rb
10
Password generator in keymap.rb
11
Extend your keyboard
12
Micon of PRK Firmware
13
Ruby Association
14
Multitasking
15
Architecture
16
To make a small Ruby compiler mruby-compiler depends on mruby The main reason for big footprint
17
RAM consumption
18
hello_world.rb (20 bytes)
19
keymap.rb of meish2 (2388 bytes)
20
Summary
21
Depending on only libc and less glibc for desktop/server application newlib for embedded application
22
Padding in a struct
23
Paddings waste memomy
24
Pooled allocation
Description:
Explore a conference talk from RubyConf 2021 that delves into PicoRuby, an alternative implementation of the mruby interpreter for one-chip microcontrollers, and PRK Firmware, the world's first keyboard firmware framework in Ruby. Learn how to write custom keymaps and configure additional behavior using Ruby's features like open class system and Proc objects. Discover the potential of Ruby as a scripting language for microcontrollers, comparable to MicroPython, CircuitPython, or Lua. Gain insights into keyboard building, including keycap selection and firmware installation. Witness demonstrations of Fibonacci sequences and password generators in keymap.rb. Understand the architecture, multitasking capabilities, and memory optimization techniques used in PicoRuby and PRK Firmware. Explore the challenges and solutions in creating a small Ruby compiler for embedded applications, including RAM consumption and memory allocation strategies.