目次

Sound Option

for Desktop Station DCC decoder R2 and R3 (Smile decoder)

DSdecR2, Smile Decoder (DSdecR3)専用サウンドオプション機能の解説
This page describes the sound option kit for DS DCC Decoder kit R2 and R3.

buin2gou.sakura.ne.jp_sblo_files_powerele_image_dsdecsoundasm_7-thumbnail2.jpg

Feature

Parts list

Sound Option用の追加部品は以下の通りです。
The following is the parts for sound option.

Parts No Parts url
Speaker Hoshiden micro speaker HDR9225 (N scale) or
UM1515IA080008 (HO scale)
M1 PAM8012 Amp Module or
TPA2006 module
url
url
C10 1uF Ceramic capacitor
C11 220uF Capacitor

buin2gou.sakura.ne.jp_sblo_files_powerele_image_dsdecsoundasm_1-thumbnail2.jpg

Speaker comparison

Parts name Result Scale url
UM1515IA080008 Good HO scale url
HDR9225 Good N scale url
HDR9350 Not Good HO scale url

Schematic

配線は以下の通りです。
The wiring is followings.

SmileDecoder side Amp module side
-(GND) GND, IN-
D3 IN+
+(5V) +V

Soldering

buin2gou.sakura.ne.jp_sblo_files_powerele_image_dsdecsoundasm_2.jpg

Sound list

The following sound files are based on a headlight control sketch. You can replace the sketch to the head light control board.

Name Version url Notes
JR E233 R2(2015/5/29) download 警笛(F2,F3),ブレーキ解除(F4)
JR C57 R1(2015/5/29) download 警笛(F2)
JR 115 R1(2015/5/31) download 警笛(F2,F3), 発車ベル(F4)
JR 719 R1(2015/5/31) download 警笛(F2,F3)
Tender Locomotive R1(2015/5/30) download 警笛(F2)

How to convert Wave file to C header file

ご自分で録音したデータを元に、サウンド用のArduinoスケッチを作成することが出来ます。
You can convert the sound data which you records to Arduino's C header file.

弊社独自のWAVEファイルからAVR(Arduinoマイコン)向けC言語ヘッダファイルの変換ツールが無償で利用可能です。
The following tool can convert. You can use the tool for free of charge.

Download: Wave to C Converter R1

Instruction for preparing new sounds

ここでは、フリーの音編集ソフトAudacityを使って説明していきます。このツールが一番高機能で使いやすいと思いますので、皆様にも推奨いたします。Audacityがインストール済みであることを前提に、解説していきます。

まずは、Audacityを起動します。
Run Audacity program.

次に、音データを開きます。ここでは、駅で録音したE233のブレーキ解除音をMP3化して手に入れています。 通常、録音してきたデータのままでは、ノイズが入っていたり、前後に余計な音や隙間が入っていたりしますので、これらをこの場でトリミングします。ノイズ除去、音のボリューム調整もこの場で行ってください。 ATMEGA328PのROMサイズの都合により、トータルで4秒未満にしてください。たとえば、複数の音を使用する場合は、合計の時間が4秒未満になるように調整が必要です。

以下、編集のコツです。

よく分からない人は、Audacityの講座や解説ビデオがYoutubeにあがっていたりしますので、勉強してみてください。

編集が終わったら、以下の3つの作業を行います。

  1. ステレオからモノラルへの変換(音データがステレオの場合。2つの波形が出ていればステレオです。既にモノラルであれば作業は不要です)
  2. リサンプリング(8000Hzに音の解像度を下げます。データ量を下げ、Arduinoへの負荷を低減するためです)
  3. プロジェクトのサンプリング周波数を8000Hzに下げる(保存の際に影響するので、リサンプリングした結果に合わせます)

以下の図の赤枠のメニュー項目を順に押していきます。

モノラル化は押すだけで完了するので図は省略します。次に、リサンプリングをします。 サンプリングレートは8000Hzを選択してOKを押します。

次にプロジェクトのサンプリングレートも8000Hzにしておきます。
Set 8000Hz at Project's sampling rate.

いよいよ、WAVEファイルを書き出します。メニューから書き出しを選んでください。
Select export menu.

ファイルの種類は、「その他の非圧縮ファイル」を選択します。その次に保存ボタンの下のオプションを押します。

ヘッダの種類は、「Wave Microsoftヘッダ」を選択します。
Select “Wave Microsoft”.

次に、「Unsigned 8bit」を選択します。ADPCMを使用する場合は、IMA ADPCMを選択してください。
Select “Unsigned 8bit PCM”.

ADPCMのとき:

OKを押します。
Click OK.

そして、保存を押します。これで、ファイルが書き出されました。Audacityでの作業は完了です。
Then click Save. Finished editing sounds on the Audacity.

Cソースファイルの生成

次に、Waveファイルを、Arduino IDEでコンパイルできるように変換ツールを使用します。Wav2cを使っても良いですが、ここでは弊社独自に変換ツールを用意しました。画面操作で簡単に変換できるようになっています。サウンドオプションのページに、ツールを置いてありますので各自でダウンロードしてください。ツールは無償でご利用いただけます。

WAV to C Converterをダウンロード

開くと以下の画面が表示されます。

さきほど、Audacityで書き出したファイルを開きます。

すると、以下の画面になり、変換が完了します。Saveを押すと、ヘッダファイルが保存されます。

このツールで書き出した場合、WAVEファイルのデータは、「ファイル名_data」という配列で保存されます。また、データのサイズは「ファイル名_length」というint型の変数で定義されます。Arduinoのサウンドスケッチ側で、ヘッダファイルのincludeと、サウンドの長さを保存する処理部分(HeadlightControlの再生処理のところにあります)、読み出し関数(ReadSoundRom)のコール部分を新しく差し替えるファイルの内容に合わせて編集してください。この作業をしないと、いつまで経ってもサウンドが入れ替わりません。