Mam do napisania prosty kawałek softu na PICa (PIC16F1938). Soft sobie napiszę, to się nie wydaje jakoś specjalnie skomplikowane, ale chcę najpierw zgrać oryginalny soft z procesora i w ogóle ogarnąć programator.
Kupiłem PICkit3, podpiąłem. Diody świecą, system (Linux) go widzi -- jest w dmesgu jako hiddev, jest też w lsusb:
[1337289.684926] hid-generic 0003:04D8:900A.0014: hiddev2,hidraw6: USB HID v1.11 Device [Microchip Technology Inc. PICkit 3] on usb-0000:00:14.0-6.2/input0
Bus 003 Device 016: ID 04d8:900a Microchip Technology, Inc. PICkit3
Zainstalowałem MPLAB X, odpalam IPE. Nie widzi programatora. Regułki udev są OK. Z roota też go nie widzi.
Po czym wnoszę, że nie widzi: Jak odpalam IPE, to jest okienko, a w nim dropdown z labelką Tool i "Select Tool". Klikam na dropdown i nie widać tam nic, jest pusty.
Odpalam mdb.sh, wpisuję hwtool, wypisuje mi jakieś złe rzeczy (niżej), ale programatora nadal nie widzi. Z roota też.
Stwierdziłem -- OK, może to po prostu pod Linuksem tak chodzi, wiadomo że firmy mają linuksiarzy gdzieś. Odpaliłem wirtualkę z Win 7, zainstalowałem samo IPE. Zajęło 14 GB. Tak, sam durny program do wrzucania softu, bez IDE, zajął 14 GB. Podpinam programator pod wirtualkę, sterowniki się instalują, ale IPE nadal go nie widzi.
Przyznam, że po moich doświadczeniach z AVR-ami i avrdude, który po prostu działa od strzału, po moich doświadczeniach z STM32, gdzie wszystko też po prostu działa, to jest... niewiarygodne i niesamowite.
Szukałem w necie, ale znajduję różne informacje, czasem sprzeczne ze sobą.
Jak to ugryźć? Czy jest jakiś normalny program (najlepiej działający z commandline, żeby go można było do Makefile'a dodać, ale jak będzie okienkowy to też będzie OK), który dogada się z tym PICkitem i będzie umiał zgrać plik .hex z PICa i wgrać do niego inny plik .hex?
mdb.sh:
hwtool
sty 04, 2026 1:22:46 PM com.microchip.mplab.mdbcore.platformtool.PlatformToolMetaManager init INFO: Could not read file: MultiFileObject@3d5c822d[Embedded/PlatformTool/seggerjlink] sty 04, 2026 1:22:46 PM com.microchip.mplab.mdbcore.platformtool.PlatformToolMetaManager init INFO: Could not read file: MultiFileObject@4a7f959b[Embedded/PlatformTool/segger-samice] sty 04, 2026 1:22:46 PM org.openide.util.NbPreferences getPreferencesProvider WARNING: NetBeans implementation of Preferences not found sty 04, 2026 1:22:46 PM com.microchip.mplab.nativeloader.NativeLoader loadNativeLibrary INFO: Library resource path: libs/libUSBAccessLink_3_48.so sty 04, 2026 1:22:46 PM com.microchip.mplab.comm.MPLABCommUSBAccess setSystemVersionVariables INFO: USBAccess3.48 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See