福野泰介の一日一創 - create every day

小金井市教育委員会教育長、大熊雅士さんの講演に見えた明るい日本の未来。
前原小が描く新しい「学び」のPerspectiveー総務省「『次世代学校ICT環境』の整備に向けた実証」事業報告会 | Peatix


小金井市「ICT&プログラミング Flag City宣言」参加者300人超!


既存のカリキュラムで失敗できる数は年5回程度。コンピューターを実際使ってできる失敗の数は1日に100回以上!(年35時間、3,500回!?)
桁違いのチャレンジ数が、あきらめない、ねばり強いこどもたちを育成する。


先生が用意した答に話し合ってたどり着くなんちゃってアクティブラーニングではなく、山登りの如く、先生も共に歩み誰も知らない解決策を導く、アタック思考。
教育長大熊さんの名言、共悩共歩 - 先生も子供も「共に悩み、共に歩む」


前原小6年生、IchigoJamプログラミングの授業参観後、披露してくれたタイピングのスゴ腕!
自分で作った作品を見せてくれたり、ヒントから分かって大喜びしたりと、何より、子供たちが楽しそう!

披露してくれたお礼に、IchigoJamで簡単カスタマイズできるタイピングゲームをプレゼント。
(検索用キーワード、イチゴジャム、タイピングゲーム、イチゴタイピング)

10 LET[0],"LED","WAIT","GOTO","LC","RND","IF","SCR","END" 20 CLT:FOR I=0 TO 7:S=[I] 30 CLS:LC1,10:?STR$(S):INPUT A:F=1:FOR J=1 TO LEN(S):F=F*(SCR(J,10)=SCR(J,11)):NEXT:IF F=0 BEEP:CONT 40 NEXT:?TICK()

10行を好きな単語、得意な単語、覚えたい単語にしよう。カタカナでもOK!入力したらエンター
全7問を答えたらタイムが1/60秒単位(600で10秒という意味)で表示されるので、競争してみよう!
(問題数を変えるときは、20行の7を変えよう)


1809位と下から数えたほうが早い小金井市のIT水準を一気に巻き返し、日本最先端になった理由は、教育委員会、学校長、教員の数多くのトライ&エラー。


松田校長先生「見えた、前原のプログラミング!」


大変な教育現場でも、こどもたちの未来のために最高の環境を提供する覚悟。


覚悟をささえるIT。


学校内のIT活用、Q-UとWeb Q-U もスゴい!


プログラミングは、新しい「学び」の象徴!


前原小のプログラミングにかける時間、1-2年生で15時間/年、3-6年生で35時間/年!
6年間で、170時間!この差はどう出るか!?


1年生から6年生まで、IchigoJamフル活用。


上越教育大学の山崎さん、世界の教育から俯瞰した前原小学校のコンピューティング/STEAM教育の特徴
前原モデルは、世界レベル!


今までの教育と全く異なる、今求められている教育。


高度IT人材に引き上げる、一般社団法人 未踏、未踏ジュニア代表の鵜飼さんLT。


拡張ペアプログラミング、「読み聞かせ」のプログラミング版「組み見せ」
ちょうどこの日、ミャンマーでのPCN&KidsVentureが、日テレニュースに登場!


ミニ講演スライド「なぜ IchigoJam をつくったか? (PDF)


前原モデルに衝撃を受けつつ、現場の負担少なくかつ効果的にコンピューターを子供たちに伝え、引き上げる「総合2コマ」と「クラブ活動」のススメ。
動画&スライド公開、プログラミングB分類、総合と英語2コマ使った「はじめてのプログラミング」 - 鯖江市進徳小学校でモデル授業
(総合、英語の2時間としていますが、総合2コマでもOK)


小学1年生向けプログラミング!
カトラリーカードのタブレットアプリ版「CutleryApps」を使って、IchigoJamプログラミング!


コンピューターにやってほしいことを、カードを並べ、じっこう(RUN)すると、光る!
カードを裏返すとBASICのコマンドになっているので、上位学年へもスムーズにステップアップ。


2年生は、こどもじどうしゃ Radish を使った、自動運転プログラミング!
みんなで協力し合う姿もいい!
PCN×mottoy!「こどもじどうしゃRadish」が公式名に! – about yrm


3,4年生には、タミヤ、カムロボを使ったロボットプログラミング。
先生の用意した教材がとってもいい!


5-6年生は、IchigoJam で思い思いのプログラミング作りに取り組む。


6年生は、さらに一歩先ゆくJavaScriptも!
IchigoLatte (IchigoJamにインストール可能なJavaScriptで開発可能なOS)


ひとり1台持っているChromebook、それぞれがYouTubeの動画を見ながら進められるようにイヤホン付き。


プログラミングの時間が終わったら、まなびポケットでふりかえり。


前原モデル、世界へ!

* 撮影協力 チアプログラミング 浅井さん

Programming for Kids in the hospital!
院内学級のこどもたちにプログラミングを!

We PCN provide the IchigoJam programming caliculum for 2 kids at the hospital in Fukui. They enjoyed programming about LED, TV gaming, Cam-Robot (by Tamiya), the illumitations.
院内学級に通う、小学生2名向けPCN出前授業、エルチカロボ、かわくだりゲーム、カムロボ(by Tamiya)、イルミネーションプログラム体験、喜んでもらえました!


Let's start programming with IchigoJam!
こどもパソコン IchigoJam で、はじめてのプログラミング!


Kids made the first TV game!
初のテレビゲームづくり!


Mr Matta showed how to manipulate the robot.
ロボット制御を紹介する、松田さん。


Kids tried to control the robot!
カムロボ制御にも挑戦しました!


The 100 yen illumination controlled by IchigoJam and MapleSyrup!
100円均一で売ってるイルミネーションをIchigoJamとMapleSyrupでコントロール!

1 OUT 1 2 WAIT 5 3 OUT 16 4 WAIT 10 5 GOTO 1 RUN

It's easy! とってもかんたん!


You can program the drone also!
ドローンだって、プログラミングで飛ばせちゃう。


Thank you for kids and teachers in the hospital school. 院内学級のこども&先生、ありがとうございました!


Illuminations form Myanmar! (PCN Mynmar – about yrm)
ミャンマーからのキラキラするお土産!(PCN Mynmar – about yrm)


Hand made 300 LEDs (12 x 5 x 5) are controlled by program.
手作り配線 12x5のマトリクス x 5、300コのLEDのプログラム制御!


How useful! 便利!


The PS/2 keyboard from Myanmar.
PS/2対応ミャンマーのキーボード!US配列ですね。


PCN Kenya has started to provide programming for kids in Africa!
PCNケニヤもアフリカのこどもたちへプログラミングを伝える活動スタート!


Review: IchigoJam Single Board Computer | Hackaday
IchigoJam on HACKADAY!
HACKADAYにて IchigoJam 紹介されました!

PCN プログラミング クラブ ネットワーク
PCN's mission is "Programming for All Kids!". Anyone can start PCN. Let's PCN!
PCNのミッション「すべてのこどもたちにプログラミングを!」誰でも初められます。PCNしましょう!

links
-
院内学級で2人に伝授完了!プログラミングを楽しんでいる姿をみんなに見せているあなたはすでにPCN! – about yrm
- ミャンマーのこどもプログラミング、一気に全土へ!行動力あふれる若き国に「PCNミャンマー」誕生! – about yrm

3社共催、親子プログラミングイベント、楽しんでくれました!

2019-2-3 はじめてのIoTデータ活用 親子プログラミングワークショップ

かんたんデータ管理の kintone(キントーン)の サイボウズ
かんたん格安IoTの sakura.io(サクラアイオー)の さくらインターネット
かんたんプログラミングの IchigoJam(イチゴジャム)の jig.jp

人間業じゃない計算力と記憶力を持ち、世界中とつながるコンピューターくんを味方にしよう!
「データで遊ぶ」をテーマに、その入口を親子で楽しく体験するイベント。

スライドダウンロード
はじめてのIoTデータ活用 親子プログラミングワークショップ kintone x sakura.io x IchigoJam (PDF)


サイボウズ社長室ビジネスプロデューサー 中村龍太さんから、kintoneの魅力をご紹介!
牛乳で身長は伸びる?運動で身長は伸びる?データで検証してみよう!


まずはプログラミングはじめの定番、LEDの制御、エルチカゲーム、エルチカロボット、かわくだりゲーム!
電子工作も、プログラミングも、極力シンプルでインパクトあるものにとチューニングしています。


本題、IoTとは? IoT = Internet of Things、(人じゃなくて)モノのインターネット
いろんなものとネットを通じて話ができたり、モノとモノ同士がお話したりする世の中のスタートです。


インターネットは、世界100億台のコンピューターがつながったもの。
2台のIchigoJamをつないでネットワーク実験!
子供2人、Aさん、Bさんとしてペアになって、順番に操作!


遠隔操作、ブロック、チャット体験、コンピューターはつなぐともっとおもしろい。


今回使ったIchigoSodaは、IoT通信モジュール sakura.io が内蔵されたIchigoJam。

こちらが1行ずつ、楽しくキーボードからタイピングしてできあがった、かわくだりゲーム!

10 CLS:X=15 11 CLT 20 LOCATE X,5:?"O" 30 LOCATE RND(32),23:?"*" 35 WAIT 3 36 X=X-BTN(LEFT)+BTN(RIGHT) 39 IF SCR(X,5) GOTO 50 40 GOTO 20 50 ?"GAME OVER!" 60 S=TICK():?S

1行足すだけで、IoTエディションのできあがり!

70 IOT.OUT S

かわくだりゲームが、みんなの反射神経を計測するIoTデバイスに早変わり!


kintoneでみんなから送られたデータをみよう!


かわくだりゲーム、スコアランキング!
しばらく放っておいたらチートされてすごいスコアにw


大人の問題、子供がチャレンジ!
お父さん、お母さんに課題を聞いて、IoTでどう解決するか考えてみよう!
「大人の課題」とかけて「子供の好きなもの」と解く、その心は?
と、なぞかけ形式にして、即興で答えを出してもらうのもいいかも。
時間があれば、じっくり時間をかけて「こどもIoTハッカソン」が楽しい!
(課題例:留守中の火災が怖い → 創電さん、IchigoSodaで、IoT火災報知器「火守くん」を開発、販売!)


自由時間、果敢にサーボや光センサーに挑戦する子供たち!


kintone の今回のイベントページ。質問や、感想などもこちらに描いていただきました。
右側にあるアプリがメイン!


お父さん参加が多かった、今回の親子ワークショップ。親子で楽しくプログラミング、ぜひご家庭でも!


自分でつくれる IcihgoJam、秋葉原にある PCN秋葉原Assemblage ではんだづけできますよ!


楽しい作品、PCNこどもプロコンへぜひどうぞ!
決まった、第9回のノミネート作品はこちら。
PCNこどもプロコン2018 一次審査結果発表 | PCN プログラミング クラブ ネットワーク


ちょうど節分!


kintone x sakura.io x IchigoJam IoT.OUT
大人も楽しいかんたん、IoTプログラミング!

IoTでデータを気軽に集めて、kintone のグラフでいろいろデータで遊んでみると、また新たなデータが欲しくなる。
オープンデータを含めて、たくさんデータを集めてできたビッグデータ、かんたんAIを使ったアドバンストコースも楽しそう!
さくらインターネットさん中心で進む、宇宙オープンデータプラットフォーム「Tellus」β公開しています!

Tellus


本日の機材、準備らくらく IchigoJamスピードパックのIchigoSoda&わくわく電子工作キットバージョン
こんの研修してみたい!機材提供など、ご相談ください!

技術的なお話

IchigoJam ver 1.3 で正式対応した、IoT.OUT を使って、64円/月/1万回通信の格安IoT sakura.ioを通じて、1コマンドでネットへ送信。 Python3 で sakura.io から WebSocket で受け取ったデータ kintone REST API で、kintone アプリに送信、グラフ化などが簡単!というシカケ。


通信モジュールを sakura.io の管理画面で登録、サービス連携として、WebSocketを設定。
ここで表示されるトークンを使います。


ドラッグ&ドロップでできちゃう、kintone上でのアプリづくり。
かわくだりゲームのスコアランキングアプリは、「文字列(1行)」でモジュール番号、「数値」でスコアを入れることにします。
設定、APIトーク、生成する、アクセス権、レコード追加にチェックをいれて、こちらのAPIトークンと、例として URL app=?? と書かれている ID を使います。

こちらPython3のプログラム、WebSocketで受け取ったデータを、kintone に送る

import http.client import websocket import json import ssl SAKURA_TOKEN = *sakura.ioのトークンを設定* KINTONE_DOMAIN = "*kintoneのドメインを設定*.cybozu.com" KINTONE_TOKEN = "*kintoneのAPIトークン" KINTONE_APPID = *kintoneのAPP ID* SAKURA_MODULE = [ { "id":"m01", "module":"*モジュールID1*" }, { "id":"m02", "module":"*モジュールID2*" }, ] def getModule(moduleid): for item in SAKURA_MODULE: if item['module'] == moduleid: return item['id'] return None def sendData(module, val): record = { "app": KINTONE_APPID, "record": { "文字列__1行_": { "value": module }, "数値": { "value": val } } } requestJson = json.dumps(record) headers = { "Content-Type": "application/json", 'X-Requested-With': 'XMLHttpRequest', 'X-Cybozu-API-Token': KINTONE_TOKEN } connect = http.client.HTTPSConnection(KINTONE_DOMAIN) connect.request("POST", "/k/v1/record.json", requestJson, headers) response = connect.getresponse() print(response.status) data = response.read() print(data.decode("utf-8")) def on_message(ws, message): data = json.JSONDecoder().decode(message) mestype = data['type'] if mestype == 'channels': module = getModule(data['module']) val = data['payload']['channels'][0]['value'] print('on_message: ' + module + " -> " + str(val)) sendData(module, val) if __name__ == "__main__": websocket.enableTrace(True) path = "wss://api.sakura.io/ws/v1/" + SAKURA_TOKEN ws = websocket.WebSocketApp(path) ws.on_message = on_message ws.run_forever(sslopt = { "cert_reqs": ssl.CERT_NONE })

*参考
レコードの登録(POST) – cybozu developer network
IchigoSoda スタートガイド — sakura.io ドキュメント
WebSocketでの通信内容の確認 — sakura.io ドキュメント


あとは受け取ったデータでグラフをつくるだけ。こちらも選択ボックスから順番に選ぶだけ、右側にプレビューがあるのでわかりやすい!


かわくだりゲーム、一番たくさんやったのはだれかなランキング!
いろんな切り口のグラフが、簡単に作って、すぐにグループ内で共有できます。


sakura.io、イベントアラートを設定しておけば、いつのまにかすごい数が通信されてしまう心配も無用。
切断アラートを使えば、電池切れや意図しないトラブルの検出もできます!

* 撮影協力、チアプログラミング 浅井さん

links
- 小学生がつくるIoTプログラム教室、サイボウズ、jig.jp、さくらインターネットが共催 - BCN+R
- はじめてのIoTデータ活用 親子プログラミングワークショップ レポート | CSAJ 一般社団法人コンピュータソフトウェア協会

ver 1.3、ちょっとメモリの使い方を誤り、ver 1.2.3 で動いていた数式で動かない問題が発覚。

P=PEEK([0]) Complex expression

このエラーは、数式が複雑すぎる時にでるエラー。

例えば 3+(2*5) という計算をする場合、
1. まず3と、足し算する必要あり、と覚える
2. 括弧があるので、さらに2と、かけ算する必要あり、と追加で覚える
3. 5とかけ算し、10と覚える
4. 覚えていた3と足し算し、答は13
という感じのプログラムが IchigoJam BASIC というOS(オーエス、基本ソフト)の中で動いてます。

計算と記憶が得意なコンピューターくんですが、無限に記憶できるわけではありません。
IchigoJamで使える容量は、4kbyte、32768bit。3万個ちょっとの0か1のデータを記憶できます。
(4kbyte = 4 x 1024byte = 4096byte = 4098 x 8bit = 32768bit)

メモリをどのように使っているか表す図をメモリマップといいます。
IchigoJam BASIC on LPC1114 RAM メモリマップ (ver 1.3 beta 6)


計算式の中で、後から使うものはどんどんスタックに積んで、一時的に覚えていきます。
LPC1114では、スタックを末尾のアドレス 10000FDF から、小さくなる方向に向かって使っていきます。

一次記憶がどんどん溜まっていくと・・・、そう、この図でいうとI2Cバッファ、コマンドラインバッファの順に浸食していってしまうのです。 ちょっといいCPUだと、このような浸食を防ぐための仕組みがありますが、シンプルなCPU LPC1114にはありません。

そこで計算途中にスタックの今使ってるポイントをチェックして、溢れそうなら Complex expression エラーを出すように作ってあるわけです。 ver 1.3.0 では、IchigoJam BASIC OS用変数領域がちょっと大きく、そのメモリ位置をスタックのすぐ上にしてしまったことで、フリーズリスクが高まってしまっていました。 (ARM 関数呼び出し引数の渡し方 - Qiita

こちら、ver 1.3 beta 6は、上記のようにOS用のメモリの使用量をちょっと削減し、物理メモリの先頭に配置、万が一のスタック溢れにも最悪I2Cバッファやコマンドラインバッファの破壊までにとどめて、フリーズすることがある不具合を解消しました。
IchigoJam 1.3b06.zip

このようにメモリギリギリの戦いにはArmマシン語を含むコンピューターそのものの知識は欠かせません。興味がでた方、こちらからどうぞ!
Armマシン語入門

中学校の技術離れ。昭和51年まで315時間あった技術の時間は、今は88時間と約1/4。
しかも、木材、金属、電気、機械、栽培という項目は必須のまま、情報基礎が増えている。
技術・家庭科の学習指導要領の歴史的編成と現在の教育情勢より)

荏原第六中学校での技術の時間、中学2年生では週1時間、中学3年生は隔週で1時間しかないとのこと。


モンゴル高専つながりで始まった荏原第六中学校での、IchigoJamプログラミングも3年目!
今年は、都立高専品川キャンパス&近隣PCNメンバーで開催!


「コンピューターはどこにいる?」で授業スタート!
前週まで2コマ使って、IchigoJamのはんだづけをしてくれていたので、みんな使うのはマイIchigoJam。


入力、出力、電源、ケーブルを自分でつないで、スイッチON!(講師、PCN品川代表、清水さん)


自分ではんだづけしたLED、自在に制御できました。
SAVE0、ケーブル外して自動起動で、エルチカロボット完成!
「IchigoJamがかわいく思えた」と嬉しい声。


続いて、テレビゲームをつくるよ!で起きる歓喜の声。キーボードを打つスピードもアップ!(講師、PCN上田代表、斉藤さん)


さすが中学生、自分なりにアレンジを加えつつ、テレビゲームづくりを楽しんでもらえました。


IchigoJamを使った応用作品の展示に、興味津々なこどもたち。


ロボットもゲームも自分で作れる!
もちろん複雑なロボット、複雑なゲームには、それなりに技術が必要ですが、インターネットがある現代。
自分で学習し放題、創り放題!


技術の部屋に展示してあったロボットたち。プログラムが透けて見えるようになったはず。


同じく展示されていたステキ作品、IchigoJamとサーボモーターや、センサーを加えると一段とおもしろくなりますよ!

いい作品ができたら、PCNこどもプロコンに応募しよう!
今年中学3年生になる2年生たち、今から春休みにかけての取り組みが受験前でいいのかな?
技術好き、コンピューター好きなら、技術の時間だらけな高専を、選択肢として加えよう!
(なんと、普通高校には技術の時間がない!?)


中学校プログラミング、都立高専PCN品川PCN上田PCN秋葉原AssemblagePCN鯖江メンバーでの出張講座は大成功!


はじめてのプログラミング with IchigoJam (PDF)
中学生向け50分授業でざっと体験してもらうためのスライド、エルチカからかわくだりゲームまで。
次週の1コマでは、ゲームの改造や、ボタンやセンサーを使った計測をしてみよう!

10 CLT 20 IF BTN()=0 GOTO 20 30 T=TICK():?T/60;".";T/6%10

こちら本体ボタンを使った時間を計測、ストップウォッチプログラム。
20行の BTN() を INKEY() に変えるとキーボードの何かキーを押したら時間を表示に変わるよ。

詳しく知りたくい人へ
辞書「IchigoJam BASIC リファレンス
教材「IchigoJam プリント
質問「Twitter で #IchigoJam 付きで投稿!

links
- The First Embedded Programming for All 2nd Grade Kids at the Ebara 6th Middle School in Tokyo (2017年)
- 中学生向けプログラミングの授業モデル / LEDから学ぶ単純作業のアウトソース、ゲームから学ぶアプリづくり - 荏原第六中2年生の50分授業 (2018年)

福井高専に入学した時、電子情報工学科では全員SHARPのポケコンPCG-805を買うこととなってました。

BASICでプログラミングできる、ちょっと大きな関数電卓。テストに持ち込めないので結局関数電卓も買う羽目になりましたが、運命を変えるほどの大活躍。 当時持っていたMSXと接続してゲームをクロス開発し、ケーブルを使ったローカルネットワーク転送で高専のクラスの友達に配布は、モバイルアプリサービスの原点です。

現代で言う、クラス全員スマホを持っているような状況。今ならきっとスマホのアプリを作って配布したいはず。

そこで、JavaScriptかんたんフレームワークです!

重たい開発環境は一切不要で、数行から書き始めることができ、GitHub pagesを使えば、クラス内はもちろん世界中の人に見てもらうことだって可能です。

こちら、PCスマホタブレット対応、かんたんフレームワーク jigjsシリーズ(ちょっとしたjsの治具)
- 正方形ゲームフレームワーク - sq-game.js
- デジタル万華鏡フレームワーク - websarasa.js
- 4択クイズフレームワーク - q4js
- 地図フレームワーク - egmapjs
- 時計フレームワーク - egclockjs

新作、時計フレームワーク「egclockjs」は、プログラミングでちょっとしたものづくりをより簡単にします!

simple analog clock - egclockjssrc on GitHub
秒で変化する色相を使った sin/cos 三角関数を使った定番、アナログ時計。
1秒で1回転するミリ秒針がワンポイント!


simple digital clock - egclockjssrc on GitHub
シンプルに文字で時計を表し、背景が1秒を表現する。
fixnum は、指定した桁数で0埋めする関数。

IchigoJamでプログラミングの学び方のコツをつかんでいたなら、スマホで動くアプリづくりもすっと取り組めるはず。
何か困ったことがあれば、Twitterで #jigjs ハッシュタクで質問ください!

総合的な学習の時間を45分を続きで2コマ使って、プログラミングとコンピューターのおもしろさに触れてもらった子供たちはみんな、もっとやりたいと言います。

図書館内などにIT遊具としてIchigoJamを自由に使える場所を作りましょう。 こどもたち同士の自慢しあい、教えあい、越前がにロボコンやPCNこどもプロコンなどのコンテストや、自由研究へと広がっていくことが、高度IT人材育成へステップアップする子が誕生へとつながるでしょう。

福井県内で進む小学校プログラミング必修化に向けた準備、今回は、福井県の北よりの市、坂井市東十郷小学校の教員、全員対象のプログラミング研修。 まずは先生も楽しむこと。この研修、越前がにロボコンに出場した生徒から羨ましがられたとか!来年度から始まる、楽しいプログラミング学習、みんなや先生を支える強力なサポーター、もういました!

プログラミング研修の復習は、こちらの動画とスライドと合わせてどうぞ!
動画&スライド公開、プログラミングB分類、総合と英語2コマ使った「はじめてのプログラミング」 - 鯖江市進徳小学校でモデル授業

小学生の社会で習う、福井県には市町が17。コンパクトなので覚えやすくて良いですね。
日本の地方自治体オープンデータのキャッチフレーズから、福井県内の市町を当てる4択クイズアプリをつくりました。

クイズ Q4福井」(src on GitHub、JavaScriptのwebアプリフレームワーク、q4js使用)

こういうアプリがサクッと作れる子供たちが、どんどん誕生する未来はすぐそこです!

光るネクタイ、単4電池1本の軽量バージョン。
100均10本100円、マンガン単4電池1本で5時間光る!
昇圧回路の最大電流が130mAと少ないので、輝度が必要な時は単4電池2本の直結バージョンがおすすめ。


光るネクタイ!


材料は、テープ状のWS2812Bから18コ、昇圧回路、8ピンICソケット、単4電池ケース、スライドスイッチ、マイコンLPC810、配線ワイヤー・抵抗の切れ端少々


WS2812BのDI側にはんだをもっておき、DIに抵抗などの切れ端をはんだづけ
8ピンICソケットの1,4,6,7,8番ピンをカット。2番と3番を写真のように広げる(切り欠きを上に見て、右上から時計回りに1〜8番)


GNDと2番、5Vに3番をはんだづけ。


裏面、5番に切れ端に、2番3番に触れないようにつないで、はんだづけ。余った分はカット。


ホットボンドで覆っておく。


表側もホットボンドで固める。


スライドスイッチを昇圧回路のG,EN,I側に差し込み、90度曲げて、はんだづけ。


出っ張った部分はカット。


昇圧回路のGとOに線材ワイヤーをはんだづけ。


電池ケース、+側に昇圧回路のIを差し込み、ホットボンドで固定。


はんだづけして、カット。


ホットボンドでさらに固定し、覆う。


WS2812B、電池ケースの長さ分両面テープをカット


WS2821B、側面に貼り付ける。


電池ケース、-側はペンチで曲げて、長すぎる分はカット。


GNDへはんだづけする。


WS2812B、5VとGNDにはんだをもっておき、線材にも予備はんだ。


WS2812Bの5VとGNDに届くちょうどいい長さにカット、ワイヤーストリッパーで被覆をむく。


5VとGNDへはんだづけ。


LPC810へ、WS2812B制御プログラムを書き込み、8ピンICソケットに差し込む(切り欠きで向きをあわせる)

七色に輝くプログラムを「LPC810をあやつろう」や「書き込み基板 writer810」を使って、IchigoJamから書き込む。

5 V=30 10 POKE#700,0,4,0,16,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,251,255,239,47,72,223,33,1,96,47,72,1,104,3,34,210,67,17,64,1,96,45,72,45,73,1,96,45,72,12,33,1,96,1,36,36,7,V,38,48,2 20 POKE#746,32,96,0,32,0,33,2,70,2,42,0,221,3,58,0,35,1,37,40,66,0,208,51,70,91,26,0,43,0,218,91,66,163,84,127,180,0,240,21,248,0,240,51,248,127,188,33,74,163,24,31,70,3,63,3,58,1,59,1,63,61,120 30 POKE#784,29,112,1,58,249,209,1,49,177,66,221,209,1,48,6,40,217,209,215,231,24,72,33,70,21,76,4,34,128,37,11,120,34,96,43,66,8,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,96,7,224,0,0,34,96,0,0,0,0,0,0 40 POKE#7C6,0,0,0,0,0,0,109,8,233,209,73,28,1,56,228,209,112,71,7,79,1,63,253,209,112,71,128,128,4,64,16,0,4,64,192,193,0,64,191,255,255,255,0,32,0,160,0,35,0,160,128,26,6,0,96,0,0,0 50 A=#700:L=256:LRUN1 SAVE0 NEW 1 'LPC810 Writer 110 UART3,2:OUT2,0:OUT1,0:WAIT9:OUT1,1 120 CLS:?"?":GSB@R 130 ?"Synchronized":GSB@R 140 ?12000:?:GSB@R:GSB@R 150 ?"A 0":GSB@R:GSB@R 160 ?"U 23130":GSB@R 170 ?"W 268436096 ";L:GSB@R:UART1,2:LC0,-1:FORI=0TOL-1:?CHR$(PEEK(A+I));:NEXT:UART3,2:LC0,6:? 180 ?"P 0 0":GSB@R 190 ?"E 0 0":GSB@R 200 ?"P 0 0":GSB@R 210 ?"C 0 268436096 256":GSB@R 220 OUT2,1:OUT1,0:OUT1,1:LED1:END 300 @R:K=INKEY():IF K=13 K=INKEY():WAIT9:RTN ELSE CONT SAVE1 LRUN0

輝度V(=30)は、最大255だが、今回の回路では電流が不足するので、控えめな輝度設定。
マシン語のプログラムを変更し、同時に光らせなければ、最大輝度は上げられる。


ネクタイ色に合うマスキングテープで固定。下側は固定しても良いが、ネクタイを通すところで安定する。


こうしてできた、光るネクタイ軽量版。


光るカチューシャにも!

キラキラしている、福井駅前スケート場「ハピリンク」に、キラキラ装備で臨むのも楽しいかも!?
銀盤カラフル 光の空間&風船「インスタ映え」 ハピリンク(福井新聞ONLINE) - Yahoo!ニュース

MacでiPhoneアプリを開発したり、MSXでポケコン用のゲームを開発したりすることをクロス開発といいます。

IchigoJamで、かわいい32bitマイコンLPC810用のプログラムを開発するミニマムクロス開発を手軽に体験してもらうためのプリント基板(PCB)を作成。


IchigoJam本体のボタンを押したら、再度書き込みするようにして、プチ量産!


LPC810をあやつろう - IchigoJamプリント」をみながら、ユニバーサル基板でまずは手作り。


ブラウザ上、無料で使えるプリント基板設計ツール「Upverter」で、新規プロジェクトを作って、SCEMATIC画面で、部品配置して、接続。 IchigoJam シールドなどの部品は登録してあるので、検索して貼り付けるだけ!


PCB LAYOUTに切り替えて、かっこいい感じに並べる。gridを50milとかにするときれいに並びます!
つなぐべき箇所が、緑の直線としてガイドされてわかりやすい。


緑のガイドにしたがって、8milの線でつなぎました。GNDは接続せずに、ベタGNDにするのもかっこいい!?(ベタGNDのやりかた

あとは、プロジェクトのページ "810writer for IchigoJam" から、"Gerber Format (RS-274X extended)" をダウンロードして、発注して待つだけ! 基板サイズは 1200mil x 1500mil なので、30.48mm x 38.10mm、お好きな色で発注可能です!

IchigoJamは、MSXに習って、上位互換。
こどものお小遣いでも手が届く「安さ」と「学びやすさ」にこだわるIchigoJam。
大幅な機能拡大や、容量アップを行わない、変わらない安定感がウリです。

IchigoJam ver 1.2.3 の使い勝手をそのままに、IoTと、ちょっとした改善の積み重ねた ver 1.3。
IoT/オープンデータ/ビッグデータ/AIでも連携する、さくらインターネットさんとの共同プレスリリース。
回路もCPUも変更ないので、いままで全てのIchigoJamをバージョンアップできます!

餅は餅屋。いろんな業種の人による「プラスIoT」が熱い!
さくらインターネット「IchigoSoda (=IchigoJam x sakura.io)」のIoT火災報知器。

火災報知器と連動した無線通報端末「火守くん」を“IchigoSoda”で開発 - 導入事例・構成例導入事例・構成例
「子どもの頃、プログラミングが好きでBASICでゲームを開発していたんです。これなら私でも開発できると考えました」と社長の刀根さん自らが開発! 大人も楽しいIoT、IoT研修などのお問い合わせもどうぞ!(ichigojam@jig.jp)

2/3(日) サイボウズさん、さくらインターネットさんとも共同で、IchigoSodaを使った、IoT親子ワークショップも開催!
はじめてのIoTデータ活用 親子プログラミングワークショップ kintone x sakura.io x IchigoJam - さくらのイベント(関東版) | Doorkeeper

IchigoJam BASIC ver 1.3、5つの主な変更点
1. コマンド1つで IoT
2. ちゃんとした RENUM
3. 打ちやすくなったローマ字と絵文字
4. ゲームの幅広がる、カーソルスイッチ
5. 70% 高速化

1. コマンド1つで IoT
月額64円(年間でも768円)で実現できちゃう4G/LTEを使ったIoT。 さくらインターネットの sakura.io をIchigoJamと接続するお手軽IoTをもっと手軽にするIoTコマンドを搭載!

IoT.OUT 1 OK

IoT.OUTコマンドで16bitの数値が送信完了!sakura.ioの管理画面でリアルタイムにデータが届く様子が見えます。 受け取りたいサーバーのアドレスを打ち込めば、webサービスと簡単に接続できますし、WebSocketを使えばリアルタイムに動作するアプリをJavaScriptなどで簡単に作れます。

反対に、ネットから受け取るコマンドは IoT.IN()

?IoT.IN() 5 OK

スマホから家の内外にある家電・ロボットの遠隔操作だってできちゃいます。

いままでのIoTコマンドでは配列や、PCG領域などを使っていましたが、新たなRAM領域を使うようにしたので、使い勝手アップ!

確保した新しいRAM領域(#114A-#117F)の54bytes、ご活用ください!(IchigoJam ver 1.3 メモリマップ
また、I2Cの初期化処理を変更時のみに限定し高速化、BPSの第二パラメータでI2Cの通信速度設定にも対応しました。

2. ちゃんとした RENUM
プログラムに機能をどんどん足していって、ごちゃっとしたものをきれいに整理することを、リファクタリングといいます。 行番号でプログラムを管理する IchigoJam BASIC、10刻みではじめて、間に1刻みでいれていったのに入らない!そんな時に使う RENUM ですが、今までは行番号の振替に非対応でした。

1 LED1:WAIT10 2 LED0:WAIT10 3 GOTO1 RENUM 10 LED1:WAIT10 20 LED0:WAIT10 30 GOTO1 RUN Line error in 30 30 GOTO1

GOTO1が書き換わらないためエラーになり、手で振り直しが必要だった、ver 1.2.3。
ver 1.3 では、番号振り直しに対応したので、リファクタリングがはかどります!
ただし、プログラムの容量を変えない方針で書き換えるので、GOTO1 が GOT100 という形でコマンドにめり込む形になるので、そこは手で修正してあげください。

1 GOTO1 RENUM 100 OK 100 GOT100 OK

3. 打ちやすくなったローマ字と絵文字
キーボードを使いこなすこと、現代のコンピューターを活用する上での必須スキル。 試験の現場でも効率化のため、手描きからキーボード入力への切り替えが進むのは間違いないでしょう。 幼稚園児でもわかるアルファベットのABC、次のステップのSHIFTキーを伝授する前に、ALTキーを使った絵文字遊びがオススメです。

今回の変更で、右ALTと左ALTの違いをなくし、押しても出なかったWXYZも矢印絵文字として割り当てたので、アルファベットと合わせてお楽しみください! 「ALTを押しながらC」で感覚をつかんだら、「SHIFTを押しながら8」などもスッと伝わります。

またローマ字入力 KAK と3つキーを押した時の違いです

' ver 1.2.3 カ ' ver 1.3 カK

このように打ったキーがそのまま表示するようにしたので、打ち間違いを修正しやすくなり「キーを押しても何も出ません!」というケースがなくなります。

通常のパソコンと違って、漢字変換がないので、シンプルにローマ字入力のみを学べます。
Nの区切りとして「'」にも追加対応し、小学校でのローマ字の学習にオススメ「日本式ローマ字」にも対応!
小学校で教えるローマ字は日本式で決まり! IchigoJamプリント「ローマじでうつ、カタカナ - こくごコース」と授業計画例

また、意図せず「OK0」コマンドを使ってしまい「エラーメッセージがでません!」となるケースに対応し、表示なしは「OK2」へと変更。

RNDと「(」の間に空白をいれてしまうと Syntex error と、エラーが起きてしまう分かりにくい間違いを防ぐために、空白無視への変更。

' ver 1.2.3 ?RND (6) Systax error ' ver 1.3 ?RND (6) 5

4. ゲームの幅広がる、カーソルスイッチ
位置を指定するコマンドLOCATE(省略形LC)の第三パラメーターに1を指定すると、点滅するカーソルを表示できるようにしました。

ゲームで学ぶ、アルファベット! LOCATEの第三パラメーター、カーソルスイッチ実装
パズルゲームなどにオススメ!ベーマガへの投稿の際は IchigoJam ver 1.3 と明記しましょう。
逆に、1.2.3で、カーソルスイッチでエラーになってしまう場合は、第三パラメータを消し、自前でカーソルを表示するように改造すればOKです!

5. 70%高速化
速度より機能優先の IchigoJam ですが、せっかくのバージョンアップなので内部ロジックチューニングで少し高速化。
いままでちょっと重いなと思ったゲームが、遊びやすくなります。
1.3にして、いろいろ工夫してもまだ重い?100倍高速化するマシン語を使うのも手ですよ!
はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

その他の変更
BPSで-100以下を指定することで、シリアル通信速度の高速指定に変更(BPS-2304 → 230400bps)
UART4(bit2が1)でキー入力をシリアル通信にエコーバックモード
プログラム実行時にキーバッファをクリアしないように変更
FILES0,0でファイル0のみ表示するよう変更
SOUNDピンをマシン語で使用可能に変更(SOUND()に反映されない不具合修正)
SWITCH時のバージョン表示廃止

IchigoJam BASIC ver 1.3、変わらない点
- NXP LPC1114 向け、IchigoJam BASIC が動く24KBのOS(回路に変更無いので全IchigoJamバージョンアップ可能)
- プログラムは1KB(約1000文字)、4つまで本体に保存可能(0番はボタン押しながら起動で自動起動)
- 32x24テキストスクリーン、64x48のハーフグラフィックス(PCGでパターン変更、VIDEO3などで拡大表示対応)
- 小さなこどもでもわかりやすい、アルファベット大文字を基本に、ローマ字入力でカタカナ入力にも可能

IchigoJam BASIC ver 1.3 リファレンス
IchigoJam BASIC リファレンス ver 1.3
IchigoJam BASIC reference ver 1.3 (英語版)

バージョンアップ方法
店頭のIchigoJamは順次、ver 1.3 へと置き換わっていく予定です。
お手元のIchigoJamも、自分でバージョンアップに挑戦したり、書き換えサービスで、ver 1.3 へと更新できます!
ダウンロード | こどもパソコン IchigoJam - はじめてのプログラミングパソコン(1500円)

links
- こどもIoTを実現する、こどもパソコン『IchigoJam』ver 1.3 をB Inc.がリリース ~さくらインターネットの『sakura.io』を利用した通信用コマンドを標準搭載~
- こどもIoTを実現する、こどもパソコン『IchigoJam』ver 1.3 をB Inc.がリリース | さくらインターネット
- コマンド1つでIoTも可能な1,500円のこどもパソコン「IchigoJam BASIC ver1.3」 - PC Watch
- 子どものプログラミング教育向けに開発された「IchigoJam BASIC」のver1.3がリリース:EdTechZine(エドテックジン)
- ASCII.jp:子供パソコン「IchigoJam BASIC」、さくらインターネットのIoTに対応

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像