日記 ChatGPTにコードを書いてもらったら間違ってたけど感心した話 ChatGPT、いろいろなことができて面白いですよね。Arduinoなどのプログラムを書いてもらうという試みもいろいろされているようですが、私も今回ChatGPTにプログラムを書いてもらってみました。昨年、PowerAppsのプログラムをち... 2023/02/08 日記
日記 2022年の振り返りと2023年の抱負 今年も今日で終わりです。この1年は、思っていたほど活動はできなかったのですが、それでも夏以降は昨年よりは少し時間の余裕があった気がします。これはマンションの理事会の任期が終わってマンション管理の仕事が無くなったことが大きいです。とはいえ、書... 2022/12/31 日記
RP2040 MicroPythonでLCDにダブルバッファによる描画を行うには 以前公開したMicroPython用のST7735ドライバのリポジトリで、以下のような質問がありました。「ゲームを作りたいのですが、update相当の機能はないのでしょうか?」このupdateというのは、おそらくオフスクリーンのフレームバッ... 2022/12/30 RP2040
日記 PowerAppsとPowerAutomateを使ってみた話 この一か月ほど、仕事のほうでちょこっとMicrosoftPowerAppsとPowerAutomateを使っていましたので、感想などをメモしておきます。数百レコード程度の小さなデータを扱う事務作業があり、これまでExcelを使っていました。... 2022/11/12 日記
Synthesizer JavaScriptで書かれた電子回路シミュレータcircuit.js 先日ビデオを作っていて、シンセサイザの波形のアニメーションが欲しくなり、いろいろとツールを探した結果見つけたのが、この「circuit.js」です。これは電子回路のシュミレータで、元はJavaで書かれていたものをJavaScriptに変換し... 2022/10/16 Synthesizer
Arduino VRA8-UのためのMIDI入力+PWMオーディオ出力シールドを作成 先日、Arduinoで動くシンセサイザーVRA8-Uの話を書きましたが、このシンセサイザーは取っておきたいので、ブレッドボード上で組んでいた回路をユニバーサル基板を使ったシールドにしてみました。MIDI部分も含めた回路は以下のとおりです。ど... 2022/10/08 Arduino
Synthesizer PythonスクリプトのEXE化を試してみた 1年ほど前に、とあるPythonスクリプトを作成しました。このスクリプトの話をYouTubeにアップロードしておいたところ、たまに問い合わせを頂きます。必要に迫られて作成したもので、割とやっつけ仕事(あまり綺麗ではないコード)ではありますが... 2022/09/17 Synthesizer
Arduino Arduino UNOだけで作るシンセサイザー「VRA8-U」を動かしてみた 今年もなんとかMakerFaireTokyoを見に行けたのですが、Musicコーナーで目ならぬ耳を奪われたのがこちらの展示でした。RyoIshigakiさんの作品で、一聴してとても良い音(シンセサイザーとして)がしていて、お話を伺うとArd... 2022/09/07 ArduinoSynthesizer
日記 VMWareの仮想ディスク(ファイル)のコピーが遅い問題 私は開発を主にノートパソコンで行っています。今まで使っていたノートパソコンは10年近く前に購入したものだったのですが、だいぶガタが来たので、買い替えをしました。Linux環境は、VMPlayerをwindows上で動かしていました。新しいパ... 2022/08/03 日記
Synthesizer BLIT(Band Limited Impulse Train)による鋸波の生成(3) 前回、BLITを使って鋸波をうまく生成できることが確認できましたので、今度はlogueSDKで実装してみます。今回のコードおよびバイナリは以下のリポジトリに置いてあります。実装にあたって、追加で考慮が必要な点が2つあります。(1)\(Sin... 2022/07/18 Synthesizer
Synthesizer BLIT(Band Limited Impulse Train)による鋸波の生成(2) 前回、BLITについて簡単に説明しました。要約しますと、・倍音成分をある周波数でカットした鋸波は、時間軸に沿ってBLITを積分すると生成できる。・BLITは、以下の数式で表される。$$y(n)=(M/P)Sinc{_M}\\ \\ただしSi... 2022/07/17 Synthesizer
Synthesizer BLIT(Band Limited Impulse Train)による鋸波の生成(1) 前回はエイリアスノイズの出ない鋸波を、ウエーブテーブルを使って生成しました。この方法の欠点は、沢山のウエーブテーブルが必要になる点です。PCのソフトシンセでは問題になりませんが、logueSDKではデータとコード合わせて32KBしか使えませ... 2022/07/11 Synthesizer
Synthesizer 改めて、ウエーブテーブルシンセサイザを作る(5) 今回は、前回までの内容を使って鋸波のオシレータを作ってみます。なおコードは以下で公開しています。前回書いたように、logueSDKでは鋸波のウエーブテーブルが提供されていますが、テーブル数は7つと少なめです。実際にlogueSDKのウエーブ... 2022/05/08 Synthesizer
Synthesizer 改めて、ウエーブテーブルシンセサイザを作る(4) 一般的に、ウエーブテーブルシンセサイザでは1つの音色に対して複数のウエーブテーブルを用意し、切り替えながら用いることが多いです。音色には様々な倍音成分が含まれますが、DA変換のサンプリング周波数を超えた倍音成分はエイリアスノイズの原因になる... 2022/05/05 Synthesizer
Synthesizer 改めて、ウエーブテーブルシンセサイザを作る(3) 前回作成したウエーブテーブルシンセサイザは、起動時にウエーブテーブルを計算で生成していました。しかし一般的には、ウエーブテーブルは事前に生成して定数としてコードに埋め込むのが普通でしょう。例えばPythonなどを使ってウエーブテーブルを生成... 2022/05/03 Synthesizer