2014/11/24

Excel2013のコンテキストメニューが薄い

何も解決しない話になるが、Excel2013のコンテキストメニューの文字色が薄い。

image

使えるのは濃いグレーで、使えないのは薄いグレー。
どうにもコントラストが低く、最初見たときは全部ディセーブルなのかと思ったくらいだ。

テーマを変えても色が変わらないので、どうしようもなさそうだ。
Window自体も、アクティブと非アクティブでタイトル文字色しか変わらないので見分けづらい。
Excelの機能に不満はないけど、ちょっとこれはねぇ・・・。

2014/11/23

[nrf51]iBeaconとNordic

別にNordicに限定したことじゃないが、iOS8からiBeaconの仕様が変わったらしく、今のところNordicのVendor IDはCore Location Frameworkではじかれているらしい。

Nordic beacons and iOS

 

iBeaconのパケット仕様は、もともとAppleからは出てなくて、どちらかというと「こういうAdvertisingデータを流すと反応してくれた」みたいな感じだったのではなかっただろうか。
少なくとも私は、Appleの技術ドキュメントからは見つけられていない。

んで、いつしかMFi対象になってた。
あんまりわかってないけど、Advertisingのデータに書いてあるだけで、それが平文だったら、普通にスキャンしてまねすればだませてしまいますわな。
なので、自由度はなくなってしまうけど、まあAppleなら仕方ないかな、というところか。

2014/11/22

[android]LollipopのFOTAがNexus5に来たが、TeamWinだったので失敗した

白いNexus5を使っているのだが、昨日の朝、出勤前にLollipopのアップデートが来ていることに気付いた。
ヨドバシの480円SIMを使っているので、外に出てしまえば200kbpsになるため、家の中でダウンロードだけしておきたい。

そう思ってダウンロードは成功して再起動させたのだが、アップデートは始まらずにteamwinって出てきた。
よくよく思い出すと、SMS無しの契約のためセルスタンバイが気になり、root化して押さえ込んでいたのだった。
こういうときは、どうしたらいいんだろう?

 

調べると、recovery領域をオリジナルに戻せばよいようだった。
では、と、Lollipopのイメージを持ってきて解凍し、recovery.imgを焼いて再起動!
そしてリカバリモードにしたのだが・・・ドロイド君が横たわって赤い三角が出てる。
ネットだと、ここにメニューが出てくるような感じで書かれているのに。。。

やっぱり今インストールされてるのと同じじゃないとだめなのか、とKitkatのイメージからrecovery.imgを持ってきて、焼いて再起動してリカバリモード!
・・・同じだ。

もうあきらめて全部焼き直そうかと思ったが、よくネットに書いてあることを読むと、ボタンの操作をしないとメニューが出てこないとか。
昨日なのでうろ覚えだが、確か電源+音量上ボタンの同時押しだったと思う。
そうすると、出てきた。
まあ、私がリカバリモードで何かしたいわけでもないので、焼くものが間違っていなければよいだけだ。

普通にAndroidを起動させ、システムアップデートを促す画面に行くと再起動ボタンがあったので、タップ。
そしたら、自動的に再起動して、今度はごにょごにょとアップデート作業が始まった。

初めてだから、仕方ないよね。


Lollipopだが、あのイースターエッグ画面というか、あそこに入っているLollipopゲーム。
あれは、Nexus5の方がNexus7よりもやりやすかった。
私でもN5なら3点取れた! (レベル低い。。。)

2014/11/18

[nrf51]UARTログを使い、bonding時のイベントが見えたような気がした

BLEイベントハンドラの各caseにログを埋め込んだところ、bondingしたときに通知されるイベントの順番がわかった。
こんなに簡単に使えるなら、最初からやっときゃよかった。

advertising start
BLE_GAP_EVT_CONNECTED
BLE_GAP_EVT_SEC_PARAMS_REQUEST
BLE_GAP_EVT_AUTH_STATUS

ただ、すぐにDISCONNECTが通知されてしまった。
私の予想では、続けてSEC_INFO_REQUESTが来るはずだったんだが・・・。

そして、その次のCONNECTでは、すぐにSEC_INFO_REQUESTが通知された。
んんん?

advertising start
BLE_GAP_EVT_CONNECTED
BLE_GAP_EVT_SEC_INFO_REQUEST

何度か試したが、これはnRF Master Control Panelアプリを使ったときの動作のようだ。
CONNECTする画面があるのだが、そこで「bond」を選択すると、bondingだけ行うようなのだ。
だから、すぐに切断しているのだろう。

その状態で接続しに行くと、SEC_INFO_REQUESTが来ているような気がするのだけど、そうじゃなくても元々CONNECTできるということもあり、なんだか訳がわからなくなってきた。
ここら辺は、資料からお勉強することになりそうだ。

2014/11/17

[nrf51]何故simple_uartは38400bps固定なんだろうか

nRF51822の動作をデバッガでブレークポイント使って止めながら見ていたのだが、そろそろ限界になってきた。
SDKがassertionを起こすのだ。
src/rem.cなるファイルだと言ってくるのだが、SDKの中にはなさそうなので、よくわからん。

それに、通信系のデバッグで片方が止まってしまうと、相手側も無応答とみなしてエラー扱いにするだろうから、ログを出しながら確認するのがよいだろう。
そういうわけで、デバッグ用にUARTを組み込むことにした。


ざっとSDKを見ると、simple_uart.hというものがあり、実装例もあったので、それを使うことにした。
configのパラメータでピン設定すると、あとはput/getすれば使えるというシンプルさ。

しかし・・・なぜか通信速度の設定などがない。
ソースを見ると、38400bpsで動くように実装されていた。
いくらシンプルとはいえ・・・。

動作クロックのつごうかとも思ったが、リファレンスマニュアルを見てもあまりそんな感じがしない。
嫌だったら自分で組めばいいやん、ということにはなるけど、でもこの実装になっているのは何か意図があるのか・・・。

気になるが、寝よう。