mrubyボードで温度センサの値を取得してBLE通信->iPhoneに表示

mrubyボードで温度センサ(TMP102)の値を取得してBLE通信させてみました。 通信相手はiPhone5Sです。

f:id:tanakayoshi10:20141103182216j:plain

f:id:tanakayoshi10:20141103182509j:plain iPhoneに表示される値はまだ正しくないのですが、 温度センサに息をかけるなど温度を変化させると 値が変わったりします

同時にMacでもUSB経由で受信させています。 f:id:tanakayoshi10:20141103182545j:plain

mrubyのソースコードはこんな感じです。

@APTemp = 0x49
Serial.begin(0, 115200)
Serial.begin(1, 115200)

I2c.sdascl(17,16)
delay(300)

10.times do
  l = I2c.request(@APTemp, 2)

  s1 = I2c.lread()
  s2 = I2c.lread()
  temp_h, temp_l = s1, s2
  temp = ((temp_h << 4) + (temp_l >> 4)) * 0.0625

  t = temp.round(1).to_s

  Serial.println(0, t)
  Serial.println(1, t)
  delay(1000)
end

Sys.fileload()

iPhone側は こち ら をそのまま動かしているだけです。