2018年2月11日日曜日

FON2405E(LEDE・Openwrt)でSPIデバイス追加

ようやくFONの活用に向けての一歩

フラッシュメモリが接続されているSPIポートを汎用的に使えないか

考えることはみんな同じで、すでにやっている人が居る
というかOpenWrtのHPに書いてある→Deep MMC Mod

・もともとのCS#1にインバーターを繋いでCS#2とするもの
・GPIOを1つ潰してCS#2に割り当てるもの

実現方法
極力ハードを増やしたくなかったので、GPIOにCS#2を割り当てる方法を考えることにした。
CSは負論理なので、起動時からHのままのGPIO12を使うことにした。
ubootもカスタマイズできれば、どのGPIOでも良いんだろうけど。

SPI通信のためにハードは16pinSPIフラッシュ用のランドから線出し
外れないようにホットボンドで固定
黒なので見栄えが少しイマイチ

ソフトは変更点だけを書き出すとこれだけ・・・。
dtsファイル変更、カーネルコンフィグでSPI_SPIDEV追加。
・gpio-ledsからGPIO12に関する定義をコメントアウト
・spi定義部分にcs-gpios追加
・spi定義部分にspidevを追加

ビルド→ファームアップ→デバイス確認

おぉぉぉ
ちなみに、spidevドライバを組み込むとbootログで注意されるみたい
次は動作確認だー

2018年1月23日火曜日

FON2405E(LEDE・Openwrt)のクロス開発環境(Eclipse)構築メモ

Eclipseを使ってエレガント?にクロス開発環境を構築したときの備忘録
基本的にはラズベリーパイのときと同じ

0.前提
 ・Eclipse
 ・FON2405E(LEDE)とSSH接続可能

1. クロスコンパイル環境
 ここにある
 「lede/source/staging_dir/toolchain-mipsel_24kc_gcc-5.5.0_musl/bin/」
 参考→https://wiki.openwrt.org/doc/devel/crosscompile

2.FON2405E(LEDE)側の準備
 
 ・sftpserver(OpenSSH SFTP server)
 ・gdbとgdbserver
 を追加してカーネル作成

3.Eclipse側の設定

 (1)プロジェクト設定
   ・CROSS設定にて

   ・接頭Prefixは「mipsel-openwrt-linux-」
   ・パスは「1.」参照

 (2)デバッグ設定


・Connectionで「New」 選択にて良きに計らう


・GDB debuggerは「mipsel-openwrt-linux-gdb」


あとはラズベリーパイの時と同じで行けた!

2018年1月22日月曜日

FON2405E(LEDE・Openwrt導入後の備忘録)

いろいろとやっていて忘れそうなのでメモ

1.実はGPIO9もある

今まで
・WAN(地球儀マーク?) GPIO12
・LAN GPIO11
・WPS GPIO14
だと思っていたら
WANにはGPIO9も接続されていることがわかった。
なんで今までわからなかったんだろう・・・。



 2.LANポートの割り当て

 LAN1<WAN> 白 IC面を上にして左側
 LAN3<LAN> 黒 IC面を上にして右側
 VLANは以下の通り