Apa cara termurah untuk mendapatkan konektivitas jaringan ke Pi Zero?

50

Karena Pi Zero tidak datang dengan port Ethernet, saya bertanya-tanya apa cara termurah untuk mendapatkan konektivitas jaringan yang cukup cepat ke perangkat?

MEMPERBARUI

Yang dimaksud dengan "konektivitas jaringan" yang saya maksud adalah menghubungkan ke LAN / WLAN, sehingga perangkat dapat saling berbicara, berbicara dengan perangkat lain, dan pergi ke Internet. Misal, setelah setup saya harus bisa wget stackexchange.com. Saya sebenarnya tidak peduli apakah itu WiFi atau Ethernet, tetapi saya menduga bahwa Ethernet harus lebih cepat dan lebih dapat diandalkan (hanya tebakan).

Seseorang hanya bertanya apakah ini bisa dilakukan dengan HDMI , jadi saya tahu orang lain mencari solusi untuk masalah yang sama (atau serupa).

Kekeliruan logis
sumber
Pada saat Anda telah menambahkan kartu sd dan adaptor jaringan, tidak hanya biayanya hampir tiga kali lipat, tetapi Anda kemungkinan telah kehilangan satu-satunya port USB Anda.
Chris Stratton
1
Apa gunanya, @ChrisStratton? Anda harus menambahkan kartu SD ke Pi apa pun. Dan mungkin ada kasus penggunaan yang tidak memerlukan port USB tambahan. Tapi bagaimanapun juga saya pikir kita akan hidup untuk melihat Pi dengan WiFi di papan ^^
Ghanima

Jawaban:

33

Dua pilihan:

a) Beli adaptor Micro USB RJ45 dengan harga $ 2,15

b) adaptor USB RJ45 seharga $ 1,50 dan adaptor Micro USB OTG seharga $ 0,23 (harga total $ 1,73)

Beberapa artikel mungkin lebih murah jika Anda membelinya menggunakan aplikasi seluler.

neuhaus
sumber
1
Opsi (a) sepertinya itu akan sesuai dengan kebutuhan saya yang terbaik, tetapi saya akan memonitor pertanyaan untuk ide-ide lain. Saya merasa mungkin untuk mengintegrasikan RJ45, chip pengontrol Ethernet, dan chip USB dengan cara yang mirip dengan apa yang dilakukan oleh Pi yang lebih besar. Saya mencoba mempelajari skema Pi 2 model B kemarin, tetapi tanpa skema Pi Zero, saya agak macet.
Logical Fallacy
USD5 untuk Pi Zero dan + - USD2 untuk Jaringan. 1Ghz 512MB yang berfungsi penuh, mesin Linux super kecil .. Saya tidak bisa berkata-kata ... Jawaban bagus
Piotr Kula
5
Harap jangan membeli b) adaptor (JP1082), itu tidak akan berfungsi dengan kernel yang tidak di-embel dan Anda harus mengkompilasi ulang kernel setelah setiap pembaruan.
gajdipajti
@neuhaus Jika saya membeli opsi a, dapatkah saya menggunakannya untuk memasok listrik ke komputer juga?
Ricardo
RD-9700 sepertinya tidak bekerja sama sekali pada Raspbian. dan yang terburuk dari semuanya ternyata hanya USB 1.1
Piotr Kula
24

Ethernet lebih dari SPI

Salah satu cara termurah adalah menghubungkan pengontrol Ethernet melalui bus SPI. Pengontrol seperti itu misalnya ENC28J60 yang sering digunakan untuk konektivitas Ethernet untuk Arduino. Kernel Linux terbaru untuk Raspberry Pi memiliki driver dengan hamparan pohon perangkat. Lihat misalnya https://github.com/raspberrypi/linux/issues/795

Keuntungan dari solusi ini adalah port USB akan tetap tersedia. Kerugiannya adalah bahwa chip (dan kecepatan SPI) hanya mendukung Ethernet 10BASE-T (10 Mbps).

Modul lengkap dengan harga terendah (beberapa USD) mungkin dapat ditemukan di AliExpress: http://www.aliexpress.com/wholesale?SearchText=ENC28J60

pabouk
sumber
1
Ini adalah alternatif yang sangat menarik, di mana Anda dapat menggunakan GPIO untuk memiliki koneksi Ethernet. OK, itu tidak bagus untuk streaming media HD ... tetapi jika semua yang dilakukannya adalah stasiun cuaca atau router CNC ... luar biasa!
Piotr Kula
Di mana Anda akan meletakkan chip ini di nol?
Patoshi パ ト シ
1
@duckx: Berikut adalah contoh perkabelan dan menggunakan perangkat pohon overlay: gajdicookbook.wordpress.com/2015/02/25/... Berikut adalah beberapa gambar menggunakan kabel yang sama: elektroda.pl/rtvforum/topic2950919.html (digunakan pin dari header GPIO adalah sama dari versi pertama Raspberry Pi hingga Pi Zero).
pabouk
1
Biasanya 300Kbyte / detik dapat dicapai menggunakan modul ENC28J60. Saya pikir secara pribadi itu adalah solusi terbaik. (Saya memasangkannya ke A + yang menjalankan munin-node untuk sensor DB18B20 .)
gajdipajti
1
@gajdipajti: Dengan peningkatan frekuensi clock SPI: spi-max-frequency = 20000000bandwidth rata-rata harus sekitar 540 kB / s: github.com/raspberrypi/linux/issues/795#issuecomment-87255295 Sayangnya jika Anda mempertimbangkan misalnya video 1080p24 ini tidak cukup untuk streaming dari kualitas yang dapat diterima. ------ Seperti yang disebutkan lebih lanjut dalam masalah GitHub, mungkin di masa mendatang akan meningkatkan frekuensi lebih jauh - lebih dekat ke ENC28J60 maksimum 20 MHz.
pabouk
9

Bagi saya, cara termurah dan termudah untuk mendapatkan Ethernet ke Zero adalah melalui USB ke host saya. Saya menemukan tautan di sini adalah yang termudah dan tercepat, menetapkan IP statis untuk koneksi jaringan USB0 dan berfungsi dengan baik untuk SSH ke Zero ketika dicolokkan ke USB di laptop dan desktop saya. Pada windows 10 itu muncul sebagai port serial USB, Anda harus menentukan driver Acer RDNIS tetapi setelah itu bekerja dengan baik di bawah windows juga. Windows 7 dan 8 hanya melihatnya tanpa bertanya. Semoga ini bisa membantu. :)

http://pi.gbaman.info/?p=699

Clinton Johnson
sumber
2
Panduan yang diperbarui & disederhanakan di sini: gist.github.com/gbaman/975e2db164b3ca2b51ae11e45e8fd40a
shrx
7

Jika termurah adalah satu-satunya persyaratan saya akan pergi dengan modul ESP8266-01 WiFi seperti ini satu . Total biaya US $ 3,50 termasuk pengiriman. Ada beberapa tutorial yang membahas cara menggunakannya dengan Pi:

Anda mungkin ingin menghabiskan beberapa dolar lagi dan menggunakan salah satu model ESP8266 yang lebih tinggi. Modul-modul kelas atas ini memiliki beberapa manfaat tambahan, sementara masih berharga kurang dari $ 10, mereka mengandung sesuatu ADC yang tidak dimiliki Pi, mereka juga melepaskan semua pin dari chip ESP.

Steve Robillard
sumber
Apakah ada strategi serupa yang dapat digunakan untuk Ethernet? Ada instruksi serupa untuk Arduino .
Logical Fallacy
Bagian yang sama disebutkan (serial ke adaptor Ethernet akan bekerja dengan Pi juga) Periksa utas ini raspberrypi.org/forums/viewtopic.php?f=44&t=18397 . Perhatikan pertanyaan Anda tidak menyebutkan bahwa Anda menginginkan solusi Ethernet.
Steve Robillard
Saya melihat Pi Zero + di cakrawala! Yah, saya yakin mengerti alasan di balik pendekatan minimalis dan biaya turun yang diambil Yayasan dengan Zero. Tetapi harus ada Pi dengan WiFi on-board dalam waktu dekat. Pikirkan Internet-of-things.
Ghanima
Saya pikir apa pun yang terhubung melalui seri UART gagal bagian "masuk akal cepat" dari daftar persyaratan.
Peter Green
1
@neuhaus, tentu saja lebih lambat jika Anda menggunakan UART. Tapi ~ 40Mb / s telah dilaporkan menggunakan mode SDIO. Lihat jawaban saya
John La Rooy
6

Solusi ESP8266 yang lebih baik adalah dengan menghubungkannya sebagai perangkat SDIO pada port GPIO.
Ini murah dan bisa membuat Anda ~ 40Mb / s lebih dari wifi

http://oshlab.com/esp8266-raspberry-pi-gpio-wifi/

Sedikit sejarah. ESP8266 IC (jika Anda belum pernah mendengarnya) adalah mikrokontroler Wifi yang sangat populer dengan banyak modul murah di pasaran. Awalnya digunakan sebagai antarmuka serial UART untuk mikrokontroler, tetapi sejak itu porting berfungsi sebagai mikrokontroler mandiri menggunakan LUA atau Arduino. Ini adalah mikrokontroler yang sangat cepat yang berjalan pada 80MHz. Ini adalah salah satu mikrokontroler favorit saya untuk digunakan untuk proyek karena cepat, murah, dan memiliki wifi.

Beberapa versi modul telah keluar termasuk ESP-12E dan ESP-12F (keduanya sekitar $ 2- $ 3) yang mengeluarkan antarmuka SDIO. Ini sebagian besar tidak ada gunanya, karena antarmuka SDIO digunakan untuk memori flash.

Namun, ternyata ESP8266 sebenarnya adalah ESP8089 IC yang baru saja diganti namanya. ESP8089 adalah chip wifi SDIO untuk tablet kecil. Jika Anda tidak menurunkan GPIO 15 saat boot, seperti yang Anda lakukan saat menjalankannya sebagai mikrokontroler, itu dijalankan dalam mode SDIO dan pada dasarnya merupakan IC ESP8089 pada saat itu.

Proyek ini didasarkan pada proyek WiFi RPP Hackaday.io . Saya telah membuat beberapa modifikasi untuk bekerja dengan kernel linux baru di Raspbian baru dan saya telah menulis naskah untuk sepenuhnya mengotomatiskan proses. Untuk menggunakan ini, Anda memerlukan modul ESP-12E atau ESP-12F. ESP-12F direkomendasikan.

Pertama, pasang ESP-12F seperti ini.

masukkan deskripsi gambar di sini

Resistor 33 ohm diperlukan untuk mencapai kecepatan SDIO yang diperlukan, jadi tolong jangan tinggalkan mereka. Lebih baik menarik dari rel 5v dan memiliki LDO terpisah untuk modul ESP8266, tetapi menarik langsung dari rel 3.3v pada Raspberry pi harus bekerja dengan baik.

SSH ke dalam Raspberry Pi Anda dan masukkan perintah berikut. Anda mungkin ingin memperluas sistem file terlebih dahulu menggunakan raspi-config.

cd ~
git clone https://github.com/oshlab/esp8089.git
cd esp8089
sudo sh install

Ini akan memakan waktu cukup lama. Jadi hanya duduk dan menunggu, atau pergi minum kopi.

Setelah selesai, reboot Pi Anda.

sudo reboot

Setelah reboot, modul ESP8266 akan aktif. Anda dapat melakukan pemindaian cepat untuk memastikannya berfungsi.

sudo iwlist scan

Seharusnya memindai jaringan nirkabel dan menunjukkan kepada Anda apa yang tersedia.

Sekarang akan berfungsi sama seperti modul WIFI lainnya. Tepuk tangan.

John La Rooy
sumber
4

Checkout HubPiWi - add on board untuk Pi Zero dengan 3 Port USB dan Wifi terintegrasi dengan on board Antenna. Papan memiliki Antena PCB dan tidak memerlukan dan Kabel atau Konektor.

masukkan deskripsi gambar di sini

Penggunaan khas HubPiWi adalah menambahkan Keyboard, Mouse, dan Kamera pada tiga port USB. Ini selain Wifi, tentu saja.

Vikas Shukla
sumber
1
Menarik, namun dengan harga $ 13 bukan "cara termurah untuk mendapatkan konektivitas jaringan" yang merupakan pertanyaan awal.
neuhaus
3

Jawaban (sekarang) yang agak jelas adalah untuk mendapatkan Raspberry Zero W (Wireless), yang pada saat ini tampaknya dijual seharga sekitar £ 5 lebih dari Nol normal (£ 9 hingga £ 10 saat ini di sebagian besar pengecer di Inggris - tanpa pin tajuk dan aksesoris lainnya)

Ini memiliki berbagai manfaat dibandingkan solusi lain, termasuk:

  • Apakah on-board, sehingga tersedia di luar kotak dengan mudah
  • Sangat kompak, dan mungkin lebih hemat daya daripada solusi lain
  • Termasuk Bluetooth.
  • Tidak menggunakan GPIO, USB, atau konektor lain pada Pi
Wilf
sumber
2

Saya menjawab pertanyaan saya sendiri dengan dua ide yang saya miliki, tetapi kedua solusi itu norak (IMO) dan tidak semurah itu ($ 10-30). Saya berharap ada cara yang lebih baik.

Hubungkan adaptor micro-USB-ke-USB , lalu:

  1. Chain a dengan adaptor USB-to-Ethernet, atau

  2. Tetap di dongle USB WiFi murah.

Yang pertama kemungkinan akan menjadi yang paling dapat diandalkan; Saya memiliki nasib buruk dengan dongle WiFi.

Kekeliruan logis
sumber
Jika Anda memerlukan daftar adapter WiFi yang dapat digunakan, coba di sini
Wilf
Saya tidak melihat bagaimana menempel dongle USB WiFi yang murah akan menambah Ethernet :-P
neuhaus
2

Saya terlambat ke pesta, dan Anda sudah memiliki beberapa opsi yang sangat murah, tapi saya rasa Anda mungkin dapat melakukannya dengan kurang - hanya beberapa resistor - jika Anda memiliki PC dengan port serial cadangan di dekatnya. Sisi perangkat kerasnya sedikit macet, dan koneksi akan menjadi lambat dan Anda mengatakan Anda ingin cukup cepat, tapi saya pikir itu layak disebutkan.

Premis: Anda dapat melakukan jaringan melalui serial menggunakan PPP (modem apa yang digunakan untuk terhubung ke ISP). Jadi, jika kita bisa mendapatkan Pi Tx dan RX untuk berbicara dengan port serial PC, kita bisa jaringan di atasnya.

Bagaimana kita bisa menghubungkan Tx / Rx Pi ke port RS232? Tegangannya berbeda, jadi Anda juga bisa

  1. Gunakan level shifter seperti MAX3232, yang mungkin akan dikenakan biaya sebanyak adaptor jaringan, atau ...
  2. Langsung dari garis Tx Pi ke garis Rx PC; PC harus baik-baik saja dengan tegangan rendah. Ukur tegangan yang dihasilkan PC pada saluran RS232 Tx-nya, dan gunakan pembagi resistor untuk mencapai 3.3v, dan hubungkan ke jalur Rx Pi. Spesifikasi RS232 memungkinkan berbagai voltase, jadi Anda tidak ingin bergantung pada ini karena sama di antara PC.

Ada tutorial di sini yang menjelaskan cara melakukan bagian perangkat lunak.

Mark Smith
sumber
Mengapa tidak menggunakan port USB dan melakukan networking melalui USB? Ini lebih cepat daripada serial dan tersedia di mana-mana.
neuhaus
2. Jangan pikir itu akan terbang - level RS232 sama-sama berjarak di sekitar tegangan ground dan ada histeresis sehingga tegangan input yang beralih antara level positif dan ground benar-benar di luar spesifikasi: penerima sinyal seperti itu sepenuhnya berada di dalam spesifikasi. untuk mengabaikannya (dan RS232 adalah polaritas terbalik IIRC - yaitu tegangan lebih negatif dari -3.0V = tanda; tegangan lebih positif dari 3.0V = ruang). Kebetulan itulah sebabnya ada persyaratan pasokan -12V untuk PC lama - murni untuk port serial, meskipun saat ini dipenuhi oleh sirkuit pompa pengisian seperti pada IC seri MAX.
SlySven
2

Saya sudah mencoba untuk mendapatkan internet pada RPi nol saya dan menemukan daftar adapter ini untuk usb http://elinux.org/RPi_USB_Ethernet_adapters salah satu adapter dibuat oleh Plugable http://plugable.com/2015/12/12 / ethernet-for-the-raspberry-pi-zero /

Saya mengatur kartu sd pada raspberry pi 1 karena lebih mudah untuk men-setup dengan cara itu (saya memberikan ip statis dengan mengedit /etc/dhcpcd.conf) Kemudian adaptor Plugable berfungsi tanpa kerja ekstra, Anda cukup tancapkan dan kekuatan dan semuanya bekerja.

Tidak dapat mengomentari apakah ini solusi yang baik, tetapi saya dapat SSH masuk dan bekerja pada baris perintah tanpa masalah kinerja yang nyata.

ThetaSinner
sumber
2

Satu opsi lain adalah: https://www.kickstarter.com/projects/755102253/pijack-add-ethernet-to-raspberry-pi-zero

Bukan cara termurah, tetapi dijamin bekerja dan didukung - seperti modul berbasis ENC28J60 lainnya.

Ini belum didanai tetapi tersedia di sini: http://www.pijack.net

Saya adalah bagian dari tim pengembangan jadi saya mungkin bias!

mah
sumber
1
Ini bukan jawaban yang sangat membantu. Itu tautan kickstarter yang bahkan belum sepenuhnya didanai. Bahkan mungkin tidak ada sejauh menyangkut pertanyaan ini.
Jacobm001
1
Ini adalah proyek yang layak, desain EXIS dan prototipe tampak fungsional - papan tambahan terhubung ke header GPIO40 dan menyediakan 10Mbps ONLY (Tidak 100 Mbps, bukan Gigabit!) Koneksi Ethernet kabel. Mengingat skala waktu pada saat penulisan ini (2 bulan setelah rilis Pi Zero) target awal sekitar £ 4,5K pada 20160302 dapat dipenuhi - tetapi janji untuk papan yang dibangun penuh (£ 17 untuk Jul 2016, lainnya janji tersedia) kurang dari 40 Pin tajuk mungkin lebih dari beberapa akan pergi untuk. OTOH jika ini yang Anda inginkan, saya berterima kasih kepada poster yang telah membawanya ke perhatian kami ...
SlySven
Pembaruan: mereka tidak mendapatkan semua dana dari kickstarter tetapi dengan sumber lain mereka berhasil mengeluarkannya dan sekarang tersedia diproduksi dari mereka PiJack yang merupakan perusahaan yang berbasis di Uni Eropa (BUKAN Timur Jauh) seharga £ 11,49 rupanya .. .!
SlySven
Ini artinya, tentu saja bahwa Anda juga bisa menggunakannya sebagai kedua koneksi Ethernet dan secara teoritis menggunakan RPI B + atau 2 / model 3B sebagai Hardware kabel Firewall - meskipun throughput TIDAK akan yang tinggi sejauh yang saya bisa melihat.
SlySven
1

Apa yang saya lakukan adalah saya menggunakan penerusan porta. Saya memiliki Pi yang terhubung ke laptop saya sebagai perangkat jaringan dan saya mengaksesnya melalui SSH.

ssh -R 1234:182.254.218.141:80 [email protected]

Ini menciptakan port jarak jauh ke server proxy (temukan di http://proxylist.hidemyass.com/ atau situs serupa) di port 1234. Langkah selanjutnya adalah menambahkan proxy APT ke file / etc / apt / apt. conf (buat jika tidak ditemukan) dan tulis baris berikut:

Acquire::http::Proxy "http://localhost:1234";

Keuntungan!

Shmarkus
sumber
Saya suka saran ini. Sebuah laptop tidak murah, tetapi banyak orang memilikinya.
Logical Fallacy
bagaimana Anda menghubungkan Pi ke laptop sebagai perangkat jaringan (mereka berbagai cara !!)
Wilf
Saya Menggunakan kabel USB
Shmarkus
1

Tentu bukan versi yang murah, tapi jelas yang paling elegan - terutama jika Anda perlu menambahkan perisai tambahan melalui header GPIO. Dan termasuk 2 port USB HUB.

Saya mungkin sedikit bias karena ini mungkin produk saya yang saya jual, tetapi ini adalah solusi yang berpotensi valid:

https://www.tindie.com/products/marcel/raspberry-pi-zero-ethernet-rj45-and-usb-hub-shield/

Ini adalah produk saya jadi saya mungkin bias kompeten!

MarcelH
sumber
Halo dan selamat datang. Harap dicatat bahwa pengungkapan penuh dari afiliasi Anda diperlukan. (Nama pengguna Anda agaknya menunjukkan suatu relasi). Harap edit jawaban Anda.
Ghanima