rabbit-slide-hasumikin-SWEST21 2019.09.06
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rabbit +1 -0
- data/README.rd +24 -0
- data/Rakefile +17 -0
- data/config.yaml +24 -0
- data/images/180425_mruby-c_fix_color_data-04.png +0 -0
- data/images/IDE.png +0 -0
- data/images/IMG_0003.jpg +0 -0
- data/images/RWC2019.png +0 -0
- data/images/bytecode.png +0 -0
- data/images/co2_demo.png +0 -0
- data/images/collage01.jpg +0 -0
- data/images/eriko-san.jpg +0 -0
- data/images/esp32.jpg +0 -0
- data/images/esp32_block_diagram-2.png +0 -0
- data/images/esp32_block_diagram.png +0 -0
- data/images/esp32_devboard.png +0 -0
- data/images/esp32_module.png +0 -0
- data/images/esp32_module_block_diagram.png +0 -0
- data/images/esp32_onechip.jpg +0 -0
- data/images/esp32_onechip.png +0 -0
- data/images/esp32_original.jpg +0 -0
- data/images/esp32_pcb_layout.png +0 -0
- data/images/gucchi.jpg +0 -0
- data/images/hasumi.jpg +0 -0
- data/images/how-mrubyc-test-works.png +0 -0
- data/images/hype-cycle.jpg +0 -0
- data/images/juji-asahi.jpg +0 -0
- data/images/kamos.jpg +0 -0
- data/images/kamos_2019.png +0 -0
- data/images/kouji.jpg +0 -0
- data/images/krkrb-main.png +0 -0
- data/images/krkrb-main.svg +1 -0
- data/images/krkrb-main.svg.png +0 -0
- data/images/m1.png +0 -0
- data/images/m2.png +0 -0
- data/images/mark32.png +0 -0
- data/images/mark48.png +0 -0
- data/images/mark64.png +0 -0
- data/images/monstarlab.png +0 -0
- data/images/monstarlab_global.png +0 -0
- data/images/motosuri.jpg +0 -0
- data/images/mruby_and_mrubyc-mruby.png +0 -0
- data/images/mruby_and_mrubyc-mrubyc.png +0 -0
- data/images/mruby_and_mrubyc.png +0 -0
- data/images/muro.jpg +0 -0
- data/images/mushi.jpg +0 -0
- data/images/nigouki.jpg +0 -0
- data/images/psoc5lp_chip.jpg +0 -0
- data/images/raspberrypi.jpg +0 -0
- data/images/rubykaigi2018.png +0 -0
- data/images/rubykaigi2019-2.png +0 -0
- data/images/rubykaigi2019.png +0 -0
- data/images/rwc2019.png +0 -0
- data/images/slide-background.png +0 -0
- data/images/suimeikan.jpg +0 -0
- data/images/tryit-1.jpg +0 -0
- data/images/tryit-2.jpg +0 -0
- data/images/umeda_yodobashi.jpg +0 -0
- data/images/unsoldered-2.png +0 -0
- data/images/unsoldered.jpg +0 -0
- data/images//346/235/276/346/261/237/345/237/216_Matsue.rb.16x9.jpg +0 -0
- data/images//346/235/276/346/261/237/345/237/216_Matsue.rb.jpg +0 -0
- data/mrubyc-IoT-system-for-SAKE-brewery.rab +348 -0
- data/pdf/SWEST21-mrubyc-IoT-system-for-SAKE-brewery.pdf +0 -0
- data/theme.rb +99 -0
- metadata +121 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 598f81cc2a7a259b8d9880c77791d980b1870f01317f53646be41b9444841ac4
|
4
|
+
data.tar.gz: 36d6f0f380f473704412fee7b22bb4df90e276371e47dde8ef900c8724760189
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 767eb2896dd73242a6cbe174656defc2135e2b467f26425ad925ebe3d3932c216cec492a2f45040717ad878bc0bd75f1bca4c1ef1219ac3f610eb0ae8cbce131
|
7
|
+
data.tar.gz: bd1a52cdbb1baa98e00dbc6b1f10b6e4294261db6fcc56f4ef1d4b2ac67c98b02d5a80fa18fc09dc2a13b533b7fb971b9a83e3dd1236371197c82dda8387b35c
|
data/.rabbit
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
mrubyc-IoT-system-for-SAKE-brewery.rab
|
data/README.rd
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
= IoT with mruby/c on the Asahi-shuzo (Shimane)
|
2
|
+
|
3
|
+
Presentation for SWEST21
|
4
|
+
|
5
|
+
== 作者向け
|
6
|
+
|
7
|
+
=== 表示
|
8
|
+
|
9
|
+
rake
|
10
|
+
|
11
|
+
=== 公開
|
12
|
+
|
13
|
+
rake publish
|
14
|
+
|
15
|
+
== 閲覧者向け
|
16
|
+
|
17
|
+
=== インストール
|
18
|
+
|
19
|
+
gem install rabbit-slide-hasumikin-RubyBusiness2019
|
20
|
+
|
21
|
+
=== 表示
|
22
|
+
|
23
|
+
rabbit rabbit-slide-hasumikin-RubyBusiness2019.gem
|
24
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require "rabbit/task/slide"
|
2
|
+
|
3
|
+
# Edit ./config.yaml to customize meta data
|
4
|
+
|
5
|
+
spec = nil
|
6
|
+
Rabbit::Task::Slide.new do |task|
|
7
|
+
spec = task.spec
|
8
|
+
# spec.files += Dir.glob("doc/**/*.*")
|
9
|
+
# spec.files -= Dir.glob("private/**/*.*")
|
10
|
+
# spec.add_runtime_dependency("YOUR THEME")
|
11
|
+
end
|
12
|
+
|
13
|
+
desc "Tag #{spec.version}"
|
14
|
+
task :tag do
|
15
|
+
sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
|
16
|
+
sh("git", "push", "--tags")
|
17
|
+
end
|
data/config.yaml
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
---
|
2
|
+
id: SWEST21
|
3
|
+
base_name: mrubyc-IoT-system-for-SAKE-brewery
|
4
|
+
tags:
|
5
|
+
- mruby
|
6
|
+
- mruby/c
|
7
|
+
- iot
|
8
|
+
- sake
|
9
|
+
presentation_date: 2019/09/06
|
10
|
+
version: 2019.09.06
|
11
|
+
licenses: []
|
12
|
+
slideshare_id:
|
13
|
+
speaker_deck_id:
|
14
|
+
ustream_id:
|
15
|
+
vimeo_id:
|
16
|
+
youtube_id:
|
17
|
+
author:
|
18
|
+
markup_language: :rd
|
19
|
+
name: HASUMI Hitoshi
|
20
|
+
email: hasumikin@gmail.com
|
21
|
+
rubygems_user: hasumikin
|
22
|
+
slideshare_user:
|
23
|
+
speaker_deck_user:
|
24
|
+
size: 1920,1080
|
Binary file
|
data/images/IDE.png
ADDED
Binary file
|
data/images/IMG_0003.jpg
ADDED
Binary file
|
data/images/RWC2019.png
ADDED
Binary file
|
data/images/bytecode.png
ADDED
Binary file
|
data/images/co2_demo.png
ADDED
Binary file
|
Binary file
|
Binary file
|
data/images/esp32.jpg
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/images/gucchi.jpg
ADDED
Binary file
|
data/images/hasumi.jpg
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/images/kamos.jpg
ADDED
Binary file
|
Binary file
|
data/images/kouji.jpg
ADDED
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 739.03 574.87"><defs><style>.cls-1{fill:#182943;}.cls-2{fill:#afbdff;}.cls-3{fill:#c2cdff;}.cls-4{fill:#dde4ff;}.cls-5{fill:#8b9fff;}.cls-6{fill:#f34611;}.cls-7{fill:#c9260a;}.cls-8,.cls-9{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}.cls-8{stroke:#f34611;}.cls-9{stroke:#c9260a;}</style></defs><title>Asset 3</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M553.41,239.39C529.24,97.89,346.38-5.49,259.59,36.18c-33,15.85-61.9,57.39-59.86,97.32,3.77,73.68,110.92,105,101.07,148-8.39,36.62-88.24,23.2-114.43,70.13C155.52,406.92,210.12,526.21,283,545.11,388.1,572.38,581.44,403.48,553.41,239.39Z"/><polygon class="cls-2" points="375.5 364.35 503.93 315.42 415.42 485.23 333.16 543.39 243.71 532.32 290.59 479.56 375.5 364.35"/><path class="cls-2" d="M739,288.92s-168.15-61.28-238.51-52.2S336,310.48,307.05,326.93s-105.26,54.64-105.26,54.64,21,27.49,55.37,13.38,66.06-28,86.48-24.07,51.63,17.33,104.68-17.28S739,288.92,739,288.92Z"/><path class="cls-2" d="M375.5,364.35S260.81,483.81,248,492s-99.57,1.7-112.91,3.4-27.51,7.66-31.2,13.62,127.66,18.72,145.25,13.62,56.73-37.45,56.73-37.45Z"/><path class="cls-2" d="M120.52,513.76c-16.67.55-36.48,1.19-34.18,10.09,10.4,8.47,51.8,16.17,49.17,15.47l96.5,4.07s78.73-14.47,96.6-34.33-22.7-23.83-22.7-23.83-46.86,32.61-56.17,33.66S137.19,513.22,120.52,513.76Z"/><path class="cls-3" d="M319,558.61s-56.45,16.26-86.81,16.26-120.28-26.38-120.28-32.34,20.71-16.21,37.45-16.21S239,541.39,239,541.39Z"/><path class="cls-4" d="M719.53,418.28S688.89,363,628.75,382.71,432.44,513.6,397.26,545.37s-162.77,7.14-170.5-6c0,0,9.11-17.12,34.05-16.22s63.81,3.72,83.1-.84,55.27-36.45,68.6-60.38S472.15,266.22,565.2,259.41,739,288.92,739,288.92Z"/><path class="cls-5" d="M185,117.74v21l-1.63,1.63L166.7,128.11a17.84,17.84,0,0,1-8.89-15.44V111.6c-2.12-1.85,4.57-6.88,8.24-4.77Z"/><path class="cls-3" d="M183.39,119.37v21l-18.32-10.65a17.84,17.84,0,0,1-8.89-15.44v-1.08a5.5,5.5,0,0,1,8.24-4.76Z"/><path class="cls-5" d="M185,160.93v21l-1.63,1.63L166.7,171.31a17.85,17.85,0,0,1-8.89-15.44v-1.08c-2.12-1.84,4.57-6.87,8.24-4.76Z"/><path class="cls-3" d="M183.39,162.56v21l-18.32-10.64a17.85,17.85,0,0,1-8.89-15.44v-1.08a5.5,5.5,0,0,1,8.24-4.77Z"/><path class="cls-5" d="M185,204.13v21l-1.63,1.63L166.7,214.51a17.85,17.85,0,0,1-8.89-15.44V198c-2.12-1.85,4.57-6.87,8.24-4.77Z"/><path class="cls-3" d="M183.39,205.76v21l-18.32-10.64a17.85,17.85,0,0,1-8.89-15.44v-1.08a5.5,5.5,0,0,1,8.24-4.77Z"/><path class="cls-5" d="M185,247.33v21L183.39,270,166.7,257.7a17.82,17.82,0,0,1-8.89-15.44v-1.07c-2.12-1.85,4.57-6.88,8.24-4.77Z"/><path class="cls-3" d="M183.39,249v21l-18.32-10.65a17.84,17.84,0,0,1-8.89-15.44v-1.08a5.5,5.5,0,0,1,8.24-4.76Z"/><path class="cls-5" d="M201.23,309.7l18.08,10.12,0,19c-3.26,8.87-6,9-10.8,6.23h0a14.58,14.58,0,0,1-7.28-12.63l-1.61-21.08Z"/><path class="cls-3" d="M199.59,311.34l18.08,10.1v19a7.2,7.2,0,0,1-10.79,6.24h0A14.59,14.59,0,0,1,199.59,334Z"/><path class="cls-5" d="M231.66,327.08l18.07,10.11v19c-3.27,8.88-6,9-10.8,6.23h0a14.56,14.56,0,0,1-7.28-12.63L230,328.7Z"/><path class="cls-3" d="M230,328.71l18.09,10.11v19A7.2,7.2,0,0,1,237.3,364h0A14.56,14.56,0,0,1,230,351.42Z"/><path class="cls-5" d="M264.48,345.54l18.08,10.12v19c-3.27,8.87-6,9-10.81,6.22h0a14.59,14.59,0,0,1-7.28-12.62l-1.61-21.08Z"/><path class="cls-3" d="M262.84,347.18l18.09,10.1v19a7.2,7.2,0,0,1-10.8,6.23h0a14.56,14.56,0,0,1-7.29-12.62Z"/><path class="cls-5" d="M294.91,362.91,313,373l0,19c-3.27,8.87-6,9-10.8,6.23h0a14.56,14.56,0,0,1-7.28-12.63l-1.61-21.08Z"/><path class="cls-3" d="M293.26,364.55l18.09,10.1v19a7.21,7.21,0,0,1-10.8,6.24h0a14.58,14.58,0,0,1-7.29-12.62Z"/><path class="cls-5" d="M190.15,287.84,185,74.57c8.64-7,12.46-12.83,18.37-9.47l128.53,73.12a21.81,21.81,0,0,1,11,18.94V372.21c0,6.79-10,13.34-13.77,17.12l-128-82.55A21.78,21.78,0,0,1,190.15,287.84Z"/><path class="cls-3" d="M179.89,297.56v-215a8.86,8.86,0,0,1,13.24-7.7l128.54,73.13a21.79,21.79,0,0,1,11,18.94V381.93a8.86,8.86,0,0,1-13.24,7.7L190.91,316.5A21.78,21.78,0,0,1,179.89,297.56Z"/><path class="cls-5" d="M195,279.53l-4.11-170.85c6.92-5.62,10-10.28,14.71-7.59l103,58.58a17.46,17.46,0,0,1,8.82,15.17V347.11c0,5.44-8,10.69-11,13.71L203.79,294.7A17.46,17.46,0,0,1,195,279.53Z"/><path class="cls-3" d="M186.75,287.31V115.05a7.09,7.09,0,0,1,10.6-6.17l103,58.58a17.43,17.43,0,0,1,8.82,15.17V354.9a7.09,7.09,0,0,1-10.6,6.16l-103-58.57A17.48,17.48,0,0,1,186.75,287.31Z"/><path class="cls-5" d="M206.66,74.84l-1.58-18.59c0-4.58,6.53-9,10.5-6.67h0a17.12,17.12,0,0,1,8.56,14.83V84.92l-1.57,1.58Z"/><path class="cls-3" d="M205.08,76.42V56.31A6,6,0,0,1,214,51.16h0A17.1,17.1,0,0,1,222.57,66V86.5Z"/><path class="cls-5" d="M238.44,93.61,236.87,75c0-4.58,6.53-9,10.5-6.67h0a17.12,17.12,0,0,1,8.56,14.83v20.51l-1.58,1.58Z"/><path class="cls-3" d="M236.87,95.19V75.08a5.94,5.94,0,0,1,8.92-5.15h0a17.09,17.09,0,0,1,8.56,14.82v20.52Z"/><path class="cls-5" d="M271,110.45l-1.58-18.59c0-4.58,6.54-9,10.5-6.67h0A17.12,17.12,0,0,1,288.5,100v20.52l-1.58,1.58Z"/><path class="cls-3" d="M269.43,112V91.92a6,6,0,0,1,8.93-5.15h0a17.09,17.09,0,0,1,8.56,14.82v20.52Z"/><path class="cls-5" d="M302.8,129.22l-1.58-18.59c0-4.58,6.53-9,10.5-6.67h0a17.11,17.11,0,0,1,8.56,14.82V139.3l-1.57,1.58Z"/><path class="cls-3" d="M301.22,130.79v-20.1a6,6,0,0,1,8.92-5.15h0a17.1,17.1,0,0,1,8.57,14.82v20.52Z"/><path class="cls-5" d="M339.14,192.19l-1.62,1.63,1.62,19.39,16,11.57c4.73,1.46,11.25-2.74,11.25-8.21h0a15.11,15.11,0,0,0-7.58-13.1Z"/><path class="cls-3" d="M337.52,193.82v21l16.56,9.52a7.11,7.11,0,0,0,10.65-6.16h0a15.11,15.11,0,0,0-7.58-13.1Z"/><path class="cls-5" d="M339.14,238.29l-1.62,1.63,1.62,19.39,16,11.57c4.73,1.46,11.25-2.74,11.25-8.21h0a15.12,15.12,0,0,0-7.58-13.1Z"/><path class="cls-3" d="M337.52,239.92v21l16.56,9.52a7.11,7.11,0,0,0,10.65-6.16h0a15.11,15.11,0,0,0-7.58-13.1Z"/><path class="cls-5" d="M339.14,284.39,337.52,286l1.62,19.39,16,11.57c4.73,1.46,11.25-2.74,11.25-8.2h0a15.13,15.13,0,0,0-7.58-13.11Z"/><path class="cls-3" d="M337.52,286v21l16.56,9.52a7.11,7.11,0,0,0,10.65-6.16h0a15.12,15.12,0,0,0-7.58-13.1Z"/><path class="cls-5" d="M339.14,330.49l-1.62,1.63,1.62,19.39,16,11.57c4.73,1.46,11.25-2.74,11.25-8.2h0a15.13,15.13,0,0,0-7.58-13.11Z"/><path class="cls-3" d="M337.52,332.12v21l16.56,9.52a7.11,7.11,0,0,0,10.65-6.15h0a15.13,15.13,0,0,0-7.58-13.11Z"/><path class="cls-6" d="M105.2,322.75,83.34,308.43h0a4.76,4.76,0,0,0-.49-.28l-.29-.14-.22-.1-.34-.12-.19-.06-.33-.08-.22-.05-.29,0-.27,0H79.9l-.34,0-.28,0-.27.05a5.09,5.09,0,0,0-.56.14h0l-31.54,10a5.75,5.75,0,0,0-3.62,3.36L33.6,345.34a5.77,5.77,0,0,0,2.41,7.1L78.7,377.81h0l.4.21.15.08h0a4.87,4.87,0,0,0,.53.21l.21.06c.12,0,.23.07.35.09l.22,0,.35.05.22,0,.35,0h.58l.19,0,.41-.06.15,0a5.36,5.36,0,0,0,.54-.14h0a5.55,5.55,0,0,0,.52-.2l.14-.06.37-.18.16-.1.32-.2.16-.12a3.15,3.15,0,0,0,.29-.22l.16-.14.26-.25.15-.16.24-.28.13-.17a5.72,5.72,0,0,0,.32-.48h0l.08-.15c.07-.14.15-.27.21-.4v0l20.39-45.28A5.75,5.75,0,0,0,105.2,322.75Z"/><path class="cls-7" d="M430.39,38.27l-9.47-24.36h0a4.9,4.9,0,0,0-.24-.52c0-.09-.1-.18-.15-.27l-.12-.21-.21-.3-.12-.16-.22-.26-.15-.17-.21-.2-.2-.19-.2-.15a2.43,2.43,0,0,0-.25-.2l-.19-.12-.29-.18-.25-.12-.25-.13a4.81,4.81,0,0,0-.53-.2h0L385.88.28A5.79,5.79,0,0,0,381,.92L359,15a5.76,5.76,0,0,0-2.16,7.18l20,45.45v0l.2.4s.05.11.08.16h0a4.9,4.9,0,0,0,.31.48l.13.17.23.28.16.17.25.24.16.15.28.22.17.12.32.2.16.1.36.19.14.06a5.55,5.55,0,0,0,.52.2h0a5.44,5.44,0,0,0,.54.15l.15,0,.4.06.19,0,.38,0h.56l.22,0,.35-.06.22,0a3.58,3.58,0,0,0,.35-.09l.21-.06.53-.2h0a.8.8,0,0,1,.16-.08c.13-.07.27-.13.39-.21h0l42.9-25A5.76,5.76,0,0,0,430.39,38.27Z"/><path class="cls-8" d="M343,449C156.55,435.26,109,407.64,105.26,382.64c-4.18-27.82,45.32-55.65,35.5-88-6.6-21.74-35.94-32-57.1-37"/><path class="cls-8" d="M31.87,409.74s53-32.13,72,19.67,229.31,35,229.31,35"/><path class="cls-8" d="M145.06,365.33s53.68-61.4,0-95.35"/><line class="cls-8" x1="124.48" y1="258.56" x2="103.85" y2="252.94"/><line class="cls-8" x1="320.28" y1="485.23" x2="248.04" y2="492.04"/><line class="cls-8" x1="230.03" y1="495.6" x2="196.51" y2="495.6"/><path class="cls-8" d="M20.24,416.21S4.77,424.93,1,437.55"/><path class="cls-8" d="M145.06,437.55s26.16,15.31,51.45,11.45"/><path class="cls-9" d="M402.3,240.9s-71.06-75.55-30.87-100,43.16-37.09,30.87-46.61"/><path class="cls-9" d="M383.91,182.25c-16.15-26,0-32.73,0-32.73"/><line class="cls-9" x1="389.3" y1="192.19" x2="398.22" y2="205.54"/><path class="cls-9" d="M376.73,87.2S391,88,389.3,100.31"/></g></g></svg>
|
Binary file
|
data/images/m1.png
ADDED
Binary file
|
data/images/m2.png
ADDED
Binary file
|
data/images/mark32.png
ADDED
Binary file
|
data/images/mark48.png
ADDED
Binary file
|
data/images/mark64.png
ADDED
Binary file
|
Binary file
|
Binary file
|
data/images/motosuri.jpg
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/images/muro.jpg
ADDED
Binary file
|
data/images/mushi.jpg
ADDED
Binary file
|
data/images/nigouki.jpg
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/images/rwc2019.png
ADDED
Binary file
|
Binary file
|
Binary file
|
data/images/tryit-1.jpg
ADDED
Binary file
|
data/images/tryit-2.jpg
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,348 @@
|
|
1
|
+
= mruby/c: IoT system for\n🍶 SAKE brewery 🍶
|
2
|
+
|
3
|
+
: author
|
4
|
+
HASUMI Hitoshi @hasumikin
|
5
|
+
: institution
|
6
|
+
Monstar Lab
|
7
|
+
: content-source
|
8
|
+
SWEST21 ♨♨♨ 下呂温泉 水明館
|
9
|
+
: date
|
10
|
+
Sep. 6, 2019
|
11
|
+
: allotted-time
|
12
|
+
23m
|
13
|
+
: theme
|
14
|
+
theme
|
15
|
+
|
16
|
+
= Me
|
17
|
+
* HASUMI Hitoshi\n@hasumikin
|
18
|
+
* Matsue city,\na holy place of Ruby
|
19
|
+
* Sake 🍶\nSoba 🍜\nCoffee ☕
|
20
|
+
# image
|
21
|
+
# src = images/hasumi.jpg
|
22
|
+
# align = right
|
23
|
+
# relative-height = 80
|
24
|
+
|
25
|
+
= Me
|
26
|
+
# image
|
27
|
+
# src = images/monstarlab.png
|
28
|
+
# relative_width = 110
|
29
|
+
# relative_margin_top = -10
|
30
|
+
|
31
|
+
= Me
|
32
|
+
# image
|
33
|
+
# src = images/m2.png
|
34
|
+
# relative_width = 100
|
35
|
+
# relative_margin_top = -10
|
36
|
+
|
37
|
+
= Me
|
38
|
+
# image
|
39
|
+
# src = images/tryit-1.jpg
|
40
|
+
# relative_width = 100
|
41
|
+
# relative_margin_top = -10
|
42
|
+
|
43
|
+
= Me
|
44
|
+
# image
|
45
|
+
# src = images/tryit-2.jpg
|
46
|
+
# relative_width = 100
|
47
|
+
# relative_margin_top = -10
|
48
|
+
|
49
|
+
= Me
|
50
|
+
# image
|
51
|
+
# src = images/松江城_Matsue.rb.jpg
|
52
|
+
# relative_width = 106
|
53
|
+
# relative_margin_top = -10
|
54
|
+
== prop
|
55
|
+
: hide-title
|
56
|
+
true
|
57
|
+
|
58
|
+
= 旭日酒造
|
59
|
+
|
60
|
+
# image
|
61
|
+
# src = images/juji-asahi.jpg
|
62
|
+
# align = center
|
63
|
+
# relative-height = 65
|
64
|
+
* one of the best Japanese Sake brewery
|
65
|
+
* Asahi-shuzo and I make an IoT system using mruby/c
|
66
|
+
|
67
|
+
= Asahi-shuzo
|
68
|
+
|
69
|
+
* 旭酒造(Asahi-shuzo), Yamaguchi: 獺祭(Dassai). fruity, aromatic and sweet
|
70
|
+
* 朝日酒造(Asahi-shuzo), Niigata: 久保田(Kubota). clear, dry and sharp
|
71
|
+
* 朝日酒造(Asahi-shuzo), Fukui: ???
|
72
|
+
* 旭日酒造(Asahi-shuzo), Shimane: ((*十旭日(Juji-Asahi)*)). tasteful, mature with years and good for お燗(warmed style)
|
73
|
+
|
74
|
+
= What is mruby/c?
|
75
|
+
|
76
|
+
= What is mruby/c?
|
77
|
+
|
78
|
+
* github.com/mrubyc/mrubyc
|
79
|
+
* yet another implementation of mruby
|
80
|
+
* `/c` symbolizes compact,\nconcurrent and capability
|
81
|
+
* especially dedicated to\none-chip microcontroller
|
82
|
+
|
83
|
+
= mruby and mruby/c
|
84
|
+
# RT
|
85
|
+
|
86
|
+
mruby, mruby/c
|
87
|
+
|
88
|
+
v1.0.0 in Jan 2014, v1.0 in Jan 2017
|
89
|
+
for general embedded software, for one-chip microcontroller
|
90
|
+
RAM < 400KB, RAM < 40KB
|
91
|
+
|
92
|
+
= About my IoT project
|
93
|
+
|
94
|
+
* IoT system for Asahi-shuzo
|
95
|
+
* delivered to actual brew work in January 2018
|
96
|
+
* devices post temperature of Sake materials in brewing, surrounding temperature and humidity to server
|
97
|
+
* data is displayed on smartphone app
|
98
|
+
|
99
|
+
= About my IoT project
|
100
|
+
|
101
|
+
# image
|
102
|
+
# src = images/eriko-san.jpg
|
103
|
+
# align = center
|
104
|
+
# relative-height = 100
|
105
|
+
|
106
|
+
= What is "taking temperature" ?
|
107
|
+
|
108
|
+
# image
|
109
|
+
# src = images/mushi.jpg
|
110
|
+
# align = center
|
111
|
+
# relative-height = 110
|
112
|
+
|
113
|
+
= what is "taking temperature" ?
|
114
|
+
|
115
|
+
# image
|
116
|
+
# src = images/motosuri.jpg
|
117
|
+
# align = center
|
118
|
+
# relative-height = 110
|
119
|
+
|
120
|
+
= what is "taking temperature" ?
|
121
|
+
|
122
|
+
# image
|
123
|
+
# src = images/kouji.jpg
|
124
|
+
# align = center
|
125
|
+
# relative-height = 110
|
126
|
+
|
127
|
+
= 1st season (2017BY)
|
128
|
+
|
129
|
+
= 1st season (2017BY)
|
130
|
+
|
131
|
+
(('tag:center'))
|
132
|
+
\n\n\n
|
133
|
+
(('tag:xx-large:before mruby/c'))
|
134
|
+
|
135
|
+
= 1st season (2017BY)
|
136
|
+
|
137
|
+
# image
|
138
|
+
# src = images/IMG_0003.jpg
|
139
|
+
# align = center
|
140
|
+
# relative-height = 100
|
141
|
+
|
142
|
+
= 1st season (2017BY) architecture
|
143
|
+
|
144
|
+
* sensortags ->(BLE)-> gateway
|
145
|
+
* gateway ->(WiFi)-> router
|
146
|
+
* router ->(3G)-> internet
|
147
|
+
|
148
|
+
= 1st season (2017BY) architecture
|
149
|
+
|
150
|
+
* sensortags ->(BLE)-> gateway
|
151
|
+
* gateway ->(WiFi)-> router
|
152
|
+
* router ->(3G)-> internet
|
153
|
+
|
154
|
+
(('tag:center'))
|
155
|
+
\nHaving a stack of multiple wirelesses is so hard
|
156
|
+
\n\n
|
157
|
+
(('tag:xx-large:😨'))
|
158
|
+
|
159
|
+
= 1st season (2017BY) architecture
|
160
|
+
|
161
|
+
# image
|
162
|
+
# src = images/muro.jpg
|
163
|
+
# align = center
|
164
|
+
# relative-height = 110
|
165
|
+
|
166
|
+
= 1st season (2017BY) architecture
|
167
|
+
|
168
|
+
(('tag:center'))
|
169
|
+
\n\n\n\n
|
170
|
+
(('tag:xx-large:超えられない壁'))
|
171
|
+
|
172
|
+
= 1st season (2017BY) architecture
|
173
|
+
|
174
|
+
* a thick wall
|
175
|
+
* BLE couldn't through the wall
|
176
|
+
* water everywhere
|
177
|
+
* power suppply issue
|
178
|
+
* number of instrument should be minimized
|
179
|
+
|
180
|
+
= BY?
|
181
|
+
|
182
|
+
= BY?
|
183
|
+
|
184
|
+
* Brewing Year, from July to June
|
185
|
+
* in Asahi-shuzo a BY work starts on November and finishes on April (depends on year)
|
186
|
+
|
187
|
+
= 2nd season (2018BY)
|
188
|
+
|
189
|
+
= 2nd season (2018BY)
|
190
|
+
|
191
|
+
(('tag:center'))
|
192
|
+
\n\n\n
|
193
|
+
(('tag:xx-large:A N E W H O P E'))
|
194
|
+
|
195
|
+
= 2nd season (2018BY)
|
196
|
+
|
197
|
+
(('tag:center'))
|
198
|
+
\n\n\n
|
199
|
+
(('tag:xx-large:m r u b y / c'))
|
200
|
+
|
201
|
+
= 2nd season (2018BY) architecture
|
202
|
+
|
203
|
+
(('tag:center'))
|
204
|
+
\n\n\n\n
|
205
|
+
devices ->(3G)-> Internet
|
206
|
+
|
207
|
+
= 2nd season (2018BY) the device
|
208
|
+
|
209
|
+
# image
|
210
|
+
# src = images/nigouki.jpg
|
211
|
+
# align = center
|
212
|
+
# relative-height = 100
|
213
|
+
|
214
|
+
= 2nd season (2018BY) architecture
|
215
|
+
|
216
|
+
# image
|
217
|
+
# src = images/kamos.jpg
|
218
|
+
# align = center
|
219
|
+
# relative-height = 100
|
220
|
+
|
221
|
+
= 2nd season (2018BY) architecture
|
222
|
+
|
223
|
+
# image
|
224
|
+
# src = images/kamos_2019.png
|
225
|
+
# align = center
|
226
|
+
# relative-height = 100
|
227
|
+
|
228
|
+
= 2nd season (2018BY) mruby/c
|
229
|
+
|
230
|
+
* mruby/c does everything
|
231
|
+
* sensors - I2C, ADC
|
232
|
+
* Fixnum, Float, Math
|
233
|
+
* 7seg LED display - transistor array
|
234
|
+
* String, Mutex
|
235
|
+
* 3G communication module - UART
|
236
|
+
* String, flow control
|
237
|
+
|
238
|
+
= 2nd season (2018BY)
|
239
|
+
|
240
|
+
: what were difficult about mruby/c?
|
241
|
+
* we can neither do step execution nor look into appropriate memory address of mruby/c's variables
|
242
|
+
* so many troubles in IoT
|
243
|
+
* hard to find why the application doesn't work well
|
244
|
+
|
245
|
+
= 2nd season (2018BY)
|
246
|
+
|
247
|
+
: what were difficult about mruby/c?
|
248
|
+
* mruby/c was growing
|
249
|
+
* bugs, lack of features, docs and examples
|
250
|
+
|
251
|
+
= 2nd season (2018BY)
|
252
|
+
|
253
|
+
: so, was mruby/c bad?
|
254
|
+
|
255
|
+
= 2nd season (2018BY)
|
256
|
+
|
257
|
+
: so, was mruby/c bad? - NO
|
258
|
+
* IoT at work makes you hurry
|
259
|
+
* you have to go back and forth between dark 10℃ storage cellar and humid 35℃ manufacturing room
|
260
|
+
* you have to amend your firmware with your small laptop in 10 minutes
|
261
|
+
* you will thank Ruby's descriptiveness and agility
|
262
|
+
|
263
|
+
= RubyKaigi 2018
|
264
|
+
|
265
|
+
# image
|
266
|
+
# src = images/rubykaigi2018.png
|
267
|
+
# align = center
|
268
|
+
# relative-height = 100
|
269
|
+
|
270
|
+
= 3rd season (2019BY)
|
271
|
+
|
272
|
+
# image
|
273
|
+
# src = images/collage01.jpg
|
274
|
+
# align = center
|
275
|
+
# relative-height = 100
|
276
|
+
|
277
|
+
= RubyKaigi 2019
|
278
|
+
|
279
|
+
# image
|
280
|
+
# src = images/rubykaigi2019.png
|
281
|
+
# align = center
|
282
|
+
# relative-height = 100
|
283
|
+
|
284
|
+
= RubyKaigi 2019
|
285
|
+
|
286
|
+
# image
|
287
|
+
# src = images/rubykaigi2019-2.png
|
288
|
+
# align = center
|
289
|
+
# relative-height = 100
|
290
|
+
|
291
|
+
= Technology stack of IoT (1/2)
|
292
|
+
* TCP/IP
|
293
|
+
* cloud service
|
294
|
+
* RDB and KVS
|
295
|
+
* server programming
|
296
|
+
* mobile programming
|
297
|
+
* security
|
298
|
+
* test
|
299
|
+
|
300
|
+
= Technology stack of IoT (2/2)
|
301
|
+
* high school physics electricity and transistor
|
302
|
+
* microcontroller and peripherals like UART, I2C, ADC, etc.
|
303
|
+
* circuit and PCB artwork
|
304
|
+
* soldering and wiring
|
305
|
+
* 3D CAD for housing
|
306
|
+
* suppliers
|
307
|
+
* firmware programming
|
308
|
+
|
309
|
+
= Summary
|
310
|
+
|
311
|
+
* mruby/c
|
312
|
+
* mruby/c
|
313
|
+
* mruby/c
|
314
|
+
* mruby/c
|
315
|
+
|
316
|
+
= Summary
|
317
|
+
|
318
|
+
* mruby/c is a Ruby for microcontroller
|
319
|
+
* mruby/c
|
320
|
+
* mruby/c
|
321
|
+
* mruby/c
|
322
|
+
|
323
|
+
= Summary
|
324
|
+
|
325
|
+
* mruby/c is a Ruby for microcontroller
|
326
|
+
* mruby/c runs on Asahi-shuzo
|
327
|
+
* mruby/c
|
328
|
+
* mruby/c
|
329
|
+
|
330
|
+
= Summary
|
331
|
+
|
332
|
+
* mruby/c is a Ruby for microcontroller
|
333
|
+
* mruby/c runs on Asahi-shuzo
|
334
|
+
* mruby/c can be ensured by test
|
335
|
+
* mruby/c
|
336
|
+
|
337
|
+
= Summary
|
338
|
+
|
339
|
+
* mruby/c is a Ruby for microcontroller
|
340
|
+
* mruby/c runs on Asahi-shuzo
|
341
|
+
* mruby/c can be ensured by test
|
342
|
+
* mruby/c is ready
|
343
|
+
|
344
|
+
= thank you!
|
345
|
+
(('tag:center'))\n\n\n\n(('tag:xx-large:Thank you!'))
|
346
|
+
== プロパティ
|
347
|
+
: hide-title
|
348
|
+
true
|
Binary file
|
data/theme.rb
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
# puts font_families.sort
|
2
|
+
@xx_large_font_size = screen_size(10 * Pango::SCALE)
|
3
|
+
@x_large_font_size = screen_size(7.5 * Pango::SCALE)
|
4
|
+
@large_font_size = screen_size(6 * Pango::SCALE)
|
5
|
+
@normal_font_size = screen_size(4.5 * Pango::SCALE)
|
6
|
+
@small_font_size = screen_size(4 * Pango::SCALE)
|
7
|
+
@x_small_font_size = screen_size(3.5 * Pango::SCALE)
|
8
|
+
@xx_small_font_size = screen_size(2.8 * Pango::SCALE)
|
9
|
+
|
10
|
+
@default_headline_line_color = '#888888'
|
11
|
+
@font_family = find_font_family('Rockwell')
|
12
|
+
@foreground = "#cc0000" # タイトルスライドの文字色
|
13
|
+
#@background = "#000000"
|
14
|
+
|
15
|
+
@table_frame_color = "#ffffff"
|
16
|
+
@table_fill_color = "#0f0428"
|
17
|
+
@table_body_frame_color = "#ffffff"
|
18
|
+
@table_body_fill_color = "#3f3468"
|
19
|
+
@table_head_frame_color = "#ffffff"
|
20
|
+
@table_head_fill_color = "#rf0428"
|
21
|
+
|
22
|
+
@monospace_font_family = 'Ricty Discord'
|
23
|
+
@preformatted_fill_color = '#000000'
|
24
|
+
# @preformatted_centering = true
|
25
|
+
@space = screen_y(1)
|
26
|
+
|
27
|
+
include_theme('default')
|
28
|
+
|
29
|
+
match(Slide, HeadLine) do |heads|
|
30
|
+
heads.prop_set("size", @large_font_size)
|
31
|
+
heads.prop_set("weight", "normal")
|
32
|
+
set_font_family(heads)
|
33
|
+
end
|
34
|
+
|
35
|
+
match Slide do |slides|
|
36
|
+
slides.each do |slide|
|
37
|
+
# スライドの文字色
|
38
|
+
slide.prop_set("foreground", "#fef263")
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
#@title_background_color = "red"
|
43
|
+
#include_theme("title-background-color")
|
44
|
+
@title_slide_background_image = 'images/suimeikan.jpg'
|
45
|
+
include_theme("title-slide-background-image")
|
46
|
+
|
47
|
+
@slide_background_image = 'images/slide-background.png'
|
48
|
+
include_theme("slide-background-image")
|
49
|
+
|
50
|
+
@slide_logo_image = 'images/180425_mruby-c_fix_color_data-04.png'
|
51
|
+
include_theme('slide-logo')
|
52
|
+
|
53
|
+
@item_image = 'images/mark32.png'
|
54
|
+
|
55
|
+
include_theme("default-item-mark")
|
56
|
+
|
57
|
+
add_image_path("rabbit-images")
|
58
|
+
|
59
|
+
slide_body = [Slide, Body]
|
60
|
+
item_list_item = [ItemList, ItemListItem]
|
61
|
+
|
62
|
+
indent = 30
|
63
|
+
|
64
|
+
match(*(slide_body + (item_list_item * 1))) do |items|
|
65
|
+
name = "item1"
|
66
|
+
items.delete_pre_draw_proc_by_name(name)
|
67
|
+
items.delete_post_draw_proc_by_name(name)
|
68
|
+
draw_image_mark(items, @item_image, name, indent: indent)
|
69
|
+
end
|
70
|
+
|
71
|
+
match(*(slide_body + (item_list_item * 2))) do |items|
|
72
|
+
name = "item2"
|
73
|
+
items.delete_pre_draw_proc_by_name(name)
|
74
|
+
items.delete_post_draw_proc_by_name(name)
|
75
|
+
draw_image_mark(items, @item_image, name, indent: indent)
|
76
|
+
end
|
77
|
+
|
78
|
+
match(*(slide_body + (item_list_item * 3))) do |items|
|
79
|
+
name = "item3"
|
80
|
+
items.delete_pre_draw_proc_by_name(name)
|
81
|
+
items.delete_post_draw_proc_by_name(name)
|
82
|
+
draw_image_mark(items, @item_image, name, indent: indent)
|
83
|
+
end
|
84
|
+
|
85
|
+
enum_list_item = [EnumList, EnumListItem]
|
86
|
+
|
87
|
+
match(*(slide_body + enum_list_item + item_list_item)) do |items|
|
88
|
+
name = "enum-item1"
|
89
|
+
items.delete_pre_draw_proc_by_name(name)
|
90
|
+
items.delete_post_draw_proc_by_name(name)
|
91
|
+
draw_image_mark(items, @item_image, name, indent: indent)
|
92
|
+
end
|
93
|
+
|
94
|
+
match(*(slide_body + enum_list_item + (item_list_item * 2))) do |items|
|
95
|
+
name = "enum-item2"
|
96
|
+
items.delete_pre_draw_proc_by_name(name)
|
97
|
+
items.delete_post_draw_proc_by_name(name)
|
98
|
+
draw_image_mark(items, @item_image, name, indent: indent)
|
99
|
+
end
|
metadata
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rabbit-slide-hasumikin-SWEST21
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2019.09.06
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- HASUMI Hitoshi
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2019-10-23 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rabbit
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 2.0.2
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 2.0.2
|
27
|
+
description: Presentation for SWEST21
|
28
|
+
email:
|
29
|
+
- hasumikin@gmail.com
|
30
|
+
executables: []
|
31
|
+
extensions: []
|
32
|
+
extra_rdoc_files: []
|
33
|
+
files:
|
34
|
+
- ".rabbit"
|
35
|
+
- README.rd
|
36
|
+
- Rakefile
|
37
|
+
- config.yaml
|
38
|
+
- images/180425_mruby-c_fix_color_data-04.png
|
39
|
+
- images/IDE.png
|
40
|
+
- images/IMG_0003.jpg
|
41
|
+
- images/RWC2019.png
|
42
|
+
- images/bytecode.png
|
43
|
+
- images/co2_demo.png
|
44
|
+
- images/collage01.jpg
|
45
|
+
- images/eriko-san.jpg
|
46
|
+
- images/esp32.jpg
|
47
|
+
- images/esp32_block_diagram-2.png
|
48
|
+
- images/esp32_block_diagram.png
|
49
|
+
- images/esp32_devboard.png
|
50
|
+
- images/esp32_module.png
|
51
|
+
- images/esp32_module_block_diagram.png
|
52
|
+
- images/esp32_onechip.jpg
|
53
|
+
- images/esp32_onechip.png
|
54
|
+
- images/esp32_original.jpg
|
55
|
+
- images/esp32_pcb_layout.png
|
56
|
+
- images/gucchi.jpg
|
57
|
+
- images/hasumi.jpg
|
58
|
+
- images/how-mrubyc-test-works.png
|
59
|
+
- images/hype-cycle.jpg
|
60
|
+
- images/juji-asahi.jpg
|
61
|
+
- images/kamos.jpg
|
62
|
+
- images/kamos_2019.png
|
63
|
+
- images/kouji.jpg
|
64
|
+
- images/krkrb-main.png
|
65
|
+
- images/krkrb-main.svg
|
66
|
+
- images/krkrb-main.svg.png
|
67
|
+
- images/m1.png
|
68
|
+
- images/m2.png
|
69
|
+
- images/mark32.png
|
70
|
+
- images/mark48.png
|
71
|
+
- images/mark64.png
|
72
|
+
- images/monstarlab.png
|
73
|
+
- images/monstarlab_global.png
|
74
|
+
- images/motosuri.jpg
|
75
|
+
- images/mruby_and_mrubyc-mruby.png
|
76
|
+
- images/mruby_and_mrubyc-mrubyc.png
|
77
|
+
- images/mruby_and_mrubyc.png
|
78
|
+
- images/muro.jpg
|
79
|
+
- images/mushi.jpg
|
80
|
+
- images/nigouki.jpg
|
81
|
+
- images/psoc5lp_chip.jpg
|
82
|
+
- images/raspberrypi.jpg
|
83
|
+
- images/rubykaigi2018.png
|
84
|
+
- images/rubykaigi2019-2.png
|
85
|
+
- images/rubykaigi2019.png
|
86
|
+
- images/rwc2019.png
|
87
|
+
- images/slide-background.png
|
88
|
+
- images/suimeikan.jpg
|
89
|
+
- images/tryit-1.jpg
|
90
|
+
- images/tryit-2.jpg
|
91
|
+
- images/umeda_yodobashi.jpg
|
92
|
+
- images/unsoldered-2.png
|
93
|
+
- images/unsoldered.jpg
|
94
|
+
- images/松江城_Matsue.rb.16x9.jpg
|
95
|
+
- images/松江城_Matsue.rb.jpg
|
96
|
+
- mrubyc-IoT-system-for-SAKE-brewery.rab
|
97
|
+
- pdf/SWEST21-mrubyc-IoT-system-for-SAKE-brewery.pdf
|
98
|
+
- theme.rb
|
99
|
+
homepage: https://slide.rabbit-shocker.org/authors/hasumikin/SWEST21/
|
100
|
+
licenses: []
|
101
|
+
metadata: {}
|
102
|
+
post_install_message:
|
103
|
+
rdoc_options: []
|
104
|
+
require_paths:
|
105
|
+
- lib
|
106
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
112
|
+
requirements:
|
113
|
+
- - ">="
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '0'
|
116
|
+
requirements: []
|
117
|
+
rubygems_version: 3.0.3
|
118
|
+
signing_key:
|
119
|
+
specification_version: 4
|
120
|
+
summary: IoT with mruby/c on the Asahi-shuzo (Shimane)
|
121
|
+
test_files: []
|