Picoruby and PRK Firmware
Offered By: Ruby Central via YouTube
Course Description
Overview
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.
Syllabus
Intro
When you build a keyboard You can choose Keycaps for appearance and touch
Keyboard firmware
e.g. prk_pipigherkin/keymap.rb
Install into the microcontroller
A new drive automatically mounted
Drag & drop keymap.rb
Demonstrations
Fibonacci in keymap.rb
Password generator in keymap.rb
Extend your keyboard
Micon of PRK Firmware
Ruby Association
Multitasking
Architecture
To make a small Ruby compiler mruby-compiler depends on mruby The main reason for big footprint
RAM consumption
hello_world.rb (20 bytes)
keymap.rb of meish2 (2388 bytes)
Summary
Depending on only libc and less glibc for desktop/server application newlib for embedded application
Padding in a struct
Paddings waste memomy
Pooled allocation
Taught by
Ruby Central
Related Courses
Web Application ArchitecturesUniversity of New Mexico via Coursera Ruby مدخل إلى برمجة مواقع الإنترنت باستخدام لغة
Rwaq (رواق) Rails with Active Record and Action Pack
Johns Hopkins University via Coursera Ruby on Rails: An Introduction
Johns Hopkins University via Coursera Ruby on Rails Web Services and Integration with MongoDB
Johns Hopkins University via Coursera