MP3サウンドデコーダ SmileDecoderスケッチ

1.概要

   名古屋電鉄で頒布しているMP3デコーダ SmileDecoderのスケッチを掲載します。
 
  対象の頒布品は以下の通り
    ・MP3サウンドデコーダV4
    ・MP3サウンドデコーダV4.5
    ・MP3サウンドデコーダV5(LOD版 スイッチングレギュレータ版)
    ・MP3サウンドデコーダV6N18
    ・SmileDecoder R6n
    ・SmileDecoder R7n
    ・SmileDecoder N18
    ・SmileDecoder 4808 N18

2.バージョン表記について(MP3デコーダのみ)

ベースとなるスケッチはオリジナルバージョンとし、ユーザ様でサウンドなどの改良を行ったスケッチをユーザバージョンで割り振り、掲載します
派生バージョンは、引用したオリジナルバージョンです。
CV7のバージョンは派生元バージョンになります。

※SmileDecoderN18シリーズは除きます

3.スケッチ

頒布品については最新のスケッチを書き込んだ状態で動作確認して出荷しておりますので書き込み不要です。
   自己責任で改変は自由ですが、自分で解決できる人、Arduinoが分かる人以外はスマイルライターで書き込まないようお願いします。

MP3V5シリーズ V4.5 V5(LOD版) V5(スイッチングレギュレータ版) 
SmileDecoderR6n 

オリジナルバージョンスケッチ
DL  Ver 備考  Update
MP3V5_DL101 01 走行音ディーゼル 2017/04/23
MP3V5_DL104 04 ファンクションレスポンス改善 
CV52(エンジン音変化タイミング)追加
2017/05/14 
MP3V5_DL105  05 必要なライブラリをスケッチに統合
停止中のみアイドル音を固定する動きの不具合を修正
2017/06/25 
MP3V5_DL108 08 パフォーマンス改善のためTimer1を使用しないように変更
・一部モーター部分の挙動修正(BEMF部分修正)
・自動ブレーキ音が鳴りにくいためMp3のブレーキ音部分のWait修正
・パルス周期を32KHzに変更(16KHz音の改善)
・VVVF側ボリュームの修正(CV50 SoundVolume:0-8)
・F3でディーゼル音 on/off 対応

・CV5の値によってスピードを上げると停止してしまう不具合対応
2018/04/23
MP3V5_DL109 09 ・高速エンジン音の直結モードをF4で表現した機能を追加。
・添付MP3フォルダにエンジン起動音(サンプル)追加
・BEMFの微調整を反映
 関連するデフォルト値を変更  CV54:64  CV55:18
・CV110 ライト制御機能追加
  CV110を1でライト制御機能ON
  F5で F側OFF
  F6で B側OFF
  ※CV110を1にするとMP3のF5,F6機能は無効になります。

・CV5の値によってスピードを上げると停止してしまう不具合対応
 2018/04/23
MP3V5_DL110 10 NMRA8ピンプラグに対応するためヘッドライトの出力(F0)がOFFの時のランドの出力がハイインピーダンスになるように修正  2018/06/03
EL   Ver 備考  Update
MP3V5_EL102 02 走行音吊り掛けVVVF 2017/04/23
MP3V5_EL102b 02 必要なライブラリをスケッチに統合 2017/06/25
MP3V5_EL103 03 ・パフォーマンス改善のためTimer1を使用しないように変更
・一部モーター部分の挙動修正(BEMF部分修正)
・自動ブレーキ音が鳴りにくいためMp3のブレーキ音部分のWait修正
・パルス周期を32KHzに変更(16KHz音の改善)
・(裏モード)吊りかけ音用リバーブモード追加
 CV48の3ビット目を1にする。ただし、VVVF音が単音になるので、注意
2017/08/11 
MP3V5_EL104 04 BEMFの微調整を反映
 ・BEMFに関連するデフォルト値を変更 CV54:64 CV55:18
CV110 ライト制御機能追加
・CV110を1でライト制御機能ON
  F4で F側OFF
  F5で B側OFF
  ※CV110を1にするとMP3のF4,F5機能は無効になります。

・CV5の値によってスピードを上げると停止してしまう不具合対応
 2018/04/23
 MP3V5_EL105 05 NMRA8ピンプラグに対応するためヘッドライトの出力(F0)がOFFの時のランドの出力がハイインピーダンスになるように修正  2018/06/03
応用編  Ver 備考  Update
MP3V5_DI101 01 応用編に掲載のスイッチ入力(基板のヘッドライトランドを入力端子に使いMP3を再生する)スケッチです。 MP3シリーズのみ 2017/09/16
MP3V5_AC101 01 応用編に掲載のアクセサリデコーダ版です。上記デジタルインプット機能も含んでいます。MP3シリーズのみ 2017/09/17
MP3V5_AC102 02 バージョン01に再生モードを設定できるように機能追加したバージョンです。
MP3シリーズのみ
2017/09/23
MP3V5_SO101  01 走行音の代わりにWAVサウンドを出力するスケッチです。
MP3も使えます。 MP3,R6nで使えます。
2018/01/08
MP3V5_SO102  02
走行音の代わりにWAVサウンドを出力するスケッチです。
サンプルで電車の警笛を加えたもので、機能はVer01と変わりません。
F3に電車警笛音 F4にE233の警笛音がセットされています
MP3も使えます。 MP3,R6nで使えます。
2018/01/08
MP3V5_SO103  03 走行音の代わりにWAVサウンドを出力するスケッチです。
サンプルで電車の警笛を加えたもので、機能はVer01と変わりません。
F3のみで電車の警笛音のみのバージョンです。
MP3も使えます。 MP3,R6nで使えます。

・CV5の値によってスピードを上げると停止してしまう不具合対応
2018/04/23
ユーザ様改良スケッチ
スケッチファイル(右クリックでダウンロード)   Ver 内容  Update
MP3V5_EL20301 01 へのへのもへじ様 ブログ記事 
京急ドレミファインバータ改善バージョン
マイクロエースの京急2100系にあわせ
・VVVFサウンドを変更
・ 減速時のドレミファサウンドのカット
などとCV値の調整をしています。
2017/09/16
MP3V5_EL20302 02 BEMFの微調整を反映 BEMFに関連するデフォルト値を変更
CV54:64 CV55:18
 2017/10/09
MP3V5_EL105_K3_1    吊り掛け音専用です。
MP3にも対応していますが、R7nで吊掛音をされる方はこのスケッチがお勧めです。
ファイル名をクリックすると有志のスケッチのFujigaya2さんのページリンクします。
 2019/05/03
MP3V5_SL103   R7n用のSLスケッチです
R7nでSL音をされる方はこのスケッチがお勧めです
ファイル名をクリックすると有志のスケッチのFujigaya2さんのページリンクします。
 2019/05/03

MP3サウンドキューブシリーズ

EL   Ver 備考  Update
MP3SQ_EL101 01 MP3サウンドデコーダV5と機能は同じですが
I2Cのキーパッドに対応しています。
2018/09/16
MP3SQ_EL102 02 モータドライバTB6643KQの仕様にあわせPWMの出力を変更 2019/08/12
MP3SQ_DC102 02  走行音がDCバージョン
モータドライバTB6643KQの仕様にあわせPWMの出力を変更
 2019/10/13

SmileDecoder N18 シリーズ

 Rev 備考  Update
SMDECN18A01 01 N18専用スケッチです。(MP3と互換はありません) 2019/07/27
SMDECN18A02 02 CVのAckで出力を交互に出すように変更。(飛び出していかないように)
規格でのモータ回転が逆のためPWM_AとBのピンを入れ替え。
モータドライバMP6513を使用に伴うPWMのDuty値を反転。
2019/08/10
SMDECN18A03 03  モータ回転中にDirection(方向)が転換した場合にモータドライバが故障する可能性があるのでその対策版です。
Direction(方向)が転換した場合モータ出力を1秒間停止させるように仕様を変更。
通常の車輌の運転では、行うケースはないと思いますが、走行中にいきなり方向転換した場合の対応です。
この対応は、モーターや電源電圧に依存するため完全ではありません。
方向転換は、一旦停止して行ってください。
2019/08/11 
 SMDECN18A04 (servo対応β版) 04  サーボモータ機能を加えたベータ版です。
AUX3,4にサーボ出力対応
CV61 AUX3 サーボ 0:OFF 1:ON
CV62 AUX3 サーボ速度 0,255最大 1~254で可変 1で最遅
CV63 AUX3 サーボ角度 1~180 (サーボに依存)
CV64 AUX4 サーボ 0:OFF 1:ON
CV65 AUX4 サーボ速度 0,255最大 1~254で可変 1で最遅
CV66 AUX4 サーボ角度 1~180 (サーボに依存)

CV110~138(F0~F28)ファンクションに対するCVに
8を指定でAUX3を割り当て。 9を指定でAUX4を割り当て
 2019/10/13
 SMDECN18A05  05 サーボ機能正式対応
CV読み書きのACKの制御変更(モータドライバ保護のためRev02の戻し)
CV3,4のCV値を0にしたときの動作不安定改善
2020/03/05
 SMDECN18A06  06 ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正  2020/11/22 

SmileDecoder N18 シリーズ(アクセサリデコーダ)

アクセサリスケッチ  Rev 備考  Update
SmDecN18AC01 01β SmileDecoder N18専用 アクセサリスケッチです。
現時点ではβ版で予告なく仕様が変更される場合があります。
・AUX3,4にサーボ出力対応
  CV61 AUX3 サーボ 0:OFF 1:ON
  CV62 AUX3 サーボ速度 0,255最大 1~254で可変 1で最遅
  CV63 AUX3 サーボ角度 1~180 (サーボに依存)
  CV64 AUX4 サーボ 0:OFF 1:ON
  CV65 AUX4 サーボ速度 0,255最大 1~254で可変 1で最遅
  CV66 AUX4 サーボ角度 1~180 (サーボに依存)
  CV69 サーボ電源投入Delay時間 0~255x20(ms)
      電源投入後に設定した時間のみF0_rがONになります。
      このCVで指定した時間後はOFFになります。
           
・アドレスはCV1とCV9
  アドレス = CV9*256 + CV1
  例:アドレス 300の場合 CV9 = 1 CV1 =44 

・各ピンの出力は以下の通り
 AUX1 サーボ1 ステータス t  AUX2 サーボ1 ステータス c
 AUX3 サーボ1 (パルス信号)  AUX4 サーボ2 (パルス信号) 
 AUX5 サーボ2 ステータス t  AUX6 サーボ2 ステータス c

・ステータスは以下のようにLEDをつけることが可能です
 Rの値は電源が12Vの場合は約1.2kΩ~2kΩの抵抗を付けることで
 開通表示に使えます。
  AUX1 ------|<|---R----- +12v
  AUX2 ------|<|---R----- +12v
  AUX5 ------|<|---R----- +12v
  AUX6 ------|<|---R----- +12v
2020/03/29


MP3サウンドデコーダV6 N18 シリーズ
N18専用スケッチです。(MP3V5と互換はありません)

EC(EL)  Rev 備考  Update
MP3N18E01 01 2020/04/18
MP3N18E02 02 走行疑似音(CV47=5)の京急ドレミファインバーターの音が改良されてたバージョン(京急新1000形)です。(頒布品標準搭載バージョンです)
2020/04/18
 MP3N18E04 04 ※走行疑似音(CV47)変更
0  無音(疑似音なし)    1  DC(直結)
2  吊掛(20 - 110)      3  ドレミファインバータ(京急2100タイプ)
4  吊掛(20 - 220)      5  ドレミファインバータ(京急1000タイプ)
6  E231(墜落インバータ)  7  抵抗制御
8  東洋GTO VVVF      9  E231系(旧)

※CV47=1のディーゼル直結音は、
SoundNotchのCV49でいくつかパターンを切り替え可
0: 停止:アイドル 加速:スピード比例 定速、減速:スピード比例
1: 停止:アイドル 加速:スピード比例 定速、減速:無音
2: 停止:アイドル 加速:スピード比例(低速時トルコン動作)
              定速、スピード比例(低速時アイドリング)
 2020/05/31
 MP3N18E05  05 ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正  2020/11/22
DC(DL)  Rev 備考  Update
MP3N18D01 01 走行疑似音がディーゼル音のバージョンです 2020/04/18
MP3N18D02 02 ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正  2020/11/22
SL  Rev 備考  Update
準備中です。 01
SX(走行音)  Rev 備考  Update
MP3N18SX01 01 走行音にMP3ファイルを使用するバージョンです。
ファイルに任意のMP3サウンドファイルをセットするだけで自由に走行音を実現できます。
ZIPファイルの中に東洋IGBTの走行音サンプルファイルを含んでいます。
走行音ファイルはDesktopStation様並びにともん一刻様のご厚意で添付しております。
設定など詳細は55.MP3サウンドデコーダV6 N18 走行音スケッチを参照ください
2020/05/03
MP3N18SX02 02 ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正  2020/11/22

MP3サウンドデコーダV6 SE シリーズ SE専用スケッチです。(MP3V6N18とMP3再生のコマンドが違うので互換はありません)

EC(EL)  Rev 備考  Update
MP3V6SE01 04 初期バージョン 2020/10/17
MP3V6SE02 05 ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正  2020/11/22
SX(走行音) (V6SE専用です)  Rev 備考  Update
MP3V6SESX01 01 走行音にMP3ファイルを使用するバージョンです。
ファイルに任意のMP3サウンドファイルをセットするだけで自由に走行音を実現できます。
走行音のファイル番号は以下の通りです。
  201.mp3 加速音 202.mp3 定速音
  203.mp3 減速音 204.mp3 ブレーキ音
ZIPファイルの中に東洋IGBTの走行音サンプルファイルを含んでいます。
走行音ファイルはDesktopStation様並びにともん一刻様のご厚意で添付しております。
設定など詳細は55.MP3サウンドデコーダV6 N18 走行音スケッチを参照ください。
但し、MP3V6SEではファイルの番号が001~255までとなります。
・ヘッドライトF0のファンクションをF0から他のファンクションに切り替えた時にファンクションがF0のままで変更されない不具合を修正 
2020/11/22

SmileDecoder 4808 N18 シリーズ

 Rev 備考  Update
SMDEC4808N18A02 02 SmileDecoder4808N18専用スケッチです。(従来と互換はありません)
スケッチの書き込みは専用のアダプタとUSBWriterが必要です。
2023/05/03
SMDEC4808N18A03 03 ・CV3・CV4によるモータの加速率・減速率の処理ロジックを
 SmileSoundDecoderと同じ仕様に合わせました。
 これによりCV3・4の値の範囲は0-255(デフォルト0)に変更しています
・減速時に自動減光機能が停止前に機能してしまう問題の修正
2023/07/09
SMDEC4808N18A04 04  デコーダモード(CV30)が1の時自動減光設定時に常時減光になってしまう問題の修正
SmileSoundDecoderの動きに協調するためデコーダモード(CV30)が1の場合でも加速減速度を見て仮想でモータが回転している間は減光にしないように修正しました。
 2023/07/11
       


BiDi(Railcom)シリーズ

Sender  Rev 備考  Update
BIDISender01 01 初期バージョン 2020/04/04
Multiplex4  Rev 備考  Update
01
初期バージョン
01
I2Cサンプル
DisplayNano  Rev 備考  Update
01 初期バージョン

掲載のオリジナルスケッチについては、電子工作連合各メンバーのご協力のもと開発したものを掲載しております。

電子工作連合各メンバーによる有志のスケッチはこちら

上記のZIPファイルの中にMP3のフォルダがあります。
このファイルをそのままメモリカードにコピーするとサンプル音を出力することができます。
EL/DLの音源ファイルはゲヌマ・フジガヤ2さんより提供いただいております。
DI/ACの音源ファイルはDesktopStation様より提供いただいております。

ユーザ様作成されたスケッチはHPやブログで公開されており内容がわかるものに限ります。

最新のスケッチでは必要なライブラリもスケッチに含めるようにしています。
スケッチに関するご質問等はお手数ですが、Desktopstationのフォーラムに投稿ください。

4.スケッチの書き込み

       プログラムの書き込みは、ArduinoのIDEを使用します。
       また、Desktopstationさんの スマイルライタType-A(AVR版)アダプタもしくはスマイルライタVer2が必要です。

      SmileDecoder4808についてはスマイルライタは使用できません。 専用のアダプタとDesktopstationさんの USBWriterが必要です。

       
            SmileDecoderの基板は、ArduinoIDEとDesktopStationさんのスマイルライターType-A(AVR版)の組み合わせの
            み利用可能です。

          
            PCからUSBケーブルでスマイルライターに接続して、ArduinoIDEをPCで起動します。SmileDecoderをスマイルライタ

            ーのコネクタに挿し、ArduinoIDEからブートローダを書き込みます
            書き込みが終了したら、使用するスケッチを読み込み、メニューの書込装置を使って書き込むを選択してスケッチを書き込みます。

      スマイルライタは、SmileWriter COMBO TYPE-Aに移行しています。
      SmileDecoder N18 MP3サウンドデコーダV6N18など 0.8mm厚基板の場合は、こちらをご利用ください。
       

       デコーダに関するスケッチの書き込み・ノウハウはDesktopStationさんのWIKI Smile Decoder (DSdecR3)
       およびSmile decoder (DSdecR3) ノウハウ集を参照ください。

  MP3サウンドキューブ
     SmileWriterV3またはSmileWriterCOMBO TYPE-A と ICSP6ピンケーブルを使用します。

     接続例 左がArduinoUnoとSmileWriterV3

     接続例 左がSmileWriterCOMBO TYPE-A

  SmileDecoder4808N18
     専用のアダプタとSmileSoundDecoderで使用するUSBWriterが必要です。
     専用アダプタとスケッチの書き込み方法については、SmileDecoder4808書き込みアダプタを参照してください。

     
     Desktopstationさんの USBWriterが必要です。
     
     書き込みアダプタにArduinonanoを使用した場合の接続図
     
     書き込みアダプタにArduinoUNOを使用した場合の接続図
     

5.お願い


      スケッチに関しては、基本オープンソースですので、ご自身の責任の範囲で、基板・スケッチの更新・改造を自由に行っていた
      だいてかまいません。また、スケッチ改造による機器故障の保障はありませんことご了承ください。
      このソースを利用した再販・機器への組込販売等の商用利用はお断りします。

      ご質問等はお手数ですが、Desktopstationのフォーラムに投稿ください。
      内容によっては回答できかねる場合もございますことご了承ください。
      (Desktopstation様のご厚意によりDesktopstationフォーラムを使わせていただいております)

      掲載内容に基づき作成または改造を行った結果、万一損害が生じても、掲載のユーザ様、リンク先のサイトならびに名古屋電鉄では
      責任を負いませんので、ご自身の責任の範囲でお願いします。


     名古屋電鉄  ホームページ http://www007.upp.so-net.ne.jp/nagoden/
                  ブログ  http://nagoden-diary.blog.so-net.ne.jp/


Copyright (c) 名古屋電鉄 http://www007.upp.so-net.ne.jp/nagoden/