Knitting Academy

編み物と音楽を中心とした趣味の記録です。

osxでAVRをアセンブリ言語を使って開発する

2019-03-24 22:31:57 | Weblog

タイトル通りですが、条件が細かいですね。でも、需要がどこかにあるかと思うのと、備忘録として記しておく。これからアセンブリ言語を勉強しようと思って開発環境を構築している身なので間違いもあるかと思いますが、ご容赦のほどを。

先に結論から書いておくと、AVR本家のmicrochip社が提供している開発環境、MPLAB X IDE (v5.0以降でしかAVRに対応してないみたい)と、Dec-18-2018にリリースされたAVR用のCコンパイラ、XC8 (v2.05)の「おまけ」っぽく付いてくるようになったアセンブラ、avrasm2を組み合わせると、macでもmicrochip純正のみで、かつ無償でタイトルのような開発環境が出来るようです。リリースノートの3章を参照。「osx AVR assembler」で検索しても中々出てこなかったので、ご存じない方も多いかと思い書いときます。みんな知ってたら余計な情報だ。ごめん。

XC8 (v2.05)をインストールしても、MPLAB X IDEにavrasm2が自動認識される訳ではないので、ちょっと古いですがこちらのマニュアルのp.45、「3.7 言語ツールのパスの指定」でも参考に対応してください。

 

さて、AVRといえばArduinoに載っているマイコンであることで有名(当然、この界隈の人ならば、という条件付き)。開発環境であるArduino IDEはosx版が無償で手に入るし、その中でインラインアセンブラってのが使えて、一部だけ(全部も?)アセンブリ言語で記述することも可能らしい。これでもいいんだけど、せっかくならmicrochip純正で揃えたら面倒事も減るかと考えた次第。

実は純正以外にもosx用のAVRアセンブラにはavra (v1.3.0)っていうのとAvr CrossPackがあるんですが、いかんせん古い。avra (v1.3.0)は2010年、CrossPackは2013年から開発が止まってます。avraの方は1ヶ月弱前に開発を引き継いだ人がv1.4.0をリリースしてますが、色々いじってもMakeが通らず挫折。なんで?

ちなみにMPLAB X IDEは、遥か昔に人気のあった純正プログラマ(書き込み装置)Atmel社製 avrisp mkIIをサポートしてないです(自分は持ってる)。完全にmicrochip社だけで揃えたかったら、最近のプログラマを買いましょう。自分は経済的理由から新規購入は諦め、MPLAB X IDEで生成したhexファイルをavrisp mkIIとavrdudeという書き込みプログラム(Arduino IDEをインストールしている人はavrdudeも自然とインストールされてます)で書き込む予定。avrdudeだけインストールしたい人は調べてください。自分はHomeBrewという管理ソフトを使って最新版をインストールしています。avrdudeの使い方は既に色々な方が説明されているので省きます。


macOS High Sierraのクリーンインストール

2017-11-19 04:19:03 | Weblog

遅ればせながら2週間くらい前にOSをSierraからHigh Sierraにバージョンアップしたのだが、それ以来ちょっと具合がよろしくない。症状としては、

1.バックアップに失敗する。macを再起動したら改善した。

2.スリープから復帰するのが遅いときがあるのと、9割くらいの確率でスリープ解除したときに一瞬画面が乱れる。再起動、SCMおよびNVRAMのクリアを試すが改善せず。Apple Diagnosticsでも問題なしと出る。

気持ち悪いので、High Sierraをクリーンインストールをすることにした。結果を先に書くと、問題は解決した。以下、うろ覚えだが手順を。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

バックアップの存在を確認。必要ならバックアップを取っておく。

command + R を押しながら起動。内蔵の macOS 復元システムが立ち上がる。

内蔵SSDを消去。その際、フォーマットは暗号化APFSにした。パスワードを設定。2週間前のバージョンのときにこれに相当する操作をした記憶がない。ここらへんは、きっちりしていて良い傾向かと。念のため、First Aidも。

 

High Sierraの再インストール。途中、上で設定したパスワードを要求された。

 

しばらく待つと、特に問題なく再インストール完了。自動的に再起動。

バックアップのデータを移行開始。バックアップにパスワードを掛けていた場合、掛けたアカウントのログインパスワードを要求された。今後バックデータへのアクセスには、そのアカウントのIDとパスワードが必要らしい。

移行終了まで待って完了。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

スリープ解除の時に一瞬入るモアレみたいな出なくなりました。問題解決した模様。


スピーカー内蔵小型ベースアンプの製作

2017-11-17 15:40:33 | Weblog

これまでにベース用のアンプを製作したりしてきたのですが、出力はヘッドホンにしてました。スピーカーだと近所迷惑かな、と。しかしうまく説明できないんですが、思っていた以上にヘッドホンで聞いて練習するのって難しいです。グルーヴ感(?)みたいなものを感じにくいし、粗ばかり目立つし、耳は湿気を帯びてきて不快だし。加えてヘッドホンのコードが邪魔。とにかく弾いてて楽しくないんです。結局使わずにホコリを被ることに。

そこで、原理的にスピーカーのサイズが小さくなると低音は出なくなるらしいのだけれど、音質は犠牲にしてでもサイズを片手に載るくらい小さくし、普段使い可能なスピーカー内蔵アンプを作ることにしました。スモーキーアンプSAT-5 BASSという市販品もあるんですが、まあ趣味なので。

さるももさんのブログを参考にしています。ただし、プリアンプにはスペースの関係上、BB PreampではなくSuper Hard Onを使っています。さらにSuper Hard Onはlead_and_guitarさんのブログにある改造を施しました。回路的には改造Super Hard Onの出力を10kAカーブのボリュームを挟んでTA7368につないだだけです。正面から見て右がそのボリューム。左はSuper Hard Onの10kBのボリュームです。いわゆるベースアンプのGainに相当する働きをしてくれるかと思ったのですが、あまり音に影響はありませんでした。しかし、ギターをつないだ時には左右のボリュームの組み合わせで音質が変わる(若干歪む)ので、Gainの抵抗値も固定せず外に出してあります。

DSC_1353

DSC_1357

スピーカーは今話題の(?)秋月電子で売ってる広帯域スピーカー(3インチ口径(77ミリ)8Ω)です。ネット情報ではコスパの良さは随一とのこと。私はちょっと裏側が錆びているからということで、店頭で1個150円で買いました。ただ、スペックを見ると下は90Hzまでとちょっと心もとない。でも贅沢は言いません。取り敢えず音が出ればいいです。

外身ですが、箱はダイソーのファンシーグッズ売り場にあった白木の抽斗(8cm角くらい)に、これまたダイソーの水性ニス(メイプル色)を塗ったものです。2回塗って乾かし、細かい紙やすりで表面を均し、仕上げにもう1回塗りました。裏板ははヒノキ板を組み合わせて作りました。

肝心の音ですが、音量を上げると音が割れます。これはもうスピーカーの限界っぽいので仕方ないようです。割れない範囲でも充分練習は可能なので、満足しています。そもそもあまり音量を上げたら近所迷惑ですからね。片手で持ち運べて、電源とベースからのシールドをつなげば弾けるのは、快適です。


Roland DAC-15B の改造 その2

2016-08-06 09:48:40 | Weblog

前記事の続きです。次に大出力化を目指しました。

回路図を見て、プリアンプ部分はそのままに、パワーアンプに相当する素子を最近はやりの高出力、高効率なデジタルアンプに置き換え、内蔵してやろうと画策していたわけですが、モノラルで100W以上となるとキットはあまり販売していなくて、有っても電源部分が面倒臭い。排熱の設計も自信がないということで止めました。

結局、PHIL JONES BASS(PJB)のD-400を衝動買いしてしまいました。。8Ω/200W(4Ω/350W)と交換したスピーカーBL10-200Xにもぴったりの出力。重量1.3 kgのコンパクトサイズ。定評あるPJBブランド。ついついポチってしまいましたよ。

D-400の出力はspekonジャックになってますので、これに合わせてDAC-15B側を若干改造しました。裏板に24 mmのドリル刃(木工用、新規購入、1,500円くらい)で穴を開け、ここにspekonジャック、NEUTRIK社のNL4MPを取り付けます。穴あけ位置は注意が必要です。あまり上の方に付けると裏板が嵌らなくなります。よく考えてからにしましょう。出来上がり、若干右下がり気味に曲がって付いてますが、ご愛嬌。これとスピーカーの端子を内部で繋ぎます。私はCANARE社の4S8を使いました。

DSC_1170

上のアンプ部のスピーカー出力末端には、spekonプラグ(NEUTRIK社のNL4FX)を付けました。 これでDAC-15Bとしても使えます。

DSC_1171

DSC_1174

これで出力200Wクラスのシステムが出来上がりました。近所迷惑なのでもちろん全開にしたことはありませんが、小音量でも十分その実力を実感できます。上手く言えませんが、鳴りが違う感じです。ちょっと上手くなった気すらします。練習が楽しくなりますね。


Roland DAC-15B の改造 その1

2016-08-06 08:44:36 | Weblog

しばらく前の話ですが、Rolandのベースアンプ、DAC-15Bの改造を行いましたので、レポートします。

DAD-15B、古いですね。30年くらい前に買いました。でも、まだ中古品がヤフオクとかでは安値で出回っているようです。さすがはRoland。作りは堅牢なようです。とはいえ、ジャンク品扱いですね。大きさの参考のため、ベースも一緒に写してます。

DSC_1168

うちの個体も、ハム音がしたり、INPUTジャックが壊れたりと問題を抱え、あまり使わなくなっていました。自前でヘッドホン用のアンプを作ったりもしたのですが(過去記事参照)、あまり気に入らず、これもまた使わなくなっていました。アンプを通さず、生音で練習してたのですが、やはりアンプを通した時とは音の出方、特にミュートの効果とかが違うので、スタジオで音を出すと普段の練習との違いに驚かされ、慣れるまでに時間がかかっていました。

新しいコンボのアンプに買い替えても良いのですが、見た目が気に入っているし、何となく捨てるのももったいない。ということで、修理&改造することにしました。まずは回路図を手に入れます。ネットで「DAC-15B schematic」とかで調べたら簡単に手に入ったので、これを一応ダウンロードしておきます。

まずは致命的なINPUTジャックの破損。これは同一部品は手に入りそうにありませんでしたので取り外し、Switchcraft社製のジャックに付け替えました。

次にハム音ですが、原因はおそらく電源の平滑コンデンサの容量抜けでしょうということで取り替えました。電解コンデンサなので、極性があります。取り付けるときは気を付けましょう。これでハム音は消えました。また、その他の信号系の電解コンデンサもさすがに寿命だろうということで、ついでに全て同容量、同耐圧のものに交換しました。私はニチコンのオーディオ用無極性電解コンデンサ(ESシリーズ)を使いました。緑色で格好いいです(写真なし)。

最後にスピーカーですが、以前amazonのセール時に買ったCELESTION社製のBL10-200Xというモデルを付けました(今、メーカーのHPを見たらリストから無くなってました。製造終了かも)。口径10インチ、8オームで耐圧200Wです。5千円前後で買った気がします。特にこれが良かったというわけではないのですが、元から付いてる謎のスピーカーよりはマシ、くらいのつもりで。

thumb_IMG_0096_1024

スピーカーが良くなった分、少しだけ音に厚みが出た気がします。でも、いまいちパワー不足というか、迫力に欠けます。もうちょっと力強くスピーカーをドライブして欲しいな、と思いました。

→その2に続く。


MacBook Pro Mid2012 13"のMagSafe DC-in Boardの交換

2016-07-25 15:04:05 | Weblog

昨年末、それまで使用していたMacBook Pro 13" Mid2012(以下、MBP)のハードディスクがクラッシュし、散々な目にあった。幸い「EaseUS Data Recovery Wizard For Mac」というソフトを購入し、データの救出には粗方成功した。ついでにハードディスクをSSDに換装したおかげで動作も速くなり、トラブル前よりもかえって快適なMac生活を送っていた。

しかし、しばらくして様子がおかしいことに気付く。バッテリーが充電されない。つまり、通電はしているので使用可能ではあるが、充電できないので充電割合が日ごとに下がっていく。半年以上経ったら、自然放電で残量は12%まで下がった。そろそろ諦めて修理に出すか。

調べてみると、正規の修理代金は結構高い。昨年末に慌ててMacBook Early2015(以下、MB)も買ってしまっているので、今更4年も前のコンピュータにお金をかけるのは避けたい。しかし、捨ててしまえない理由も幾つかあった。

1.MBPは当時としては高速なCPUと大容量のRAMを積んでいるので、今でも一般的な用途においては十分な性能。

2.すでにデータ救出とSSD換装に投資してしまっているので、それがもったいない。

3.新しいMBには光学ドライブがないので、MBPがなくなると外付けドライブを買わなければならない。

4.新しいMBにはUSB typeC(しかも、たった1個)しか付いていないので、これまでのUSB機器を使うには変換コネクタも買わなければならない。

MBPを据え置き型として使うという手もあったが、せっかくモバイルなのに、ちょっと移動するのにもシステム終了・再起動するのが馬鹿馬鹿しい。しかし、修理代金は惜しい。

 

仕方ない。自分で直しますか。

 

いろいろ検索してみると、SMCをリセットしろだの、電源部分(当時のMBPはMagSafeという規格を採用している)の接点を掃除しろなどと出てくるが、もちろんそんなのは実行済み。そして、全く効果なし。

当初、MagSafeのLEDが全く点灯していないように見えていた。しかし、暗闇で見ると、非常に微かにだが緑色にLEDが点灯しているのに気が付いた。これが意外なことに手掛かりとなった。

言語を英語に広げ、「MagSafe dim green LED」で検索したところ、日本語だけの検索結果とは異なり、海外のコミュニティサイトなどにはかなりの量の情報があった。その中で、この現象はバッテリー、ロジックボード、そしてMagSafe DC-in Boardというパーツの異常・故障が原因である可能性が高いとのこと。まあ、当たり前か。

自分の場合、システムプロファイラで見る限りバッテリーはまだ寿命を迎えてはいないようだった。ロジックボードの電源周りの可能性もあるが、交換するには如何せん値段が高過ぎる。それくらいなら直さないよ。

そして、最後の望みであるMagSafe DC-in Board。こいつは位置的にはロジックボードとAC/DCアダプターの仲立ちをしていている。接続端子のところに磁石を噛ませていて、電気ポットみたいにいざという時に外れて安全を確保するだけではなく、AC/DCアダプターの容量といったものを識別したりしたりする役割もあるようだ。値段は、まあまあ安い。国内で買うと4000から5000円くらい。自分はeBayで買った。到着までに時間が掛かったが、輸送費込みで3000円をちょっと切るくらい。

IFIXITを見ながらパーツを交換。ロジックボードを外さないといけないので手順は多く、結構面倒臭い。特にkeyboard ribbon cable取付時はイライラする。自分は比較的手先は器用な方だが、これは流石にキレそうになる。精神状態が良い時を選ぶことをお勧めしたい。

元通り組み立てて電源を接続すると、LEDが明るく緑色に点灯した後、充電中を表すオレンジ色に切り替わった。OSを起動してみると、きちんと充電が始まっていることがわかった。めでたく修理完了。数時間後には満充電に。

実はどこのサイトでも何故か「MagSafe DC-in Boardを交換したら直った」と明言はしていなかったので、結果を見るまでは正直ヒヤヒヤものだった。しかし、まあ3000円未満だし、挑戦してみるのも良いのでは?

実際この方法で直った実例もあるのを報告する(特に日本国内)という意味で、今回まとめてみた。正直、これで直らないとロジックボード交換なんでしょうが、予算的に考えて、自分ならやらない。新しいのを買う資金にしますよ。


DT 990 PRO購入とヘッドホンアンプ(ベース入力あり)の製作

2014-01-12 19:38:44 | Weblog

昨年の話になりますが、Beyerdynamicのヘッドホン、DT 990 PROを買ってみました。ネット上では実売2万円以下のヘッドホンとしては結構評価の高い製品のようです。それまでAudio-technicaのATH-A900というのを使っていたのですが、ちょっと低音が物足りない感じ。あと、ATH-A900は密閉型、DT 900 PROは開放型なので、その違いを聴き較べてみたかったというのもあります。結果的には当たりの買い物でした。開放型にも関わらず低音もしっかり出ていて、かと言って極端にバランスが悪いということもありません。馬鹿にされがちではありますが、私はドンシャリ系の音が好きなのです。

さて、このDT 990 PROはインピーダンスが250Ωと高めです。この値が高いとiPodなどの携帯プレーヤーでは駆動力が小さいため、このヘッドホンの性能を十分に発揮させることが出来ません。そこで、ヘッドホンアンプを作ることにしました。以下、その備忘録です。実は以前にも同じようなものを作ったことがあるのですが、何ぶんにも素人が理屈も分からず他人様のサイトに発表されている回路図を、そのまま全部ならともかく部分部分寄せ集めて作るので、ちょっとおかしなものになっていた感があります(一応、音は出ますが)。今回は勉強も兼ねて一から設計してみました。結果としてきちんと綺麗に音が出ていますし、出来上がりに問題は無いのではないかと思います。

ヘッドホンアンプはChu Moy式もしくはその亜種を筆頭に多くの方が自作され、ウェブ上に発表されていますが、ベースやギターなどの入力を備えたものを発表されている方はあまり多くありません。余計な機能を付けなければ良いのでは、と言われそうですが、せっかく作るのなら耳コピとかにも使えた方が便利ですし、別々に作るのは邪魔だし面倒くさいというのもあります。

音源をミックスするためには加算回路が必要となり、必然的に反転増幅回路を用いる事になるのですが、多くの方は非反転型を採用しています。何故なのかはっきりとは分かりませんが、反転型では入力抵抗の値をある程度上げてやらないと入力コンデンサとハイパスフィルタを形成した際、カットオフ周波数が可聴域に入ってしまい、低音側の再現性が劣化する。しかし、音質のためには入力抵抗を下げたい(?)、というジレンマがあるそうです。また、位相を反転させたまま出力するのは、たとえ音に影響は無いと分かっていても気分的によろしくないので、もう一段反転回路を設けることになります。そのため、回路が複雑になり、小型化にも影響が出る、というのもあるのではないでしょうか。

今回製作したアンプは、いつ何のために買ったのか定かではないけれど部品箱に入っていた4回路入りオペアンプ、LME49740NAを左右チャンネルそれぞれの加算および増幅(増幅率5.1)に用いました。また、楽器からの入力には初段に2SK30ATMのドレイン接地回路を設け、インピーダンス変換を行っています。楽器側の音量は楽器のボリュームで調整することにしました。また、電源における仮想グランドの作成には抵抗による分圧ではなく、TLE2426というICを使ってみました。ちなみに基板は秋月の片面紙エポキシ・ユニバーサル基板 Cタイプ(72x47mm)(25 x 15 ホール)です。結構キツいです。ところどころ裏配線してます。

ひねりの無い設計ですが、ご参考までに。いつもの事ではありますが、これを見て作ってみようという方は自己責任で。最後になりましたが、同じような機能+チューナー&メトロノーム機能が付いたもの(TU-88)が、市販されています。私は作ってから知りました。

 

HPA ver.2

追記:一応、レイアウト図も載せときます。左側の方は現物合わせでやったため、実物とは少し違うかも。あくまで目安程度に考えてください。

 

HPA ver.2 layout


Brassmaster もしくは Black Cat Bass Octave Fuzz

2013-04-28 22:01:36 | Weblog

昨日の午後から、少しだけ調子が良くなっています。正常な状態は貴重なので、この時間を使って以前から作ろうとしては気力が続かず先延ばしにしていた、BrassmasterというFuzzを製作しました。本当はBlack Cat Bass Octave Fuzzを作りたかったのですが、回路図が公開されていません。しかし、Black Cat Bass Octave FuzzはBrassmasterの復刻版とのことなので、こちらを作れば同じだろう、となりました。

Brassmasterの回路図はウェブ上で簡単に見つかります。レイアウトは少し前に調子が良かった時に作っておいたのですが、やはり本調子ではないためか、よく見るとコンデンサーが1個抜けてました。危ない、危ない。最終的なレイアウト図は、こんな感じ。

Black Cat Bass Octave Fuzz

秋月電子のユニバーサル基板Cタイプ上に無理やり載せています。ダイオードとトランスの接続部分は少しズルをしてますが、ご勘弁を。

DSC_0061

ケースはタカチのTD10-13-4Bを使っています。デザインは、はい、Black Catのパクりです。猫がいないだけ。猫、欲しい。関係ないけど、リアル猫も欲しい。

音出ししてみましたが、ギュインギュイン歪みます。Octaverとして面が強いのか、音域がギターと丸かぶり。取り敢えず、今のバンドの中での使いどころは思いつきません。1人で遊んで弾くには面白いんだけどね。


ベース弾きます

2012-03-27 22:52:35 | Weblog

上司の軽音楽部再建計画に半ば無理矢理引き込まれ(パワハラ?)、ベースを弾くことになりました。ライブは8月の初旬に決定してます。もう、後には引けない状態。人前で弾くなんて20年ぶりです。このところ週末は2日とも終日練習。

…と思いきや、やっぱり編み物の方も気になる訳で、平行して『毛糸だま』今年の春号から2作品を同時に編み始めました。やっぱり春夏はかぎ針編みでしょ(根拠は無い)ってことで両方ともかぎです。一方は淡いピンクのキャミソールです。わ~!キャミソールって書いてること自体恥ずかしい。さらに、それを編んでる自分って何なの。しかもピンクかよ。てか、キャミソールって下着っぽくね?って訳で、ついつい錯乱してしまうくらい照れくさいのであります。過剰反応?

じゃあ、なんでそんなの編んでるのかと言うと、素人目には比較的簡単そうなデザインだったのと、糸が太め、かつ量が少なめなので早く仕上がりそうだったから。これまでかぎ針編みで着るものを作ったことがなかったので、まず試しに何か作ってみようと思った訳です。実際に編み始めてみると、玉編みがたくさんなので、それぞれのサイズを揃えるのが至難の技。綿100%の糸なので、ふっくらいかないし、見栄え良く作るにはそれ相応の技量が求められるようです。よく見てみると、難易度は最高難度の★3つでした。早く気付けよ、自分。

もう1つはストールに穴空けて袖を付けたようなジャケット。これは無難に紺系を選びました。ピンクのキャミソールよりは遥かに使い勝手が良いものになりそうです。まあ、どっちも自分では着用しない訳だけどさ。

指定糸ですが、ラメが入っている糸です。それが原因なのかちょっとゴワゴワしていて、編み心地はそれほど良くないかも。他の糸でも良かったかな、とも思う。

写真は出来上がったらアップします。