Slide 1

Slide 1 text

ʙਪ͠ϚΠίϯϘʔυʲSpresenseʳͷັྗΛޠΔ!!!ʙ 2022/11/17 ύʔιϧςΫϊϩδʔελοϑגࣜձࣾ Ѩ෦ߞೋ [email protected] Spresense night #1

Slide 2

Slide 2 text

▪ύʔιϧςΫϊϩδʔελοϑגࣜձࣾ ɹٕज़ຊ෦ɹػిٕज़෦ɹट౎ݍ2GɹѨ෦ɹߞೋʢ͋΂ɹ͜͏͡ʣ ▪ҩྍػث։ൃ ɾ૊ࠐΈιϑτ΢ΣΞ։ൃɻ ɾCݴޠɺϕΞϝλϧͷ։ൃۀ຿ܦݧ͕΄ͱΜͲɻ ࣗݾ঺հ 1 2

Slide 3

Slide 3 text

▪ٕज़ॻΛॻ͍ٕͯज़ॻయ13ʹࢀՃͨ͠Γɺ ɹ ▪ϚΠίϯͷίϯςετ(※)ʹࢀՃͨ͠Γɺ ɹ※SPRESENSE™ ׆༻ίϯςετ ɹ૊ࠐΈιϑτ΢ΣΞ։ൃ͕޷͖ͳ͓͡͞ΜͰ͢ɻ ɹΑΖ͓͘͠ئ͍͠·͢ɻ ▪LAPRASϙʔτϑΥϦΦɿhttps://lapras.com/public/k-abe ▪twitter: @juraruming ࣗݾ঺հ 2 3

Slide 4

Slide 4 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 4

Slide 5

Slide 5 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 5

Slide 6

Slide 6 text

ɾSpresenseͷଘࡏɾັྗΛ஌Γझຯͷݸਓ։ൃΛଓ͚ͯಘͨ஌ݟΛڞ༗ ͍ͨ͠ͱࢥ͍Πϕϯτͷ։࠵ΛܾΊ·ͨ͠ɻ ɾSpresenseͷັྗɺ͜Ε·Ͱॻ͍ٕͨज़ॻɾٕज़هࣄɺίϯςετʹग़ ඼ͨ͠ܦݧΛڞ༗Ͱ͖Ε͹ͱࢥ͍·͢ɻ Πϕϯτ֓ཁ 6

Slide 7

Slide 7 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 7

Slide 8

Slide 8 text

ɾιχʔ͕։ൃͨ͠Ϙʔυίϯϐϡʔλͷ໊শ ɹιχʔಠࣗͷηϯγϯάϓϩηοα CXD5602Λ౥ࡌ ɾArduino ޓ׵ ɾGPSʹΑΔଌҐػೳɺϋΠϨκϦϡʔγϣϯΦʔσΟΦͷ࠶ੜɾ࿥Իػ ೳɺ௿ফඅిྗͷϚϧνίΞΛ಺ଂ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 8

Slide 9

Slide 9 text

▪ ϋʔυ΢ΣΞฤ ɹSpresense͸ͭ͗ͷϘʔυ͔Βߏ੒͞Ε͍ͯΔɻɹ ɹɾSpresense ϝΠϯϘʔυ ɹɾSpresense ֦ுϘʔυ ɹɾSpresense LTE֦ுϘʔυ ɹɾSpresense ΧϝϥϘʔυ ɹɾSpresense HDR ΧϝϥϘʔυ αʔυύʔςΟ੡ͷ֦ுϘʔυ΋͋Γ(ϦϯΫ͸ͪ͜Β)ɻ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 9

Slide 10

Slide 10 text

▪ϋʔυ΢ΣΞฤ ɾSpresense ϝΠϯϘʔυͷϐϯ഑ஔ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 10

Slide 11

Slide 11 text

▪ϋʔυ΢ΣΞฤ ɾSpresense ֦ுϘʔυͷϐϯ഑ஔɿArduinoޓ׵ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 11

Slide 12

Slide 12 text

▪ιϑτ΢ΣΞฤ ɾ2ͭͷ։ൃ؀ڥΛఏڙ 1, Spresense Arduino Library 2, Spresense SDK Spresense֓ཁ 12

Slide 13

Slide 13 text

▪ιϑτ΢ΣΞฤ 1, Spresense Arduino Library ͷߏ଄ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 13

Slide 14

Slide 14 text

▪ιϑτ΢ΣΞฤ 2, Spresense SDKɹ※ࠓճ͸Spresense SDKͷ͓࿩͕ϝΠϯʹͳΓ·͢ɻ ※WebυΩϡϝϯτΑΓҾ༻ Spresense֓ཁ 14

Slide 15

Slide 15 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 15

Slide 16

Slide 16 text

͍ΖΜͳͱ͜ΖͰ׆༂த!!! ɾʲӉ஦ʳӴ੕ٕज़࣮ূ ɾʲӉ஦ɾ؝۩ʳSORA Q ɾʲΤϯλϝʳେࡕԻָେֶɹʮిؾָثͷΦʔέετϥʯެ։΁ ɾʲϩϘοτɾIoTɾΤϯλϝʳelchika 2022೥ SPRESENSE™ ׆༻ίϯςετ ࠷ۙͷSpresense NEWS 16

Slide 17

Slide 17 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 17

Slide 18

Slide 18 text

▪ϚϧνίΞ ▪OS͕NuttX ●POSIXରԠ ▪։ൃελΠϧ͕ArduinoɾSpresense SDK͔Βબ୒Մೳ ▪αϯϓϧɺνϡʔτϦΞϧ͋Γ ▪υΩϡϝϯτ͕͋Δ ●։ൃ؀ڥߏங(ελʔτΨΠυ)ɺνϡʔτϦΞϧɺ։ൃΨΠυɺAPIϦϑΝϨ ϯεɺͦͷଞ ▪ίϛϡχςΟ͕͋Δɻ ●stack overflow, ϑΥʔϥϜ(Sony's Developer World forum) Spresenseͷັྗ 18

Slide 19

Slide 19 text

▪ϚϧνίΞ ▪OS͕NuttX ●POSIXରԠ ▪։ൃελΠϧ͕ArduinoɾSpresense SDK͔Βબ୒Մೳ ▪αϯϓϧɺνϡʔτϦΞϧ͋Γ ▪υΩϡϝϯτ͕͋Δ ●։ൃ؀ڥߏங(ελʔτΨΠυ)ɺνϡʔτϦΞϧɺ։ൃΨΠυɺAPIϦϑΝϨ ϯεɺͦͷଞ ▪ίϛϡχςΟ͕͋Δɻ ●stack overflow, ϑΥʔϥϜ(Sony's Developer World forum) Spresenseͷັྗ 19

Slide 20

Slide 20 text

▪ϚϧνίΞ CXD5602಺෦ϒϩοΫਤ ※WebυΩϡϝϯτΑΓҾ༻ Spresenseͷັྗ 20

Slide 21

Slide 21 text

▪ϚϧνίΞ ɾ6ͭͷίΞͰෛՙ෼ࢄɾฒྻ࣮ߦ!!! ɾASMPʢAsymmetric Multi-ProcessingɿඇରশܕϚϧνϓϩηογϯ άʣͷߏ੒ ɾϚϧνίΞΛ؆୯ʹѻ͑ΔϑϨʔϜϫʔΫ͕͋Δɻ ɹSpresense SDK ։ൃΨΠυ -> 5. Spresense SDK͕ఏڙ͢Δػೳ -> 5.7. ASMP Framework ɾ(ϚϧνίΞʹݶΒͣͰ͕͢)APS͞ΜͷSpresense࿈ࡌهࣄ(ୈ1ճʙୈ20 ճ)͸ඇৗʹࢀߟʹͳΔɻ ɹAPS Spresense ࿈ࡌهࣄϦϯΫ Spresenseͷັྗ 21

Slide 22

Slide 22 text

▪OS͕NuttX ɹOS͕NuttXͩͱԿ͕خ͍͠??? ɹɾPOSIXΠϯλϑΣʔεͰϥζύΠ(OS͸Linuxͱ͢Δ)ͷ։ൃࢿ࢈Λൺֱ త༰қʹSpresenseʹҠ২Մೳɻ ɹɾγΣϧ͕࢖͑Δ ɹɾLinuxϥΠΫͳίϚϯυ͕࢖͑Δ Spresenseͷັྗ 22

Slide 23

Slide 23 text

▪αϯϓϧɺνϡʔτϦΞϧ͋Γ ɹ೔ຊޠνϡʔτϦΞϧ͕͋Γɺࢼ͍ͨ͠ػೳΛαΫοͱࢼͤΔɻ ɹԼਤ͸Spresense SDKνϡʔτϦΞϧͷWebϖʔδ͔ΒҾ༻ɻ ɹ Spresenseͷັྗ 23

Slide 24

Slide 24 text

▪υΩϡϝϯτ͕͋Δɹ ɹ։ൃελʔτͰ͖ΔυΩϡϝϯτ͕೔ຊޠͰἧ͍ͬͯΔɻ ɹԼਤ͸Spresense DocumentsͷWebϖʔδ͔ΒҾ༻ɻ ɹ Spresenseͷັྗ 24

Slide 25

Slide 25 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 25

Slide 26

Slide 26 text

▪σδλϧΧϝϥ ▪ΦϦδφϧήʔϜ ▪viΤσΟλ ▪pthreadsͰϚϧνεϨουͷಈ࡞֬ೝɹ ݸਓతʹࢼͨ͜͠ͱ 26

Slide 27

Slide 27 text

▪σδλϧΧϝϥ ɹͭ͗ͷ؆қతͳσδλϧΧϝϥΞϓϦΛͭ͘Γ·ͨ͠ɻ ɾΧϝϥͷϓϨϏϡʔΛLCDʹදࣔ͢Δɻ ɹαϯϓϧΞϓϦʲexamples/cameraʳΛྲྀ༻ͨ͠ɻ ɾ֎෦ج൘ͷεΠονԡԼͰLCDͷϓϨϏϡʔΛSDΧʔυʹอଘ͢Δɻ ։ൃͷҰ࿈ͷखॱΛٕज़ॻʹॻ͍ͨͷͰࢀর͍ͩ͘͞ɻ ɹ●Spresense デ ジ λϧΧϝϥ։ൃ ݸਓతʹࢼͨ͜͠ͱ 27

Slide 28

Slide 28 text

▪ΦϦδφϧήʔϜ ɹΦϦδφϧͷ؆қతͳήʔϜΛͭ͘Γ·ͨ͠ɻ 1, ҜࢠऔΓήʔϜ 2, ࿈ࣹଌఆήʔϜ 3, ΤϨΩΪλʔ ݸਓతʹࢼͨ͜͠ͱ 28

Slide 29

Slide 29 text

●1, ҜࢠऔΓήʔϜ ɾԻָϑΝΠϧΛϥϯμϜͳ࣌ؒͰ࠶ੜ⁶ఀࢭΛ܁Γฦ͢ɻ ɾʲexamples/audio_playerʳαϯϓϧΞϓϦΛྲྀ༻ͨ͠ɻ ●2, ࿈ࣹଌఆήʔϜ ɹ10ඵؒ֎෦ج൘ͷεΠονΛ࿈ࣹ݁͠ՌΛදࣔ͢Δɻγϡ΢ΥονΛΠϝʔ δͯͭͬͯ͘͠Έͨɻ ●3, ΤϨΩΪλʔ ɾδϟΠϩηϯαʔͷ܏͖ʹΑΓυϨϛΛൃԻ͢Δɻ ɾʲexamples/sixaxis ʳɾʲexamples/audio_beepʳαϯϓϧΞϓϦΛྲྀ༻͠ ͨɻ ։ൃͷҰ࿈ͷखॱΛٕज़ॻʹॻ͍ͨͷͰࢀর͍ͩ͘͞ɻ ɹ●Spresense デ ジ λϧΧϝϥ։ൃ ݸਓతʹࢼͨ͜͠ͱ 29

Slide 30

Slide 30 text

▪viΤσΟλ ɹͳΜͱɺSpresense SDKͰʲfeature/viʳίϯϑΟΪϡϨʔγϣϯΛ༗ޮ ʹͯ͠make͢ΔͱviΤσΟλ͕࢖͑·͢!!! ৄ͘͠ॻ͍ͨهࣄ͸ͪ͜Βɻ ݸਓతʹࢼͨ͜͠ͱ 30

Slide 31

Slide 31 text

▪pthreadsͰϚϧνεϨουͷಈ࡞֬ೝ ɹpthreadsͰϚϧνεϨουͷίʔυ͕ॻ͚·͢ɻ ɹҾ਺ͷॱ൪ͳͲLinuxͱಉ͡Α͏ʹॻ͚ͨͷͰɺpthreadsͷίʔυΛ SpresenseʹҠ২͢Δɺ͜ͱ΋ൺֱత༰қʹͰ͖Δ͔ͱࢥ͍·͢ɻ ●ϚϧνεϨουͷ֬ೝΛԿճ͔ʹ෼͚ͯ֬ೝ͠ZennʹهࣄΛॻ͖·ͨ͠ɻ ɾ#1ɹʙεϨουͷىಈɾऴྃ଴ͪʙ ɾ#2ɹʙϛϡʔςοΫεͰϓϩάϥϜͷ࣮ߦΛഉଞ੍ޚʙ ɾ#3ɹʙ৚݅ม਺Ͱ৚݅଴ͪ͢Δʙ ɾ#4ɹʙ৚݅ม਺ͰʲλΠϜΞ΢τ෇͖ʳ৚݅଴ͪ͢Δʙ ɾ#5ɹʙෳ਺εϨουͷ଴ͪঢ়ଶΛҰ౓ʹશͯղআ͢Δʙ ɾ#6ɹʙόϦΞͰಉظ֤ͯ͠εϨουͷॲཧͷ଍ฒΈΛἧ͑Δʙ ɾ#7ɹʙʲͲ͏ͧͲ͏ͧʳΛ৚݅ม਺ɾόϦΞͰ࣮૷͢Δʙ ●NuttXͷpthread Interface͸ͪ͜Βʹهࡌ͞Ε͍ͯ·͢ɻ ɹpthreadͱͷޓ׵ੑʹ͍ͭͯهࡌ͞Ε͍ͯ·͢ɻ ݸਓతʹࢼͨ͜͠ͱ 31

Slide 32

Slide 32 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 32

Slide 33

Slide 33 text

ɹSpresense SDKͰ͍͔ͭ͘ΞϓϦΛͭ͘Γɺ͜ͷΑ͏ͳྲྀΕͰΞϓϦΛ ͭ͘Δͷ͕ྑ͍ͷͰ͸?ɺͱײ͡Δ͜ͱ͕͋ͬͨͷͰγΣΞɻ 1, νϡʔτϦΞϧͰॴ๬ͷσόΠε੍ޚ͕Ͱ͖͍ͯΔ͜ͱΛ֬ೝ͢Δɻ 2, νϡʔτϦΞϧͰ࢖༻͍ͯ͠ΔαϯϓϧΞϓϦΛ਽ܗʹͯ͠ɺࣗ਎ͷΞ ϓϦΛ࡞Δɻ ɹSpresense SDKͰ։ൃ͢Δ͏͑ͰҰ൪ͷน͸ʲίϯϑΟάϨʔγϣϯʳ ͱײ͍ͯ͡Δɻ ͓નΊ։ൃख๏ 33

Slide 34

Slide 34 text

ɹʲαϯϓϧΞϓϦͰॴ๬ͷσόΠε੍ޚΛ֬ೝͰ͖ͨΒαϯϓϧΞϓϦ ͷίϯϑΟΪϡϨʔγϣϯΛྲྀ༻͠ɺࣗ਎ͷΦϦδφϦΞϓϦΛͭ͘Δɺ ͱ͍͏ελΠϧ͕ྑͦ͞͏ʳ ɹˢͷ۩ମతͳํ๏Λٕज़ॻʹॻ͍ͨͷͰྑ͔ͬͨΒࢀর͍ͯͩ͘͠͞ɻ ɹ●Spresense デ ジ λϧΧϝϥ։ൃ ɹɹ-> ୈ6ষ Spresense SDK ։ൃखॱ ɹ ɹجຊతʹͭ͗ͷWebυΩϡϝϯτͷ಺༰Λϕʔεʹͨ͠ɻ ɹɹSpresense SDK ελʔτΨΠυ (CLI ൛) ɹɹɹ-> 6. ϢʔβʔΞϓϦͷ௥Ճํ๏ ͓નΊ։ൃख๏ 34

Slide 35

Slide 35 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 35

Slide 36

Slide 36 text

●ϚϧνίΞΛମײͰ͖ΔΞϓϦΛͭ͘Δɻ ɾ6ͭͷίΞΛ࢖͍౗ͯ͠Έ͍ͨ!!! ●ϥΠϒϥϦ࡞੒ɾϦϯΫ ɾෳ਺ΞϓϦͷڞ௨ॲཧΛϥΠϒϥϦʹ͢Δɻ ●GNSSαϯϓϧΞϓϦ֬ೝ ●Audio RecorderαϯϓϧΞϓϦ֬ೝ ●SCU(Sensor Control Unit)ͷཧղɾΞϓϦ࡞੒ ɾηϯαʔσʔλऔಘʹؔΘΔCPUͷෛՙΛݮΒ͍ͨ͠ɻ ●C++ΞϓϦ࡞੒ ࠓޙ΍ͬͯΈ͍ͨ͜ͱ 36

Slide 37

Slide 37 text

• Πϕϯτ֓ཁ • Spresense֓ཁ • ࠷ۙͷSpresense NEWS • Spresenseͷັྗ • ݸਓతʹࢼͨ͜͠ͱ • ͓નΊ։ൃख๏ • ࠓޙ΍ͬͯΈ͍ͨ͜ͱ • QA ໨࣍ 37

Slide 38

Slide 38 text

• ࣭͝໰ɺؾʹͳͬͨ͜ͱ͋Ε͹ڞ༗Λ͓ئ͍͠·͢ɻ QA 38

Slide 39

Slide 39 text

͝੩ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ɻ ऴΘΓ 39