Geçen yıl PragmaConf 2025 için Bologna’daydım. O konferansa ilk gidişimdi ve sonradan anlaşıldı ki sonuncusu da olacaktı: düzenleyiciler devam ettiremiyor, yani katıldığım baskı sonuncusuydu. Buna hâlâ biraz üzülüyorum.
Oradayken iOS ve NFC geliştiricisi meslektaşım Alexander Manzer ile sohbete daldık. Bir noktada konu, benim çoktan “imkansız” klasörüne kaldırdığım bir soruna geldi: iPad’de NFC tag okumak. iPad’lerde NFC çipi yok, o yüzden insanlara bunun basitçe yapılamayacağını söylüyordum. Alexander yapılabileceğini söyledi, doğru harici okuyucuyla, ve başlamam için küçük bir kod parçası göndermeyi önerdi. Birkaç gün sonra gönderdi de. NFC.cool’un artık iPad ile Mac’te NFC tag okuyabilmesinin sebebi o parça.
Bunun çalışmayacağını söylemiştim
Mayısta, NFC.cool Mac’e geldiğinde, Mac’in yapamadıklarına koca bir bölüm ayırmış ve NFC okumayı en başa koymuştum. Gerekçem basitti: Mac’lerde NFC vericisi yok, iPad’lerde NFC vericisi yok ve bu, benim hiçbir yazılım güncellememin düzeltemeyeceği bir donanım sınırı.
O kısım hâlâ doğru, cihazın içindeki çip için. Kaçırdığım şey şu: yerleşik çipi kullanmak zorunda değilsin. Dışarıdan takabilirsin.
NFC çipi olmadan nasıl çalışıyor
Hile, harici bir USB NFC okuyucusu. Onu iPad’ine ya da Mac’ine takıyorsun, NFC.cool da doğrudan onunla konuşuyor. Kurulacak sürücü yok: Apple’ın iPadOS ile macOS’ta zaten gönderdiği akıllı kart desteği üzerinden çalışıyor, yani okuyucuyu USB-C bağlantı noktasına taktığın anda uygulama fark edip kendiliğinden ona geçiyor.
Uygulama, takılı bir harici okuyucu varsa onu tercih ediyor. iPad ya da Mac’te oyundaki tek NFC donanımı zaten o okuyucu, yani karar verilecek bir şey yok. iPhone’da ise bu, uygulamanın senin adına verdiği bir karara dönüşüyor: okuyucuyu tak, NFC.cool onu kullansın; takma, telefon kendi yerleşik NFC’sine dönsün. Ne bir ayar değiştiriyorsun ne bir mod seçiyorsun; uygulama elindeki donanımı anlayıp ona göre davranıyor.
Bunu üzerine kurduğum ve fiilen sınadığım tek okuyucu HID OMNIKEY 5022 CL. Başka USB okuyucular da çalışıyor, birkaçı aşağıdaki listede; onları deneyen kullanıcılar bildirdi.
Çalışan okuyucular
NFC.cool ile çalıştığını bugün bildiğim tüm okuyucular:
HID OMNIKEY 5022 CL - üzerine kurduğum ve uçtan uca sınadığım okuyucu (Amazon)
HID OMNIKEY 5422 - bir kullanıcı çalıştığını bildirdi (Amazon)
ACS ACR1552U-M1 - bir kullanıcı çalıştığını bildirdi (Amazon)
ACS ACR1255U-J1 - bir kullanıcı çalıştığını bildirdi (Amazon)
Yazan herkese teşekkürler. Piyasadaki her okuyucuyu satın alamam, yani ilkinden sonraki her model bu listede biri onu aldığı, denediği ve bana anlatmaya vakit ayırdığı için var. Burada olmayan bir okuyucu kullanıyorsan çalışıp çalışmadığını ya da nerede takıldığını bana bildir, yazıya ekleyeyim.
Bunlar Amazon ortaklık bağlantıları: birinden alışveriş yaparsan sana ek bir maliyeti olmadan küçük bir komisyon kazanabilirim.
Bununla neler yapabilirsin
iPhone’da yapacağın hemen her şeyi. Tag okuyup tüm belleğini dökebilir, NDEF mesajı yazabilir ve bir yığın tag’i arka arkaya okuyup yazan toplu işler çalıştırabilirsin. Tag’i parolayla korumak da işliyor. 3B yazıcı filament makarası biçimi OpenPrintTag da, iki yönde de. Ve evet, Philips Sonicare fırça başlığı sıfırlaması da çalışıyor.
Zor kısım sonuncusuydu. Sonicare başlığını sıfırlamak, tag’den bir sayacı okuyup ardından parola korumalı bir sayfaya geri yazmak demek ve tag bu yazmayı ancak seni az önceki kimlik doğrulamasından hâlâ tanıyorsa kabul ediyor. Harici okuyucu üzerinden bu, iki adım arasında okuyucuyla tek bir oturumu kapanmasına izin vermeden açık tutmak anlamına geldi. Bu tutunca ona bağlı işlemler, yani korumalı yazmalar ile fırça sıfırlaması, telefondaki gibi davranmaya başladı.
Dürüst sınırlar
Birkaç şey hâlâ yerinde değil ve bunları senin keşfetmeni beklemektense söylemeyi yeğlerim.
Kendi sınadığım tek okuyucu OMNIKEY 5022 CL. Yukarıdaki listedeki diğerleri kullanıcı bildirimlerinden geliyor, o listenin ötesi ise doğrulanmamış alan.
MIFARE Classic tag’ler okuyucu üzerinden salt okunur. Okuyabilirsin, yazamazsın.
Bunların hiçbiri çoğu kişinin kullanım biçimini bozmuyor ama gerçekler ve okuyucu almadan önce bilmek isteyeceğim türden şeyler.
Teşekkürler Alexander
Bunun nereden geldiği konusunda açık olmak istiyorum. Oturup icat etmedim; Alexander bana ipin ucunu verdi, ben de çektim. O kodu paylaşmak zorunda değildi, paylaştığı için minnettarım. Sonrasında bu kadar peşine düşmemin bir sebebi de açık: NFC.cool’un gerçekten NFC tag okuyabilen ilk iPad uygulaması olmasını istedim. En baştaki o olsun olmasın, oraya varmak emeğe değdi.
iPad ve Mac’te NFC tag okuma NFC.cool 6.15.0 ile geliyor. iPad’in ya da Mac’in, desteklenen bir okuyucun ve masandan bugüne dek hiç okutamadığın bir tag’in varsa öylece çalışacak.
Okuyucuya mı ihtiyacın var? HID OMNIKEY 5022 CL Amazon’da burada; bağlantı seni kendi ülkendeki Amazon mağazasına götürüyor. Bu bir ortaklık bağlantısı: birinden alırsan sana ek bir maliyeti olmadan küçük bir komisyon kazanabilirim ve bu da NFC.cool’a ayrılan emeği finanse etmeye yarıyor.
NFC.cool Tools’u iPhone, iPad ve Mac için indir
Bologna’daki o son PragmaConf’ta olduysan: iyi bir konferans için teşekkürler. Keşke bir tane daha olacak olsaydı.