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

Live of NHK WORLD 'NEWSROOM TOKYO' 大安禅寺の生出演で話した鯖江モデル(日本語対訳)

2018/01/19 23:55:00
#sabae #opendata #maker #movie #doc #english 




too funkyで、幻となった鯖江メガネ neoplug、IchigoJam x OLED エディション

番組内にはneoplug開発のBOSTON CLUB 小松原社長と共に登場!


世界中に放送された NHK WORLD NEWSROOM、YouTubeで録画も見られます。
インタビューシーン、21分38秒から見る! YouTubeシークリンク #t=21m38)

Q: Why has Sabae been so successful in embracing new technology? What’s the key to its success?

First of all, it is the mayor's decision to turn Sabae into an open-data city.
Sabae is the first city in Japan to have done this.
And it's important to emphasize that citizens backed up this decision.
The city has many CEOs. People in Sabae are eager to revive their community.
The number of shops is falling. Young people are moving elsewhere to find better jobs. Most of them don't return.
Residents want to stop this.
A citizens group started classes to make children and adults more familiar with programming.
And this spring, the city will launch programming clubs in all 15 elementary and junior high schools.
We believe all this could lead to the development of new apps using open-data.

Q: What's the goal of the Sabae city?

Sabae is trying to create a model that will make everything revolve around information technology.
Our goal is to involve all residents and all local businesses in the management of their city.
...and to inject technology into traditional craftsmanship to revive local industry.
70-thousand people live in our city, which is a good size to innovate.
People communicate with each other... no matter what their job is.
With IT, every single citizen should be able to develop new ideas to improve the community and participate in decision-making.
And eventually, this will lead the city to grow.
Also, we hope to attract investment from Japan and abroad... and encourage people to live in Sabae.

- 普通の眼鏡をスマートグラス化、スライド式着脱機構「neoplug」。鯖江ブランドを世界規格へ - Engadget 日本版
- データシティ鯖江ポータルサイト | Data City Sabae

Sabae will appear in the live of NHK WORLD TV broadcasting 'NEWSROOM TOKYO'

2018/01/18 23:55:00
#sabae #IchigoJam #maker #neoplug #english 

On Friday 19th, I'll appear in the live of NHK WORLD TV broadcasting(NHK国際放送) in "NEWSROOM TOKYO" program with neoplug "glasses for wearable". [20:00 - 20:45 (JST)]

IchigoJam x OLED x neoplug!

IchigoJam demo / see IchigoJam x OLED - IchigoJam BASIC & Arm Assembly Language.

1 GSB@INIT:GSB@LINIT:CLT 2 GSB@CLS:S="IchigoJam":FORI=0TOLEN(S)-1:X=3:Y=12-I:GSB@LC:C=ASC(S+I):GSB@LPUTC:NEXT 3 VIDEO0 20 X=RND(8):Y=RND(16):GSB@LC 22 IF TICK()>60*15 CLT:GOTO2 25 IF !(X<2 OR X>4 OR Y<3 OR Y>13) GOTO20 30 C=229+RND(27):C=RND(2)*C:GSB@LPUTC 40 GOTO20 100 @INIT:POKE#700,0,141,20,32,0,175:?I2CW(60,#700,6):RTN 110 @LC:POKE#700,0,33,Y*8,127,34,7-X,7:?I2CW(60,#700,7):RTN 120 @PUTC:COPY#700,C*8,8:?I2CW(60,#40,#700,8):RTN 130 @CLS:X=7:Y=0:GSB@LC:C=0:FORI=0TO127:GSB@PUTC:NEXT:RTN 150 @LPUTC:?USR(#800,C):?I2CW(60,64,#700,8):RTN 155 @LINIT:LET[0],#B5F0,#2307,#021B,#18C9,#2308,#4358,#1812,#2500,#2701,#2600,#2407,#2000,#5D93,#40EB,#403B,#40A3,#18C0,#3C01,#3601,#2E08,#D1F6,#5548,#3501,#2D08,#D1EF,#BDF0:RTN

We're judging programs of PCN Kid's Programming Contest 2017 Winter at SAMMIE'S in Fukui prefecture.
Thank you kids to send us many intresting programs!

(added 2019.1.19)
NHK WORLD NEWSROOM 2018.1.19 - YouTube (recorded)

"my interview scene and my talks"

IchigoJam RPi, a Third Party OS for Raspberry Pi can program the IchigoJam / Kids Coding 50th!

2017/12/04 23:55:00
#IchigoJam #KidsIT #rasppi #english 

A third party OS for Raspberry Pi "IchigoJam RPi" can connect and program the IchigoJam with LPC1114 via just 3 jumper wires.
ラズパイ用サードパーティーOS「IchigoJam RPi」はIchigoJamをジャンパーワイヤー3本で簡単につないで、プログラムできますよ!

Connect 3 wires after boot both IchigoJams. 起動してから3本つなぐ
1. RPi:6pin(GND) - IchigoJam:GND
2. RPi:8pin(TXD) - IchigoJam:RXD
3. RPi:10pin(RXD) - IchigoJam:TXD

Type followings on IchigoJam RPi つぎのように打つ


Your remote IchigoJam lighted! するとつないだIchigoJamが光る!

You can program also! プログラムもできちゃいます

?"1 LED1:WAIT10 ?"2 LED0:WAIT10 ?"3 GOTO 1 ?"RUN

Send #1B (=0x1b, code of ESC) to stop 止める時は#1Bを送信


Unwire a wire if IchigoJam repeated errors. エラーがループしたらワイヤーを1本ぬく
You can change the no response mode "OK0" レスポンスなしモードは「OK0」


Make a VIDEO connector for Raspberry Pi Zero ビデオコネクターづくり

Just solder a 2P pin header and a composit connector

You can use the 4.3 inch mini monitor! 4.3インチのミニモニターが使えます!

How to use the IchigoJam RPi つかいかた
1. Download the OS, IchigoJam RPi (

2. Write to SD 書き込み
3. Boot! 起動

You can find the "IchigoJam RPi" on the Raspberry Pi official DOWNLOADS page!

Enojoy programming and computing! プログラミングとコンピューティングを楽しもう!

photo 2016.12.11: Mr. Eben Upton(@EbenUpton), inventor of Raspberry Pi and inventor of IchigoJam! 「IchigoJam meets Raspberry Pi! Mr. Eben Upton's first IchigoJam BASIC program is...
We've released IchigoJam RPi with I-O DATA!
エベン氏と会って1年、アイ・オー・データ機器のイベントでついに IchigoJam RPi 発表!
Moblie Game Machine making workshop for Kids using IchigoJam RPi / I-O DATA FAIR 2017

photo from 「10 age kid who got PCN RaspberryPi award is creating a electric circuit with transistors as his own idea! Let’s spread Kids Programming! / PCNラズパイ賞を受賞した10歳の子は「最近はトランジスタが楽しい」と、オリジナルなモーター回路を設計中!IchigoJam RPi でますます広がる こどもプログラミング! – about yrm
Raspbery Pi Foundation supported our PCN Kids Programming Contest 2017 in Summer.
Thanks a lot!! ラズパイ財団からPCNこどもプロコンに特別協賛、感謝!

Today (4 December) is 50th anniversary of Kids Coding! なんと子供のコーディング50周年記念日!
Celebrating 50 years of Kids Coding

IchigoJam can connect Rwanda and us also. / IchigoJamがつないでくれたルワンダとの縁!
Programming for Rwandan kids! Open Teaching Materials

Programming for All Kids! - PCN / すべてのこどもたちにプログラミングするきっかけを!

鯖江で実稼働している公共交通IoT クラウドEXPOにてスペシャルセッション at さくらインターネットブース / PubTra-IoT Special Session in Cloud Expo 2017

2017/05/09 23:55:00
#IoT #opendata #IchigoJam #english 

クラウドの展示会、クラウドコンピューティングEXPO【春】のさくらインターネットブース、スペシャルセッションにて「 と IchigoJam でつくるバス公共交通IoTとオープンデータ」をテーマにトークセッション!(5/10水14:30〜)
We'll have a show at the booth of Sakura Internet in Cloud Computing Expo Spring!

こどもでも作れる簡単、高速、低消費電力IoTプログラミング環境でもある「IchigoJam」と月額60円からの4G通信モジュール「」を使った、鯖江市営バスのシステム。 Code for Japan コーポレートフォローシップで誕生した、本システムの背景とを鯖江市役所の情報統括官で Code for Sabae のメンバー、本システムの共同開発者でもある牧田氏を交えて紹介。 更なる低価格IoTを実現するLoRaとこども起業家輩出を目指す企業連携プロジェクト「KidsVenture」が創る未来を、代表の高橋氏を交えて公開ディスカッション!
- Easy IoT Programming Environment "IchigoJam" x Just ¥61/month IoT ""
- About Code for Japan Corporate Fellowship and this system with Mr. Makita CIO of Sabae city.
- How to make the future with Mr. Takahashi Leader of KidsVentrue.

"オープンデータ鯖江市つつじバスモニター / Sabae Tsutsuji Bus Monitor with opendata"

ブースでは、IchigoJam x で動くシステムの予備機と鯖江で4月から運用されているバスのリアルタイム乗客数オープンデータを紹介。
だれでも作れる IoT ぜひ会場までお越しください!
We'll show the acutual IoT device and the demo page on web at the booth.
IoT for everyone! Welcome to the booth of Sakura Internet!


Bus Graph / つつじバス乗客数グラフ@ja
(based on つつじバスなう)

- Code for Sabae 4周年!(スペシャルセッション講演資料)
- 「第8回 クラウド コンピューティング EXPO【春】」(東京)の弊社ブースにて、セッションを行います | さくらインターネット
- 福井県鯖江市、、さくらインターネットが共同開発した「バス乗客リアルタイムオープンデータシステム」を鯖江市の公共バスで運用開始
- 鯖江市バスのリアルタイムオープンデータを使ったグラフアプリ
- - クラウド コンピューティング EXPO | リードエグジビションジャパン
- バス乗降数IoT実験、Code for Japan x Yahoo!Japan コーポレートフェローシップ in 鯖江

Armマシン語でつくる32bit大きな数計算ライブラリ / 32bit Integer Library on IchigoJam

2017/05/08 23:55:00
#IchigoJam #asm #english 

メモリが4KBしかないIchigoJam、節約のため変数はすべて16bit。低い限界を楽しめる設計です。 もちろんプログラミングでその限界は超えられます。今回はマシン語を使って超える方法の紹介。
How to exceed the 16bit limit of IchigoJam!

@CALC32 PUSH {LR,R4,R5,R6} R6=8 R6=R6<<8 R6=R1+R6 R5=#F<<2 R4=R0 R0=R4>>2 R0&=R5 R0=[R6+R0]L R1=R4<<2 R1&=R5 R1=[R6+R1]L R2=R4>>12 R2-0 ' plus IF !0 GOTO @SKIP1 R0=R0+R1 GOTO @END @SKIP1 R2-1 ' minus IF !0 GOTO @SKIP2 R0=R0-R1 GOTO @END @SKIP2 R2-2 ' multi IF !0 GOTO @SKIP3 R0*=R1 GOTO @END @SKIP3 R2-3 ' division IF !0 GOTO @SKIP4 PUSH {R4} GOSUB R3 POP {R4} GOTO @END @SKIP4 R2-4 ' division(remain) IF !0 GOTO @SKIP5 PUSH {R4} GOSUB R3 POP {R4} R0=R1 ' GOTO @END @SKIP5 @END R4=R4>>6 R4&=R5 [R6+R4]L=R0 POP {LR,R4,R5,R6}

"32bit calc library on asm15 (CALC32)"

マシン語呼び出しのパラメーターで、計算種類、配列位置で、結果格納、計算する数2つを指定します。32bit = 4byte なので、配列は[0]と[1]など、2つずつ使います。コンパイルした結果がこちら。

10 POKE#700,112,181,8,38,54,2,142,25,60,37,4,70,160,8,40,64,48,88,161,0,41,64,113,88,34,11,0,42,1,209,64,24,19,224,1,42,1,209,64,26 20 POKE#728,15,224,2,42,1,209,72,67,11,224,3,42,3,209,16,180,152,71,16,188,5,224,4,42,3,209,16,180,152,71,16,188,8,70,164,9,44,64,48,81 30 POKE#750,112,189 RUN

例えば、1234*5678 (=7006652)を計算するには、このように使います。

[0]=1234:[2]=5678 U=USR(#700,#2201):'[4]=[0]*[1] [6]=10000 ?DEC$(USR(#700,#3523),4)DEC$(USR(#700,#4423),4) 7006652

結果の表示上、9999万9999まで表示します。マイナスの数はどうなるか、やってみましょう! links
- IchigoJam
- マシン語でつくるプログラマブル学習リモコン
- レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED
- はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

DMM 4K対応、プログラマブル学習リモコン by IchigoJam / Programmable IR receiver and sender

2017/05/07 23:55:00
#IchigoJam #maker #asm #english 

DMM.make 4Kディスプレイの入力切り替えが面倒なので、IchigoJamで学習リモコンを作ってみました。
I made programmable IR sender by IchigoJam.

ハードウェア設定 (hardware setup)
IR Reciever - IN1 (赤外線受光モジュール)

10 POKE#700,112,181,114,182,8,34,18,2,138,24,0,40,54,208,80,35,27,3,1,51,27,3,1,36,228,4,202,38,0,33,0,240,40,248,1,49,33,66,30,209 20 POKE#728,29,104,0,45,247,209,36,9,0,32,0,33,0,240,29,248,1,49,33,66,19,209,29,104,0,45,247,208,17,82,2,48,176,66,12,208,0,33,0,240 30 POKE#750,16,248,73,28,33,66,6,209,29,104,0,45,247,209,17,82,2,48,176,66,229,209,0,33,17,82,2,48,64,8,98,182,112,189,100,37,210,53,1,61 40 POKE#778,253,209,112,71,80,35,27,2,1,51,27,4,4,51,1,36,0,38,17,90,0,41,234,208,28,96,0,240,21,248,30,96,0,240,18,248,1,57,247,209 50 POKE#7A0,2,48,17,90,0,41,222,208,0,0,0,0,0,240,8,248,0,0,0,0,0,240,4,248,1,57,245,209,2,48,228,231,154,37,1,61,253,209,112,71 200 IF BTN()=0 CONT 210 A=#BF00 220 B=#E11E:GSB300:N=USR(#700,0):WAIT60 230 B=#E21D:GSB300:N=USR(#700,0):WAIT30 240 B=#BE41:GSB300:N=USR(#700,0) 250 GOTO200 300 LET[0],346,169 310 FORI=0TO15:[2+I*2]=25:[3+I*2]=18+43*(1<<I&A!=0):NEXT 320 FORI=0TO15:[34+I*2]=25:[35+I*2]=18+43*(1<<I&B!=0):NEXT 330 LET[66],25,0:RTN

It makes IR data on the array (line 300) and send via IR LED blinking. I did it just 1 pressing when switch the input!

こちらがリモコンコード受信用のプログラムです。上のプログラムを一度実行したあと、一度 NEW でプログラムを消して、下記を入れることで、送信&受信テストができます。
This is the IR code receiver program. You can get the code after run the abobe program, NEW command and enter this program.

100 INPUT"1:SEND 2:RECV ?",N 110 IF N=1 N=USR(#700,0):GOTO 100 120 N=USR(#700,1) 130 FOR I=0 TO N-1 STEP 2:?[I];" ";[I+1];" ";:NEXT:? 140 N=0:FORI=0TO15:N=N|([3+I*2]>37)<<I:NEXT:?HEX$(N) 150 N=0:FORI=0TO15:N=N|([35+I*2]>37)<<I:NEXT:?HEX$(N) 160 GOTO 100

家のリモコンで動くもの全部、IchigoJam BASIC プログラミング可能に!
You can program your all devices have a IR receiver by IchigoJam BASIC!

- IchigoJam
- レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED
- はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED

2017/05/06 23:55:00
#IchigoJam #KidsIT #maker #english 

How to lower hurdles about robots?

レゴ テクニックシリーズは、ロボットづくりの肝のひとつ、メカトロニクス版を電子工作でいうブレッドボードのように試行錯誤が自由自在! シンプルなサッカーロボなら10分ほどでつくれてしまいます。 オープンソースハードウェアでもある組立図を見ながらこんな大型クレーンや、ショベルカーまで!
Lego Technic series likes breadboard! It's easy to make everything!

I connected Lego and IchigoJam using past codes.

You can control the Lego with this program with selectable power 7 levels.

1 P=4 10 A=-P:B=P:GSB100:WAIT30 20 A=-P:B=0:GSB100:WAIT30 30 A=0:B=P:GSB100:WAIT30 40 A=P:B=P:GSB100:WAIT30 50 A=0:B=0:GSB100 99 END

This demo robot is very simple. But you can control up to 8 motors! (2 motors x 4ch)

It's OK just put in IR-LED GND and OUT1. But a transistor enlarge the power!

This program drives a IR-LED to control Lego.

100 N=1<<14|C<<12|B&15<<8|A&15<<4 110 R=15^(N>>12)^(N>>8)^(N>>4)&15 120 IF PEEK(#700)!=112 GOSUB2000 130 ?USR(#700,N|R):RTN 2000 POKE#700,112,181,114,182,80,35,27,2,1,51,27,4,4,51,1,37,0,38,1,36,228,3,0,240,28,248,78,34,0,240,19,248,0,240,23,248,20,34,0,240 2010 POKE#728,14,248,32,66,2,208,22,34,0,240,9,248,100,8,243,209,0,240,11,248,78,34,0,240,2,248,98,182,112,189,0,181,0,240,14,248,1,58,251,209 2020 POKE#750,0,189,0,181,6,34,29,96,0,240,6,248,30,96,0,240,3,248,1,58,247,209,0,189,155,33,1,57,253,209,112,71 2030 RTN

See also if you want to learn the machine language on IchigoJam.

"asm15 - Assembler for IchigoJam"
I modified to assemble the code by BoxHeadRoom.

- PawerFunctionsの赤外線解析⑤・・・ - LEGOの機関車○●○ - Yahoo!ブログ
- IchigoJam 用アセンブラ - BoxHeadRoom 別館

グミのお菓子とレジンでイカLEDづくり / Squid LED by Gummy Tray

2017/05/05 23:55:00
#KidsIT #maker #english 

This Kid's day as the Moku-Moku making party in Hana-Dojo. Many kids came there!

I made also squid LED by the gummy tray.

光るスーパーキノコ! The super mushroom lightied up!

小さいものなら数分で固まる、UVレジン硬化用のUVライトをHana道場に導入! (参考、UVライト 1,980円
You can use UV light at Hana-dojo!

From 5-11 age kids tried first programming on IchigoJam!

やっぱりゲームは盛り上がります! All kids love games!

I taught how to control a servo to a child wanted to make robots.

- つくるおやつ|バンダイ キャンディ公式サイト (Splatoon / Super Mario Maker / Pokemon etc...)

椅子IoT リアルタイム座席オープンデータ向け新システム / Chair IoT for Real Time Seat Open Data

2017/05/04 23:55:00
#IchigoJam #maker #IoT #english 

I connected the chair to web.

今回は1コあたり400円のWiFiモジュール ESP-WROOM-02 を書き換えなしで使います。 光センサーの代わりに、お菓子IoTで使った圧力センサーを WiFi Shield を使ってIchigoJamに接続。
IchigoJam with $4 WiFi module "ESP8266" and pressure sensor via WiFi Shield.

You can modify registors.

I selected 100Ω resistor after checking on the monitor

10 VIDEO3 20 ?ANA(2):WAIT30:CONT

Set ID/password to the WiFi access point

OK0 UART3,0:OUT5,1:OUT6,1:WAIT300:UART3,2 ?"AT+CWJAP=";CHR$(34);"**SSID**";CHR$(34);",";CHR$(34);"**password**";CHR$(34)

Check with milks! Send a data to web if change the number via WiFi.

100 VIDEO0:B=0 110 N=ANA(2):?N 120 IF ABS(N-B)>100 LED1:WAIT10:LED0:GOSUB@SENDN:B=N 130 WAIT 3*60,0 140 GOTO110 200 @SENDN 210 UART0,0:OUT5,1:OUT6,0:OUT6,1:WAIT300:UART3,0 220 ?"AT+CIPSTART=";CHR$(34);"TCP";CHR$(34);",";CHR$(34);"";CHR$(34);",80":WAIT3*60 230 M=1+(N>9)+(N>99)+(N>999)+(N>9999) 240 ?"AT+CIPSEND=";82+M:WAIT30 250 ?"GET /siot/4/?key=********&v="N;" HTTP/1.0" 260 ?"Host: 270 ?"User-Agent: IchigoJam 280 ? 290 WAIT180:OUT5,0 300 RTN

*for IchigoJam 1.2b47 / ******** is secret key to write

Easy to deploy because it works by cheap batteries!

Total cost about ¥1,500 without monthly fees. But It takes time and effort to set up the WiFi.

お菓子IoT 重量センサーと32x16ドットマトリクスで食べ過ぎ防止 / Diet IoT with pressure sensor and 32x16 matrix LED by IchigoJam x

2017/05/03 23:55:00
#IchigoJam #maker #IoT #english 

Use pressure sensor to diet!

お菓子の量を重さで監視して、変化があったら で送信!
Send the number if the weight change.

Pressure sensor!

Pressure sensor (terminal A, B)
A: --+-- 1kΩ -- VCC
      +-- BTN(ANA)
B: -- GND

Machine language is so fast!

32x16 dot matrix LED
VCC - VCC(IchigoJam)
SIN_1 - OUT1
SIN_2 - OUT2
SIN_3 - OUT3

こちらお菓子IoTのプログラム (source of Diet IoT) *for IchigoJam 1.2b46

1 '32x16 MATLED driver 100 POKE#700,240,181,10,38,5,0,31,0,0,36,137,176,0,146,118,66,40,0,10,33,184,71,51,0,67,67,93,25,237,0,0,155,129,53,255,53,93,25,4,171,229,80,4,52,5,0,16,44 110 POKE#730,238,209,100,32,5,155,0,147,4,155,1,147,7,155,2,147,6,155,3,147,4,34,82,66,1,33,19,29,153,64,0,37,140,70,128,35,97,70,35,76,27,2,25,64,35,0,0,41 120 POKE#760,0,209,11,0,32,73,33,79,11,128,7,42,52,216,0,155,128,33,155,92,9,2,27,2,30,0,1,155,41,65,155,92,30,67,51,0,11,64,0,208,22,75,59,128,2,155,3,159 130 POKE#790,155,92,191,92,27,2,59,67,11,64,0,208,17,75,20,73,11,128,0,33,19,75,1,53,25,128,28,128,99,70,91,0,156,70,16,45,205,209,0,37,15,73,16,75,1,50,28,128 140 POKE#7C0,12,128,13,128,0,33,25,128,12,42,189,209,1,56,0,40,184,209,28,128,9,176,240,189,0,35,0,33,59,128,4,75,25,128,222,231,255,15,0,0,4,0,1,80,8,0,1,80 150 POKE#7F0,16,0,1,80,32,0,1,80,0,8,1,80,0,4,1,80 RUN:SAVE0 NEW:'Main program 200 N=0:C=100 210 A=1023-ANA() 220 U=USR(#700,A) 230 C=C-1:IF C=0 C=100:IF ABS(N-A)>2 N=A:GSB@SEND:?"SEND";N 240 GOTO210 300 @SEND:POKE#800,32,10,1,76,N,N>>8,0,0,0,0,0,0,103^(N&#FF)^(N>>8),36,0,36:R=I2CR(79,#800,13,#820,3):R=I2CR(79,#80D,3,#820,3):RTN SAVE1 LRUN0

- 【共立エレショップ】>> 32×16ドットマトリクスLEDモジュール■限定特価品■
- IchigoJamで32x16ドットマトリクスLEDを制御する - ※個人の感想です (マシン語編)
- さくらインターネットが提供するIoTプラットフォームサービス、

この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image