atelier:mitsuba

i love UI/UX, Blend, XAML, Behavior, P5, oF, Web, Tangible Bits and Physical computing. なにかあればお気軽にご連絡ください。atelier@c-mitsuba.com

micro:bitでメッセージのやりとり。

f:id:c-mitsuba:20190519020122p:plain

let text_list: string[] = []
let message = ""
let i = 0
radio.onReceivedString(function (receivedString) {
basic.showString("" + receivedString)
basic.clearScreen()
})

input.onButtonPressed(Button.A, function () {
i = (i + 1 + text_list.length) % text_list.length
basic.showString("" + text_list[i])
})

input.onButtonPressed(Button.B, function () {
i = (i - 1 + text_list.length) % text_list.length
basic.showString("" + text_list[i])
})

input.onButtonPressed(Button.AB, function () {
radio.sendString("" + message)
message = ""
})

input.onGesture(Gesture.Shake, function () {
message = "" + message + text_list[i]
basic.showString("" + text_list[i])
basic.clearScreen()
basic.pause(500)
basic.showString("" + text_list[i])
})

radio.setGroup(1)
text_list = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "_"]
i = -1
radio.sendNumber(0)
basic.forever(function () {
})

AとBで文字選んで、振って送りたい文字を追加して、AB同時押しで発信するやつ。

どうやら、radioで遅れる最大文字数は20文字らしい。
雑にやったけどレガシィインタフェースすぎてウケる(