2018年06月30日

MACアドレス内蔵EEPROM

IoT機器の開発をしていると、
WiFi、Bluetoothだけでなく、
Ethernetも使用する機会が多々あると思います。

Wiznet W5500といったICを使用することで
簡単にEthernetでUDP,TCPを利用できます。

IMG_0023-.jpg

ここでEthernetのICで問題になるのはMACアドレスです。
サンプルプログラム等ではMACアドレスが同じため、
固有のMACアドレスを取得する必要があります。

遊びであってもスイッチングハブを使用すると
MACアドレスで識別するため、固有のMACアドレスが必要となります。

王道としてはIEEEに申請してMACアドレスを入手する方法ですが、
中小や個人ではなかなかできません。

そこで便利なものがMACアドレス内蔵EEPROMを使用する方法です。

ただ、パッケージがPDIP8しかなく、SPIベースのシリアルです。



ここでご紹介したいのが、
Microchip社から出ている24AA02E48、25AA02E48シリーズです。

24AA02E48はI2C通信、25AA02E48はSPI通信です。
また、SOT23-5、SOT23-6、SOIC8とパッケージ選択もできます。
価格も30円前後と非常に低価格です。
MACアドレスの領域は書き込み禁止になっているため、
誤ってMACアドレスを消してしまう心配もありません。

なお、24AA02E64、25AA02E64シリーズもありますが、
こちらはEUI-64のIPv6のMACアドレスのため、
未だ一般的なIPv4を使用する場合はEUI-48の24AA02E48、
25AA02E48シリーズを使用します。


実際のMACアドレスの読み出し方等についてはまた次回、ご紹介します。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2018年06月16日

ミニLCDプロジェクタ検討部品

今回はミニLCDプロジェクタを自作しようと思い、
検討している部品を紹介します。


海外でもミニLCDプロジェクタの自作プロジェクトがいくつかありますが、
LCDの日本国内での部品入手性が悪く、
なかなか踏み出せない状況でした。


秋月電子で販売されているLCDで簡単な改造により
ミニLCDプロジェクタが作れる部品があることが分かり、
実験してみました。


使用するLCDはAQM1602Y-NLW-FBWです。
秋月で販売されているこのLCDのみ黒背景で白文字、
つまり、表示文字部分が透過するタイプです。
バックライトの光で文字として白く見えるようになっています。


他のLCDは背面に反射板や色フィルム等がついているため、
LCDプロジェクタとして使用するのが難しいです。


プロジェクタといえばドームプロジェクタ部品もありますが、
制御が面倒なのとフルカラーは不要なため、
I2CのキャラクタLCDを使用します。



lcd1.jpg

まずは動作チェック。
コントラストは要調整ですが、
想定通り、文字部分が透過され、文字以外は黒く半透明となっています。


また、バックライトのプレートが簡単に外れる構造となっています。
付属のバックライトを外して、パワーLEDを当てて、レンズを通せば
ミニプロジェクタ完成という感じです。



レンズの種類、パワーLEDの出力等の検討がつかないので、
まずはiPhoneのLEDと100円均一の虫眼鏡を使って実験してみました。



lcd2.jpg

結果は表示範囲に問題ありますが、
はっきりと文字が紙のスクリーンに表示されました。

I2CでミニLCDプロジェクタが作れれば、
色々応用できそうです。


パワーLEDや非球面などのレンズ使って
もう少し実用的なミニLCDプロジェクタを作ってみたいと思います。

posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2018年06月02日

シングルボードコンピュータのRTCチェック方法

今回はRaspberry PIやTinkerboard、Nano PI Neo/Neo2などの
シングルボードコンピュータの外付けRTCチェック方法を紹介します。
使用しているRTCはおなじみのDS1307です。


I2C接続のRTCを導入した際に
接続確認として
sudo i2cdetect -y 0
と打ち込んでアドレスの検出有無が確認できます。
※I2C0に接続されている場合

rtc.check0.jpg



sudo i2cdump -y 0 0x68
で0x68のアドレスのダンプを取得できます。
※I2C0に接続されている場合

ダンプデータをよく見ると、
当たり前ですが、RTC内の時刻を確認することができます。

rtc.check-fix.jpg
※日付と時刻の間のデータはAM,PMでなく、正しくは曜日です。
 修正しました。


RTCが生きているか、時刻が合っているか
ダンプデータでも日付、時刻が簡単に確認できます。

ちょっとした動作確認に便利です。


もし、i2cdetectでUUが表示されて、
システム側にすでにRTCが組み込まれている場合は
sudo rmmod rtc-ds1307
で外せます。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2018年05月19日

Nano Pi Neo2 拡張ボード

今回は最近設計したNano Pi Neo/Neo2拡張ボードを紹介します。


Nano Pi Neo/Neo2は4cm角の大きさで小さく安いのが売りです。

ただ、USBコネクタが1つしかなく、無線LANでポートを使ってしまうと他に何も接続できない状況です。



ピンヘッダにはUSBが2つあるため、I2Cポートと合わせて

拡張ボードを作成しました。


  

 設計イメージはこんな感じです。


nanopi_extb.jpg



IMG_1.JPG


IMG_2.JPG

↑microUSBのコネクタを挿すと2つの内、1つのUSBポートと

若干干渉するので、ピンヘッダ、ソケットは長めの方がよさそう。

IMG_3.JPG


仕様は下記の通りです。



  • USB2ポート(フルサイズtypeA、USB1、USB2)搭載

  • I2Cポート(Groveコネクタ、I2C0)搭載

  • RTC(リアルタイムクロック、DS1307、CR1220バッテリ、I2C0内部接続)搭載

  • I2Cは10kでプルアップ抵抗を基板回路に搭載


既知の注意点は下記の通りです。



  • NanoPi GPIO1、GPIO2に接続するためのピンヘッダは別売り

  • 取付するピンヘッダの長さが標準的な10mmの場合、

  • 電源供給用microUSBと拡張ボードのUSBが干渉してどちらかが使用できない。
    この場合は長いピンヘッダやピンコネクタを使用して干渉を回避するか、
    microUSBを使用せずにDebugUARTピンをヒートシンク横から取り出して5V電源を供給する。

  • RTC DS1307は電池なしで電源に接続した場合、破損する可能性があります。必ず電池を入れて使用する。





基板のガーバーや使用方法等はこちらで紹介しています。

また、近々1個1500円前後で販売開始予定です。

販売先決定次第、また、こちらで告知します。


これでNanoPiの小さいメリットを生かしたデバイスがいろいろ作れそうです。

posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2018年05月05日

I2C Bus Accelarator

今回はGrove等で使用されるI2Cを延長する方法について紹介します。


I2Cはマイコン周辺の機器との通信を想定しているため、
数メートルといった距離の通信を想定していません。


Grove規格ではハブやケーブルを接続して、
数mまで伸ばしたいということも多々あると思います。

その際に便利な部品、バスアクセラレータLTC4311を紹介します。


バスアクセラレータLTC4311は、400pFのI2C仕様を上回るバス負荷条件で
データ伝送速度と信頼性を向上させるアクティブ・プルアップです。

機能と利点
• I2Cバス立ち上がり遷移時間を改善
• I2Cバス上に複数のデバイスを接続する場合にデータの完全性を保証
• 広い電源電圧範囲:1.6V〜5.5V
• “L”状態のノイズマージンを改善
• 最大400kHz動作


簡単に言えば、
配線が長くなってクロックや信号が鈍ってしまうところを
High、Lowをバシッと決めてくれるデバイスです。

バスアクセラレータLTC4311を接続することによって
複数のデバイス接続や長距離で大容量の相互接続ができるようになります。

簡単にGroveで使えるようにバスアクセラレータアダプタを設計してみました。


I2C_Bus_Acc.jpg

Groveコネクタのラインに繋げることで
I2Cの信号の鈍りを除くことができます。

近々、バスアクセラレータLTC4311の有無で
どれくらい長くできるか検証してみたいと思います。
ラベル:部品 電子部品
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする