-
シングルボードコンピュータ5点
投稿日 2016年 11月 25日 コメントはありませんまたまたYouTube動画からです。
たまたま見かけた「Top 5 Single-Board Computers」というビデオから。
紹介されているのは順に、
- C.H.I.P
- PINE64
- UDOO
- LATTEPANDA
- Black Swift
ですね。PINE64とBlack Swiftは初めて聞く名前です。
PINE64は64bitのCortex-A53(Quadコア)とRAM512MB/1GB/2GBを載せた安価なボードです。WiFiはオプションボードで搭載。
Black SwiftはAthros(現在はQualcomm)のAR9331をベースにしたROM16MB、RAM64MBの小さなボードです。しかし、入手方法がわからない(笑)。
-
インテルベースのシングルボードコンピュータ
投稿日 2016年 11月 24日 コメントはありませんたまたま見かけたのですが、「Raspberry Pi 3に対抗する(?)」インテルベースのシングルボードコンピュータがいくつか出てきているようです。
最初にみかけたのが LattePanda です。最初にみつけたYouTubeの動画などによると、
- IntelのQuad CoreのCPU(Cherry Trail 1.8GHz)
- ストレージは32GBのeMMC
- RAMは2GBと4GBの2種類
- RAMが2GBのモデルにはWindows10付きのものもある
- USB3.0×1、USB2.0×2、WiFi + Bluetooth4.0、HDMI、100Mbps Ethernet、MicroSDスロット
- Arduino対応のGPIO、Cheery TrailのGPIO
- 電源は5V 2A
と仕様のようです。で、メモリ2GBのOSなしが$79、メモリ2GBのWindows10モデルが$109、メモリ4GBのOSなし?が$139のようです。ディストリビュータはDFRobotのようなのですが、LattePandaのWebサイトからAmazon Japanのページに飛んでくると、4GB版が19,999円になっています。で、この4GB版の商品説明が微妙で、
で、なんのこっちゃ?なのですが、要はWindows10はインストールされているのだけど、ライセンスキーは付属しない、ということのようです。騙されて(?)買っちゃった人のレビューが載ってます。$109でOS有りだと、まあ面白いかも、なのですが、いくら4GBといえども、2万円でOS無しだとあまり買う意味無いですね・・・。また、Raspberry Pi 3との比較ビデオもあって、これを見ると、Intelプロセッサだけどあまり速くない。というか、Raspberry Pi 3が思ったよりも速いというか、やっぱWindows10重いというか、そんな感じでしょうか。
次に見かけたのがUDOO X86です。こちらはKICK STARTERでキャンペーンやってた(?)みたいです(やってるけど日本からは注文不可?)。公式Webの内容とKICK STARTERの内容で差があるのですが、公式Webの記載によると、
- Intel の Quad Core CPU(Braswell で最大2.56GHzまでのモデルがある?)
- メモリはDDR3L で 2GB/4GB/8GB
- HDMIとDP×2(4K画像が3画面出せるような記述あり)
- eMMC最大32GB(Webサイトでは安価なモデルはeMMCなし、KICKSTARTERでは8GB)
- SATAコネクタ、M.2 SSDスロット、MicroSDスロット(KICKSTARTERではMicroSDからブートできるような記載もあります)
- USB3.0×3ポート
- Gigabit Ether
- ArduinoコンパチのI/Oポート
- その他
ということみたいです。KICKSTARTERでは
- 2GHzのCPU、RAM2GB、eMMC8GBのものが$89(売り切れ)
- 2.24GHzのCPU、RAM4GB、eMMC8GBのものが$109
- その他
のようで、Webサイトで受け付けているPREORDERでは、
- Atom X5-E8000 2GHz、RAM2GB、eMMCなし、ACアダプタ付きで$125
- Celeron N3160 2.24GHz、RAM4GB Dual Channel、eMMCなし、ACアダプタ付きで$149
- Celeron N3160 2.24GHz、RAM4GB Dual Channel、eMMC 32GB、ACアダプタ付きで$165
- Pentium N3710 2.56GHz、RAM8GB Dual Channel、eMMC 32GB、ACアダプタ付きで$259
となっています。まあ、小さいPCとしてみると魅力的に見えないこともないのですが、送料とか関税(かかるのかな?)とか考えるとイマイチ感もありますね。
-
ESP8266でSmartConfigを試してみた
投稿日 2016年 11月 5日 3個のコメント長らく放置していたESP8266基板ですが、やっと動かしました。前回の記事から数えて約1年(ぉぃ)。回路図の定数に不適切な部分があってブートローダから先に進んでなかったのと、秋月のFT234X搭載の超小型UART変換基板だとなぜかLinux側が固まってしまうという事象に悩まされたためです(汗)。
で、まだ最低限の機能しか試してないのですが、回路図はこんな感じです。回路図の電源周りにいろいろわけのわからないFETが入っていますが、これはソフトウェア制御で電源OFFできるようにするのと、電池使用時に電源電圧を自身で測定できるようにするためです。電池を使えば Amazon Dash Button 相当のことができる予定です。
UART変換基板は結局秋月のAE-TTL-232Rを使いました。
開発環境はArduino IDE 1.6.12を使っています。昔調べた方法でボードマネージャでESP-8266を使えるようにして、ボードはGeneric ESP8266 Module、FlashメモリサイズはESP-WROOM-02に合わせて1M(64K SPIFFS)を選択しました。
さらに1年間の進化は素晴らしいもので、smartconfigというWiFi周りの設定をAndroidスマートフォンでやる仕組みが登場していました。ArduinoのコードはGitHubのここから持ってきました。少しこの基板にあわせて修正したのが以下のファイルです。
#include <ESP8266WiFi.h> #include <WiFiUdp.h> void setup() { int cnt = 0; // set for STA mode WiFi.mode(WIFI_STA); // put your setup code here, to run once: Serial.begin(9600); // led status at pin16 pinMode(12,OUTPUT); digitalWrite(12, HIGH); // turn the LED on (HIGH is the voltage level) //configure pin0 pinMode(0, INPUT_PULLUP); // deplay for 2 sec for smartConfig Serial.println("2 sec before clear SmartConfig"); delay(2000); // read pullup int isSmartConfig = digitalRead(0); if (isSmartConfig==0) { // bink for clear config blinkClearConfig(); Serial.println("clear config"); // reset default config WiFi.disconnect(); } // if wifi cannot connect start smartconfig while(WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); if(cnt++ >= 15){ WiFi.beginSmartConfig(); while(1){ delay(500); if(WiFi.smartConfigDone()){ Serial.println("SmartConfig Success"); blinkSmartConfig(); break; } } } } Serial.println(""); Serial.println(""); WiFi.printDiag(Serial); // Print the IP address Serial.println(WiFi.localIP()); } void blinkSmartConfig() { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(50); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(50); } void blinkClearConfig() { int i=0; while(i<=3) { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(100); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(100); i++; } } void blinkStartConfig() { pinMode(13,OUTPUT); int i=0; digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) } void loop() { int isSW1 = digitalRead(0); if(isSW1==0){ for(int i=5;i>0;i--){ delay(1000); Serial.println(i); } Serial.println("Power off"); delay(500); pinMode(15,OUTPUT); digitalWrite(15, HIGH); // Power-off the board (HIGH is the voltage level) delay(5000); } delay(100); digitalWrite(12, 1-digitalRead(12)); // Blink the LED }
修正したのは起動時のGPIO12のLEDの点灯と、ステータスのGPIOをGPIO16からGPIO13に変更、初期化が完了したら電源OFFする制御を追加したことです。これをコンパイルしてボードに書き込んでやります。
シリアルモニタで動作を確認しながら、スマートフォンで「ESP8266 SmartConfig」というアプリを動作させてESP8266モジュールに接続させる先のSSID(スマートフォンがつながってるSSIDが勝手に表示されます)と、パスワードを入力してCONFIRMを押してしばらく待つとESP8266側の接続設定がされるという便利なものです。
設定したSSIDとパスワードはフラッシュメモリ内に保存されて、次回は勝手にロードしてくれます。(上記のソースでは、起動後2秒たった瞬間にGPIO0がLレベルだと設定をクリアして再度設定待ちになります)
<���������$�������ɕ����Ɂ����� �����5R�................SmartConfig Success .SmartConfig Success .SmartConfig Success Mode: STA PHY mode: N Channel: 4 AP id: 0 Status: 5 Auto connect: 1 SSID (17): xxxxxxx-yyyyyy-z Passphrase (10): xxxxxxxxxx BSSID set: 1 ??.??.???.?? 5 4 3 2 1 Power off
上記は電源投入〜SmartConfigによる設定〜APへの接続〜シャットダウンまでのシリアルコンソールのログです。楽でいいですね!
最近のコメント