2017年03月16日

ESP32-DevKitC

esp32.jpg

秋月電子の前を通ったら、ESP-32の開発ボードが売られているのが目に留まり、買ってみました。

ESP32−DevKitC ESP−WROOM−32開発ボード: 無線、高周波関連商品 秋月電子通商 電子部品 ネット通販

なんと、たまたま発売日だったようです。
モジュール単体が700円なので、ボードで1480円というのは安いですね。
USBシリアルがオンボードで載っているので、便利そうです。
esp32-2.jpg

このモジュール、電力食いらしいですし、パワフルすぎて扱いに困る感じもしますが、おいおい試してみたいと思います。

とりあえず、ArduinoでのLチカまでは確認してみました。
ツール類のインストール方法はこちらにあります。

GitHub - espressif/arduino-esp32: Arduino core for the ESP32

私はWindows7で試しましたので、Arduino IDE 1.8.1、Gitをインストールしました。
ESP32用の開発ツールはArduinoのボードマネージャを使わずにダウンロードする手順になっています。
Gitで基本ツールをクローンした後、さらに「Get」コマンドを実行すると必要なファイルがダウンロードされます。
(手順は上記リンクを確認)

他に、USBシリアルのドライバのインストールが必要でした。

USB - UART ブリッジ VCP ドライバ|Silicon Labs

シリアルポートを選択し、ボードはボードメニューから「ESP32 Dev Module」を選択します。

スケッチ例→ESP32→AnalogOut→LEDCSoftwareFadeを試してみました。
LEDはGPIO5に接続します。
esp32-3.jpg

写真では抵抗入りLEDを使っていますので、I/Oピンに直結しています。
Arduinoのダウンロードボタンを押すだけで普通にスケッチが書き込まれ、実行されました。
使い勝手は通常のArduinoボードと全く同じです。
posted by boochow at 08:44| Comment(0) | ESP8266/ESP32 | このブログの読者になる | 更新情報をチェックする

2017年03月12日

Dave Smith Instruments Mopho Keyboardにノイズ対策コンデンサを付ける改造

私が持っているシンセサイザに米国Dave Smith InstrumentsのMopho Keyboardがあります。
こんなのです。

モノラルのアナログシンセで、いい音です。
私が持っているのはキーボード一体型ですが、音源モジュール版もあります。

ネットを見ていたら、たまたまこのMophoの音質を改善するという記事を見つけました。

The Mopho's pulse wave... - Gearslutz Pro Audio Community

MUFF WIGGLER :: View topic - Got a Mopho Keyboard and want it to sound better?

改善される問題点は、波形がパルス波の場合に音質がノイジーで、特にパルス幅の設定が最大値のときにノイズがひどい、というものです。
私のMopho Keyboardでも確かに同様の現象が起きていました。
パルス幅が99のとき、かなりノイジーです。

解決策としてDACの電源ラインに10μFのコンデンサを付ける方法が紹介されています。
DACの基準電圧に電源ラインからのノイズが載っているので、その対策だそうです。
この対策でパルス波の音質自体も良くなるということなので、やってみることにしました。

コンデンサはR71に並列に取り付けます。
R71の場所はメインボードほぼ中央の下部のほう、矢印の位置です。
r71.jpg

取り付けるコンデンサは、上記の記事ではタンタルコンデンサを使っていますが、電解コンデンサでもいいそうです。
You'll need one 10uF, 16V tantalum capacitor. You can use a decent quality electrolytic if you wish, and in that case, a 10uF, 25V will suffice.


せっかく手間をかけるので、最高級のオーディオ用電解コンデンサを使うことにしました。
最高級といっても、1個41円でしたが・・・。
nichicon-muse-kz.jpg

ニチコンの「Muse KZ」シリーズです。
秋葉原にある海神無線で買いました。
10uFのものは耐圧が100Vのものしかなかったので、やや大きめです。

これをこの位置に取り付けます。
電解コンデンサは極性がありますが、記事によると「キーボード正面側から見て左がプラス。R71の「1」に近いほうがマイナス」ということです。

r71-2.jpg


取り付けた様子です。
だいぶ大きいので、運搬などで振動を加えると取れてしまう可能性が高いです。
私の場合は、自宅で使うだけなのであまり心配していませんが。

r71-3.jpg


取り付けた後の音です。
私のMopho Keyboardはパルス幅が99でも音は出ますが、ノイズは乗らなくなりました。

posted by boochow at 15:50| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2017年02月26日

koshianでLチカを試してみた

koshian.jpg

Bluetooth Low Energyの通信を簡単に試すことができる「koshian」というボードがあります。
これは、ユカイ工学の「konashi」という同じくBLEのボードの互換品(一部非互換あり)です。

本家であるkonashiが注目を集めていたのは、ESP8266が流行るよりも前で、2013年ごろからです。
konashiというより、BLE自体が注目を集めていた時期でもあります。

スマホ連携ガジェットを作ろう! - 第2回 konashiとは何か?スマホの入出力を無線で拡張:ITpro

その後、konashiはkoshianを取り込んで、現在はkonashiはkoshianボードを使う形態に変わっているようです。

konashi(こなし)メジャーアップデート「konashi2.0 」を発表 | ユカイ工学

この「koshian」ボードですが、もともと980円と安価な上に、一時期、販売元のMPressionがキャンペーン(確かオンラインストアに会員登録すると無料でもらえた)をしていたこともあり、私の手元には3枚もありました。

使わずにしまってあったのですが、BLEの勉強がてら、試しに使ってみることにしました。

まずはLチカから、ですが、これはMPressionのサイトにチュートリアルがあります。

ハードウェアのHello World !? koshianつかって『まずはLチカ 』 | マクニカオンラインストア

このチュートリアルでkoshianにつないだLEDをiPhoneやiPadから点滅させることはできるのですが、BLEを使っているのかkoshian.jsというアプリ(のAPI)を使っているのか、ちょっと判然としないところはあります。
JavaScriptでプログラムが書けて、敷居が低くていいのですが、逆に組み込みシステムをある程度知っている人にとっては、隔靴掻痒という感じがあると思います。

実際には、このチュートリアルで動いているシステムの全体像は下の図のようになっています。

koshian-arch.jpg


ボード側では、I/Oピン等を制御するAPIをBLEで公開するファームウェアが動作しており、iPhone/iPad側ではこのファームウェアのAPIをJavaScriptから叩く機能を持つアプリを動作させています。
このアプリによって、ユーザのJavaScriptプログラムは、koshianのファームウェアへの命令に変換されているわけです。

Lチカ程度であれば、わざわざJavaScriptを叩かなくても、ボードのAPIを直接叩けば良さそうです。
ただ、このAPIはBLEの規定に則ってGATT(Generic Attributes)というフォーマットで提供されています。
GATTの部分を隠蔽して、ボードのI/Oに直接アクセスできるアプリとして、ユカイ工学の「Inspector」があります。

konashi inspectorを App Store で

konashi inspector - Google Play の Android アプリ

このアプリを使えば、プラグラムを書かずにI/Oの値を直接設定できます。
その代わり、たとえば0.5秒おきにオン・オフする、といったことはできません。

GATTを直接叩きたければ、Mac用の無料ツールで「LightBlue」というものがあります。
私のMacbook AirはLate2010モデルなのでBLE非対応なのですが、バッファローのUSB BLEドングル「BSBT4D09BK」を挿したら、特にドライバ等を導入しなくてもBLE対応になりました。

LightBlue を Mac App Store で

GATT自体は、それほど難しいものではありません。
デバイスが提供する「サービス」の下に、複数の「characteristic」があり、characteristicの値を読み書きすることでデバイスの動作を制御します。
たとえばkonashiなら、I/Oを制御するという「サービス」の下に、I/Oピンが入力か出力かを設定する「characteristic」や、出力ピンならHighなのかLowなのかを設定する「characteristic」があります。
characteristicが、制御レジスタみたいなイメージです。

以前紹介したPythonistaでも、このあたりの制御ができるはずなのですが、ちょっと試したところではまだkoshianを制御するところまでは至りませんでした。


さて、ページの冒頭に載せた写真は、100円ショップ・ダイソーで購入したLEDランプに、koshianと赤・緑の2つのLEDを仕込んだものです。
ランプは2つ入りで100円、1つ50円です。

daiso.jpg


底面にスライドスイッチがあります。電池はCR2032です。

daiso2.jpg


ケースははめ込んであるだけなので、細いドライバなどでこじれば外れます。
中身は白色LED。LEDのピンの一方はスライドスイッチに直付けされています。
もう一方のピンは、ケースを突き抜けたところで曲げられて、電池と接触する電極として使われています。

daiso3.jpg


スイッチは活かして、ピンヘッダをつけたkoshianに赤と緑のLEDを直付けしたものを組み込みました。
PIO4に赤、PIO5に緑のLEDを接続しています。
LEDはどちらも高輝度タイプです。抵抗はつけていません。
また、LEDには光拡散用のキャップをかぶせています。
このへんのパーツは秋月電子で買ったものです。
daiso4.jpg


元通りケースをかぶせるとこんな感じです。
BLEリモコンで2色オンオフができるLEDランプができました。
daiso5.jpg


さて、そんなkoshianですが、今はボード単体では若干入手難のようです。
マクニカのオンラインストアでも販売されていないようです。
また、このボードの心臓部はBroadcom社のBCM20737Sというチップだったのですが、BroadcomのIoTデバイス事業は既にCypress社に売却されています。
Cypress社では、BCM20737SをCYW20737Sという型番で出していますので、ディスコンというわけではなさそうです。

BLEではNordic社のnRFシリーズがメジャーになってきており、このチップを使ったkonashiと似た感じのモジュールがBraveridge社から販売されています。

BVMCN5103-CEAA-BK | Braveridge

まあこちらは20個セットですし、ホビイスト向けではなさそうですが。
posted by boochow at 15:23| Comment(0) | konashi/koshian | このブログの読者になる | 更新情報をチェックする

2017年02月25日

Volca Beats Snare Mod(改造)その2

beats.jpg


一年あまり前に、Volca Beatsのスネアの改造を行いました。

Volca Beats Snare Mod(改造): 楽しくやろう。

その続編、というか、更なる検討を行っているページを見つけたので、私も試してみました。

Korg Volca Beats Snare

この方はVolca Beatsのスネア部分の回路図を起こした上で、考察を加えて改造を行っています。

前回行った改造は、取り付けられていないC78を追加するというものでした。
今回の改造は、すでに取り付けられているR134とR183の抵抗を別の値へ変更するものです。
R134の効果については、前回の改造の元ネタのビデオでも紹介されていました。

・R134を10K→1.5K → ノイズ成分の音量増大+明るさ増大
・R183を2.2K→10K → ピッチを低く(250〜570Hz → 160〜240Hz)

という効果があります。

beats2.jpg


こちらが、前回の改造の状態の音。

modified1.wav

そして、こちらが今回の改造の後の音です。

modified2.wav

どちらもピッチは一番低くしてあります。
変化の内容は上記の通りですが、音程成分とノイズ成分の一体感が増している感じがします。


改造の効果はいい感じなのですが、作業はちょっと大変でした。
交換するチップ抵抗のサイズは、前回と同じ1.6mm×0.8mmですが、場所が狭いし、すでに取り付けられている部品を取り外さなければなりません。

R134は周りをチップ部品に囲まれています。奥のほうの「103」と書かれているのがR134です。
r134.jpg


R183(「222」と書かれているもの)は周囲にパーツが少ないので、比較的外しやすそうです。
r183.jpg


チップ部品の取り外し方は、こんなビデオがありました。

追いハンダをして、チップの両側の端子を一度に熱することで外しています。
が、狭い場所だとこの手を使うのは苦しいです。

それでも、R183はコテを寝かせてチップの両端を一度に熱することで、割と簡単に外せました。
r183-2.jpg


跡地に新しいチップ抵抗をつけて終わりです。
r183-3.jpg


R134のほうは、試行錯誤しているうちに偶然外すことができました。
r134-2.jpg


こちらが新しく付けるチップ抵抗です。上下に写っているのはピンセットです。
r134-3.jpg


なんとか取り付けることができました。
r134-4.jpg


この改造は、適切な工具と、視力と器用さが要求されます。
チップ抵抗は、AmazonでHiletGoという業者から、25種類×20個のチップ抵抗詰め合わせを送料込み260円で購入できます。
商品名は「HiLetgo 0603 SMD 抵抗バッグ 620R-12K 5% 25種類 各20pcs 合計500pcs [並行輸入品] 」です。

最後に、ほかのパートと一緒に鳴らしてみたものを載せておきます。

sample.wav

以前はスネアの音が高くて、「どんだけ小さいスネアなんだよ!」と言いたくなりましたが、これならOKだと思います。
posted by boochow at 01:13| Comment(0) | Synthesizer | このブログの読者になる | 更新情報をチェックする

2016年11月20日

iOSで動くPython「Pythonista3」を使ってみた

iPhoneやiPadの上で動作する「Pythonista」というアプリがあります。
これはスクリプト言語「Python」をiOSの上に移植したもの・・・と思っていたのですが、実はよくできたエディタ、デバッガ、iOSのためのライブラリなどが合わさったものです。
評判が良いらしいので、なんとなく入手してみました。

iOS上で動作する革命的ものづくり環境「Pythonista 3」の魅力をとくと語る

Pythonはver.2系とver.3系があり、互換性が完全ではないので、過去の資産を重視するならver.2、より高機能・洗練を重視するならver.3系になります。
今回はver.3系である「Pythonista 3」を購入しました(1200円です)。

付属のサンプルを動かしてみると、Pythonそのものの資産の豊富さと、Pythonistaというアプリの出来の良さに驚きました。
こんなスクリプトで
pythonista02.jpg

こんなグラフが描けてしまいます。
pythonista03.jpg

ドキュメントとしては「The Python Tutorial − Python 3.5.2 documentation」が内蔵されています。
また、それとは別にゲームを作るチュートリアルが付属しており、PythonistaがiOS用に用意したライブラリの能力を垣間見ることができます。
pythonista04.jpg


Pythonistaで用意されているライブラリはこちらに一覧があります。

Pythonista Modules − Pythonista Documentation

ゲームやアニメーションを作成できる「scene」、iOSネイティブのGUIをデザインできる「ui」のほか、Bluetooth LEのモジュール「cb」もあります。
これを使って、Genuino101と通信をさせている方を見つけましたので、私も試してみました。

iPad + Pythonista(iOSで動くPython) + BLEで、Genuino101のLチカをしてみた。 - robo8080のブログ
Genuino101BlinkLED.py ・ GitHub

スクリプトはver.2で書かれているらしく、print '..'をprint('..')に修正する必要がありましたが、あとは問題なく動作しました。

pythonista01.jpg


Pythonistaのコミュニティもあります。(当然英語ですが)

Pythonista | omz:forum

全般的に、IDEとしてよく出来ていますし、電車の中で使えるプログラミング環境としてはプチコン以上かもしれません。

posted by boochow at 13:41| Comment(0) | Pythonista | このブログの読者になる | 更新情報をチェックする
人気記事