1 / 24612345...最後 »

Windows上のエディタ

Windows上でも、ずっとemacsを使ってきたが、ちょっと辛くなってきた。IME制御機能付きのWindows用emacsが手に入らなくなってきたからだ。

IME制御機能付きであれば、emacsのキー(デフォルトでCtrl-\, 私はカスタマイずしてCtrl-O)でIMEのOn/Offを切り替えることができるのだが、機能が無いとemacsのキーでは、emacs自身のかな漢字変換機能のOn/Offが行われ、IMEのOn/Offは「半角/全角」キーで行うことになる。日本語を入力しているとモードが混乱して極めて効率が悪い。
続きを読む… »

混ぜるな危険、取り扱い注意 武田邦彦

このところ、TBSの加計学園等の倒閣運動報道が酷く、聞くに堪えないので、朝からPCで虎ノ門ニュースを見るようになった。虎ノ門ニュースは、なかなか情報量が多い。他では得られないような情報をいろいろ得られる。

金曜日、武田邦彦、大高未貴の番組を見て、武田氏を見直した。武田氏といえば、他番組では、人の話に突拍子もない意見で反論したり、さらにそれを他の出演者に止められたりで、空気を読めず、極論に近いことを言う人という印象があったのだが、発言を中断されず、全部の話を聞けば、一理も二理もある意見、知見を語っていることがわかった。まるのまま信じはしないが、頭に留めておく価値は十分ある話ばかりである。
続きを読む… »

fusionPCBについて

仕事熱心なfusionPCBさんから、前の記事にコメントがついたので、fusionPCBについての意見を書いてみる。

fusionPCBは、中国の格安PCBサービスの先駆けで、私も使ったことある。5年前に記事も書いた。これこれ。 品質に問題は無く、価格も安かったのだが、elecrowが始めた基板の色変更無料の魅力が大きすぎてelecrowに移ってしまった。最初の基板は緑色で問題無いが、何種類も基板を作ると色分けできる意味は大きい。

その後も、時々、elecrowだけに頼るのもなんだから、たまにはfusionPCBも試そうと思うのだが、注文のページで送るファイルの種類や設計ルールを確認しようとして、情報が見つけられず、探すのも面倒になりelecrowに頼んでしまう。

改めて、https://fusionpcb.jphttps://www.seeedstudio.com/fusion.htmlを見直し、感想を書く。

  • seedstudio.comの方は、基板注文のページに”how to generete Gerber files”というリンクが張られ、必要な情報がわかりやすいのは良い。改善されている。
  • Eagle用のcamファイルが提供されているのも良い。 DRC(design rule check)用のファイルはどこ?
  • fusionpcb.jpのページから飛べる基板注文のページには、”how to generete Gerber files”相当のリンクが無い。

あと、twitterで報告される基板のトラブルを見てると、基板のE-Test通してないだろう と思われるケースが多々ある。自分がelecrowに作ってもらった基板の中にも、たまにある。elecrowのページを調べると 100% E-Testと書いてある。fusionPCBの方でも探してみたが、E-Testに関する記述が無い。今はE-Testをしないオプションが無いので、記述も無いのだと思うが、値段も極端に安くなったので、もしかしてE-Testを省いているのではないかと不安になる。この点も明記したほうが良いと思う。

追加! もう1件あった。OPLのページをfirefoxで見ると、javascriptのプログラムが終了しなくて、ブラウザが固まる。なんとかしてほしい。Edgeだと見れるが、かなり重い。

なぜOPLのページを見ているかは秘密。

あまり基板が安かったので

FusionPCBに対抗してだろうが、ElecrowがPCB5枚で$4.9で作れるというので、他の基板のついでに基板を作ってしまう。ものは、ADCに接続してアナログ値で複数のスイッチの状態を読み出すボード。他の装置のデモ用に欲しくて、ユニバーサル基板あたりで作るつもりだったが、$4.9なら費用的にかわらないし、楽に作れるし、断然きれい。

で、早速作り、テストプログラムで動作を確認。あまりノイズは乗らず、9個のスイッチの識別は、全く問題が無い。すぐにデモプログラムの作成に入れそうだ。

F-PLUG 再び

2年前に F-PLUGというBluetooth接続の電力計を導入し、部屋のエアコンの電力、周辺温度、湿度等を1分ごとに記録し、Linuxサーバに保存していた。Bluetooth接続をLinuxのrfcommコマンドでttyデバイスに変換し、sunagaeさんのpythonのプログラムでデータを取得している。 

ところが、rfcommのプロセスがよく止まる。 そのたびにrfcommを再起動(再実行?)させていたのだが、エアコンの電力消費状況も把握できたので、興味も薄れ、ほっぽらかしにしていた。

だんだん暖かくなり、今年はエアコンも新設したこともあり、興味が復活、ふたたび使いたくなってきた。しかし、rfcommを使うのは止めたい。 pythonを使えば、直接 Bluetooth機器とお話しできるっぽい、

まずは、pyBluezで、bluetoothデバイスのスキャン

import bluetooth

nearby_devices = bluetooth.discover_devices(lookup_names=True)
print("found %d devces" % len(nearby_devices))

for addr, name in nearby_devices:
    print(" %s - %s" % (addr, name))

デバイスのアドレス (‘B0:99:DE:AD:BE:EF” みたいなやつ)がわかれば、socketで接続できるらしい。

import socket

addr = "B0:99:DE:AD:BE:EF"
port = 1

sock = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_STREAM,
                     socket.BTPROTO_RFCOMM)
sock.connect((addr, port))

これを使ってpyFplugを改造し、直接データを取得できるようになった。 F-PLUGは 新しい方のエアコンに付け替えた。

可能ならF-PLUGを買い足そうと思ったんだが、調べると販売中止になっている。売れなかったということか。同じbluetooth接続の電力計 ラトックのREX-BTWATTCH1の方は、まだ買えそうだが、通信プロトコルの情報がみつからない。なんとかなるのであれば、他のエアコンや冷蔵庫のデータも取ってみたいところだが、残念だ。

テレビで自分の写真を見た

録画していたサイエンスZEROを見たらNHK学生ロボコン直前スペシャルで、森正弘先生がロボコンを思いついた時の話で、学生に乾電池1本で人が乗って動く車のレースをさせることを思いついた、と話されていて、そういうことしたよねぇと思っていたら、レース当日の写真が出て、自分が結構大きく映って驚いた。

いやぁ、懐かしいっすね。森先生のお元気な姿をみられてよかった。

バッテリー … 上がる 

昨日、テニススクールに行こうとしたら、車のドア(キーレス・エントリー)が開かない。キーの電池切れだろうと、手動で開けようとするが、なんか開かない。いろいろ頑張ったら、なんとか空いたので、乗り込みエンジンをかけるが、全く反応が無い。バッテリーが上がっているらしい。前日、車幅灯をつけっぱなしにしていた模様。いつもなら、警告音で気が付くのだが、荷物の積み下ろしで聞き逃したみたい。

保険のロードサービスにきてもらい、無事、エンジンがかかった。充電に1時間ほどエンジンをかけっぱなしにしておく必要があるらしい。

シン・ゴジラ

今頃、GEOでシン・ゴジラのBlueRayを借り見た。面白かった。充分リアルに感じられ、没入できた。

貸出期間が1週間だったので、2回見てみたが、2回目も新鮮な感覚でみることができた、というか1回では見切れない、聞き取り切れない。ということで、1度見た方も、もう一度見てみると、また面白いと思う。

エアコン購入

パソコン部屋用にエアコンを購入した。続きの部屋にエアコンはあるのだが、パソコン部屋の方に熱源が多く、どうしても暑くなってしまうのでエアコンの導入を考えていた。昨年購入するつもりだったのだが、時期を逃し、取付工事繁忙期に入ってしまい、購入を止めてしまったのだが、やっぱり暑かったので、今年は繁忙期に入る前に購入することにした。

物は価格.comで最安値帯のものから,三菱電機 霧ヶ峰 MSZ-GV2216-Wを選択。工事費込みで 9万円弱。配電盤までの電気工事や屋根置き金具も含まれているので、標準的な価格だと思う。

最安値のエアコンなので、あまり期待していなかったが、使用説明書を見ると目新しい機能がいくつかある。
列挙する。

  • ピークカット(電流)ボタン
  • 体感切入ボタン

ピークカットは、通常、最大消費電流15Aのところを11Aに制限する機能。あまりガンガン動いて欲しくない、と思うこともよくあるので、ちょうど良い気がする。

体感..というのは、風向・風速をコントロールして、体感温度はそのままに節電運転を行う機能だそうだ。効果の有無はやってみないとわからない。

ネット番組を見るようになった

ニュース女子問題をきっかけに、ネット番組をよく見るようになった。

今、コンスタントに見ているのは、以下の3つ。

ニュース女子は、前にも書いたが、番組のフォーマットが見やすいし、面白い。

虎ノ門ニュースは月金の朝8時からの2時間番組で、結構長いので、最初は月曜日の青山繁晴氏だけ見ていたのだが、他の曜日も見ると、こちらも結構情報量が多い。他では得られない情報がいろいろ得られる。ということで、ちょっとづつ見る時間が長くなっているところ。

報道特注(右)は、Youtubeにお勧めされて偶然見たのだが、ネットで人気の足立康史議員の話も面白いし、首になったTBSワシントン支局長 山口敬之の話もすごい。今回の北朝鮮危機に関する想定される事態の情報は、この人の話が別次元で詳細かつリアル。いまだに他で同様の話を聞かない。

あと、ゲーム実況の動画は、あいかわらず見ている。PUBGも最近見始めて面白いが、自分でやる気は起きない。

ゼルダ その後

ゼルダの伝説が楽しくて、GWはハイラルの大地を駆け巡っていた。祠を全部攻略した後、ガノン討伐をがんが得ていたのだが、ネットで調べても最後の1個がわからず、119個でゲームクリアとなった。マスターソードとハイラルの盾を早期に手に入れれば、もっと楽にゲームを進められるのではないかというアイデアが気になり、すぐに2回目を開始してしまった。

試した結果、ハイラルの盾は割と早く手に入るが、マスターソードはハート13個の壁が大きく、それなりにゲームを進め、祠を開けないと手に入らなかった。その後、ゲームを楽に進めるに、4紳獣も解放、塔も全てクリアし地図をすべて開けたところで、すこし面倒になり、やっとゼルダから解放された感じ。

まぁでも、ハイラルの大地を駆け巡り、服のレベル上げなどするのは楽しいので、ちょいちょいやってしまいそうだ。

あと、ゼルダの伝説に対する希望

  • 塔をクリアしなとも、自分が通過した周辺の地図は表示して欲しい
  • ゲームをやり込み、長くゲームで遊ぼうとすると、ゼルダ姫をハイラル城で待たせることになり、心苦しい。ゼルダ姫が解放された状態でやりこめるようになると、さらに嬉しいのではなかろうか。

音楽の再生には何bit必要?

ESP32のDACに音を出力する場合、8bitというのはどんなもんなんだろう。 bit数が足りないために音声が、まともに聞こえないというのでは困るなぁと思い、実験してみた。

pythonのwavライブラリを使うとwavファイルの操作ができる。これを使って、wavファイルのデータを指定したbit数まで落とすプログラムを作成した。処理に結構時間が、かかるので10秒だけ出力する。

結果、私のPCの再生環境では8bitと12bitの聞き分けができないことが判明。8bitからbit数を落として行ってもホワイトノイズが増えていくだけで、あまり問題無く聞ける。1bitだとノイズがかなり大きいが、それでも曲は判別可能。予想外の結果だった。

変換した結果を以下に示す。元の曲は魔王魂さんのフリー歌もの素材「桜日和」

1bitの音源:(音量注意)

続きを読む… »

ESP32のI2S+DAC出力成功

ESP32_MP3_Decoderのプログラムを調べ、遂にはESP32のI2S+DACから、音声を出力することができた。嬉しい。

Tw_Mhageさんの記事:ESP32でBluetoothイヤホンを作ってみた – Qiitaに刺激を受け、ESP-IDF添付のサンプルプログラムを改造し、Bluetooth Speakerのデモプログラムを作成、公開している。Bluetoothの中身に疎いので、最初苦戦したが、iPhoneに接続し音が出せるようになった。回路は、ものすごく簡単なので、ESP32のモジュールを持っている人には、一度試してもらいたい。

ESP32_MP3_Decorderを動かしてみた。

ESP32のI2Sで音声出力の実験をしているが、なかなかうまくいかない。サンプルプログラムを元にプログラミング・ガイドを見ながらDACに音声を出力させようとしているのだが、うまくいかない。部分的にちゃんと波形は出力されているのだが、うまくつながらない。周期も変。

資料も少ないし、動いたという例も無いと思っていたところESP32_MP3_Decoderの存在を知る。試してみると、いろいろ問題は、ありながら、断続的に音が出た。MP3のデコードも自前でやっているらしい。


続きを読む… »

intel hexファイルのマージ

PIC32MXのプログラムを開発中、2つのintel hexファイル(bootloaderとfirmware本体)を1度に書き込みたいと思ったのだが、pic32progではできない。objcopyあたりでmergeできるか調べるが,無理そう。hexファイルのmergeならpythonで自分で書いても簡単そうなので書き始めるが、念のため python + intel hexで検索したら、ライブラリ、その名もintelhexがあった。ドキュメントによるとmerge機能まである。サンプルを見ながらプログラムを書き、あっさり動作。凄いね。世の中は。

import sys
from intelhex import IntelHex

usage = "%s hex_infile1 hex_infile2 hex_outfile" % sys.argv[0]
if len(sys.argv) != 4:
    print(usage)
    sys.exit(1)

infile1, infile2,outfile  = sys.argv[1:]

ih1 = IntelHex(infile1)
ih2 = IntelHex(infile2)
ih1.merge(ih2, overlap='ignore')
ih1.write_hex_file(outfile)

ドキュメントによると、ライブラリにhexmerge.pyというユーティリティが付属し、ライブラリと一緒にインストールされるとあったが、わたしの環境では見付らない。これが使えれば、プログラムを書く必要すら無い。

1 / 24612345...最後 »