Membongkar
dan mengimbas penyambung Apple MagSafe (Part 2)
Memahami kod pengenalan
pengecas
Anda
boleh dengan mudah mendapatkan maklumat daripada boot pada Mac (pergi ke
"Tentang Mac ini," "Lebih ...", "Laporan Sistem
...", "Makanan"), tetapi banyak maklumat yang membingungkan. Watt
dan nombor siri masuk akal, tetapi bagaimana dengan ID, ulasan dan keluarga? Ternyata
ini adalah bahagian-bahagian protokol 1-Wire yang digunakan oleh cip di dalam penyambung.
Setiap cip dalam keluarga 1-Wire mempunyai ID 64-bit unik yang diprogramkan secara individu pada cip itu. Dalam piawaian 1-wayar, ID 64-bit terdiri daripada kod keluarga 8-bit yang mengenal pasti jenis peranti dari 1 benang, nombor siri 48-bit yang unik, dan pemeriksaan CRC bukan kriptografi 8-bit yang mengesahkan bahawa nombor pengenalan adalah betul. Syarikat (seperti Apple) boleh menyesuaikan nombor pengenalan: 12 bit pertama nombor bersiri digunakan sebagai ID pelanggan, 12 bit seterusnya adalah data yang ditentukan oleh pelanggan dan baki 24 bit adalah nombor siri.
Dengan
maklumat ini, maklumat pemuat AC Mac kini masuk akal dan rajah berikut menunjukkan
bagaimana ID 64-bit ditugaskan kepada maklumat pemuat. Medan ID 100 ialah
ID pelanggan yang ditunjukkan oleh Apple. Watt dan semakan adalah dalam 12
bit data pelanggan (hex 3C ialah 60 perpuluhan, menunjukkan 60 watt). Kod
Keluarga BA ialah kod keluarga 1-Wire untuk cip DS2413. Oleh itu, banyak
maklumat mengenai pengecas AC yang dibentangkan oleh Mac sebenarnya adalah
maklumat peringkat rendah mengenai cip 1-Wire.
Terdapat
beberapa komplikasi seperti gambar rajah berikut. Loader pemasa
menggunakan 85 kod keluarga untuk beberapa sebab. Ini tidak ditunjukkan
pada pengecas 85 watt. Ia juga tidak menunjukkan keluarga peranti 1-Wire,
jadi ia boleh menjadi nombor sewenang-wenangnya. Untuk pengecas Magsafe 2,
ID pelanggan adalah 7A1 untuk pengecas
45 watt , 921 untuk pengecas
60-watt dan AA1 untuk pengecas
85 watt. Adalah pelik untuk menggunakan pengenal pelanggan berasingan
untuk model yang berbeza. Walaupun pelik, untuk pengecas 85 watt bidang
watt dalam ID mengandungi 60 (3C hex) tidak 85, walaupun 85 watt muncul di
skrin maklumat. Kajian itu juga dikeluarkan dari skrin maklumat untuk
pengirim kemudian.
Bagaimana membaca nombor pengenalan
Sangat
mudah untuk membaca nombor pengenalan penyambung Magsafe menggunakan perintang pullup 2K tunggal .
Jika
anda menyentuh dawai tanah ke pin tanah luaran penyambung Magsafe dan kabel
data kepada pin indera dalaman penyesuai, Arduino akan membaca serta-merta dan
memaparkan nombor pengenalan 64-bit. Pengecas tidak perlu dipasang di
dinding - dan saya sebenarnya tidak menyarankan untuk menyambungnya - sebagai
ciri menarik bagi protokol 1-Wire adalah bahawa peranti boleh mematikannya dari
kabel data, tanpa sumber kuasa.
Untuk
membuat perkara lebih mudah, nombor siri boleh dipaparkan pada skrin LCD. Litarnya
kelihatan rumit, tetapi ia hanya kusut
kabel menghubungkan skrin LCD . Menggunakan program mudah , nombor pengenalan 64-bit
ditunjukkan di bahagian bawah skrin. Baris teratas adalah legenda yang
menunjukkan komponen kod: "cc" cek CRC, "id." ID Klien,
"ww", rujukan "r", nombor bersiri "siri" dan
keluarga "ff". Nombor di bawah sepadan dengan pengecas 85 watt
(55 hexadecimal = 85 perpuluhan).
Kawalan cahaya status Magsafe
Mac
mengawal cahaya status pada penyambung Magsafe dengan menghantar arahan melalui
pin sensor penyesuai ke IC suis DS2413 1-Wire untuk menghidupkan atau mematikan
dua pasang LED. Dengan menghantar arahan yang sesuai ke IC melalui pin
sensor penyesuai, Arduino dapat mengawal LED seperti yang dikehendaki.
Imej
di bawah menunjukkan konfigurasi. Litar rintangan mudah yang sama sebelum
ini digunakan untuk berkomunikasi dengan cip. Perintah ini diterangkan
dalam lembaran data DS2413 tetapi
mereka harus jelas dalam kod program.
Saya
menggunakan kabel yang diekstrak daripada pengecas mati untuk kesederhanaan. LED
biasanya dikuasakan oleh voltan pengecas, yang saya simulasi dengan dua bateri
9 volt. Untuk menyambung Arduino ke penyambung, kali ini saya menggunakan
kad input Mac DC-in; Ini adalah papan pada Mac di mana penyambung Magsafe
disambungkan. Tujuan utama lembaga di sini adalah untuk memberi saya cara
yang lebih selamat untuk mengikat wayar daripada menolak bolt.
Penyambung
mengandungi sepasang LED oren / merah dan sepasang LED hijau, yang boleh
dihidupkan dan dimatikan secara berasingan. Apabila kedua-dua pasangan
menyala, warna yang dihasilkan berwarna kuning. Oleh itu, penyambung boleh
menunjukkan tiga warna. Program Arduino berjalan melalui tiga warna dan
dimatikan, seperti yang anda lihat dalam imej sebelumnya.
Proses
permulaan boot
Apabila penyambung Magsafe disambungkan ke Mac,
lebih banyak berlaku daripada yang anda harapkan.Langkah-langkah berikut Merupakan:
1.- Pengecas menyediakan isyarat semasa 6 volt yang sangat rendah (sekitar 100 μA) pada pin kuasa (3 volt untuk Magsafe 2).
2.- Apabila penyambung Magsafe dipasangkan ke Mac, Mac menggunakan beban rintangan (contohnya, 39.41KΩ), menarik kuasa masukan ke kira-kira 1.7 volt.
3.- Pengecas mengesan bahawa input kuasa telah rendah, tetapi tidak terlalu rendah. (Cakera pendek atau ketara tidak akan membolehkan pengecas.) Selepas satu saat kedua, pengecas akan beralih ke voltan penuh (14.85 hingga 20 volt bergantung kepada model dan kuasa). Terdapat mikropemproses 16-bit di dalam pengecas untuk mengawal fungsi ini dan lain-lain.
4.- Mac mengesan voltan penuh pada input kuasa dan membaca ID pengecas menggunakan protokol 1-wayar.
5.- Jika Mac berpuas hati dengan ID pengecas, ubah input kuasa ke litar penukaran kuasa dalaman dan mula menggunakan kuasa masukan. Mac akan menyalakan LED yang sesuai pada penyambung menggunakan protokol 1-Wire.
Proses ini menerangkan mengapa terdapat kelewatan satu saat selepas menyambungkan pengecas sebelum lampu menyala dan komputer menunjukkan bahawa bateri sedang dicas. Ia juga menjelaskan mengapa jika anda mengukur output pengecas dengan voltmeter, anda tidak akan mendapati banyak voltan.
Urutan
langkah-langkah kompleks menyediakan lebih banyak keselamatan daripada pengecas
biasa. Kerana pengecas menyediakan arus yang sangat rendah pada mulanya,
terdapat risiko kurang litar pintas ketika menghubungkan penyambung. Oleh
kerana pengecas menunggu sejam sebelum menghidupkan, penyambung Magsafe mungkin
akan dipasang dengan tegas sebelum kuasa yang diperlukan oleh komputer riba itu
digunakan melalui DC-In Magsafe dalaman. Ciri keselamatan tidak sempurna,
bagaimanapun, seperti yang ditunjukkan oleh penyambung magsafe yang terbakar
atau koyak.
Jangan cuba ini di rumah
Amaran:
Saya cadangkan anda tidak cuba mana-mana eksperimen ini. 85 watts cukup
untuk melakukan banyak kerosakan: tiup papan input DC Mac anda, menghantar api
komponen, fius sekering, atau menguap jejak PC, dan ini hanya beberapa perkara
yang boleh berlaku kepada saya . Mac dan pengecas mempunyai kedua-dua
mekanisme perlindungan, tetapi mereka tidak akan menjaga segala-galanya. Memotong
pengecas semasa terpasang adalah aktiviti berisiko tinggi.
Membaca pengecas pengecas dengan menguji pin semasa ia tidak dipasang adalah lebih selamat, tetapi saya tidak dapat menjaminnya. Sekiranya anda merosakkan pengecas, komputer, Arduino atau juga tanggungjawab anda.
Membaca pengecas pengecas dengan menguji pin semasa ia tidak dipasang adalah lebih selamat, tetapi saya tidak dapat menjaminnya. Sekiranya anda merosakkan pengecas, komputer, Arduino atau juga tanggungjawab anda.
Kesimpulan
Terdapat
lebih banyak penyambung Magsafe daripada yang anda harapkan. Pin utama
penyambung - pi penyesuai pi.
Berikut Merupakan Testimoni Yang Kami Dapat Daripada Customer
Untuk mengatahui lebih lanjut silalah lawati website kami di Macnote Studio
Tak tahu dimana lokasi MACNOTE Gombak?
Anda boleh hubungi kami melalui:
Anda amat dialu-alu datang terus ke MACNOTE di Gombak:
KAMI DI GOMBAK ( BERDEKATAN GIANT BT CAVES DAN MCD SERI GOMBAK)
- 10 MINIT DARI KEPONG DAN SELAYANG
- 15 MINIT DARI SETAPAK DAN SENTUL
- 25 MINIT DARI BANGSAR DAN AMPANG
- 30 MINIT DARI PUCHONG DAMANSARA DAN CHERAS
KAMI DI GOMBAK ( BERDEKATAN GIANT BT CAVES DAN MCD SERI GOMBAK)
- 10 MINIT DARI KEPONG DAN SELAYANG
- 15 MINIT DARI SETAPAK DAN SENTUL
- 25 MINIT DARI BANGSAR DAN AMPANG
- 30 MINIT DARI PUCHONG DAMANSARA DAN CHERAS
- 10 MINIT DARI KEPONG DAN SELAYANG
- 15 MINIT DARI SETAPAK DAN SENTUL
- 25 MINIT DARI BANGSAR DAN AMPANG
- 30 MINIT DARI PUCHONG DAMANSARA DAN CHERAS
Tiada ulasan:
Catat Ulasan