Az első projekt a szuperkütyüre egy egyszerű intervalométer lesz. Ez egy nagyon egyszerű szerkezet, mégis szükségtelenül drága. Ez a drágaság azért is furcsa számomra, mert az újabb fényképezőgépeken van ilyen beépített funkció, ha máshogy nem, egy telefononos applikáción keresztül elérhető.
Nekem egy viszonylag régi Canon 5D II-m van, amihez nem lehet még telefont kapcsolni, de a Magic Lantern firmware-en keresztül ott is elérhető ez a funkcionalitás.
Szóval összességében nincs nagy jelentősége ennek a projektnek, de azért megcsináltam.
Először is, valahogy meg kellett oldanom a fényképezőgép csatlakoztatását. A Canon 5D-re egy úgynevezett N3-as csatlakozón keresztül lehet távkioldót vagy intervalométert kapcsolni. Ez egy hülye alakú dugó, aminek az lenne a szerepe, hogy megnehezítse a hozzám hasonló barkácsolók életét, de szerencsére nem végeztek tökéletes munkát. Az Amigás tápegység elkészítésekor eltettem a molex csatlakozót.
A műanyagból késsel és fogóvak kibányásztam a négyzet keresztmetszerű érintkezőket, mert úgy gondoltam, ezek később még jók lesznek. Sajnos túl nagyok voltak, de egy fogóval addig nyomkodtam őket, míg elég kicsik nem lettek. Ha véletlenül túlságosan is összenyomtam őket, akkor egy tűvel feszegettem szét. A fogó és a tű váltogatott használatával sikerült csatlakozókat készítenem.
Az interneten mások is eszkábáltak csatlakozókat, a kedvencem, amikor VGA kábelből vágták ki a megfelelő részt, majd belefaragták a helyére.
A három kábel közül megvan, hogy melyik kettőt kell összeérinteni (mint a régi filmekben, amikor autót loptak), hogy a fényképező kioldjon. Ez kézzel ment. Ideje volt megoldani, hogy egy elektronika tegye ezt helyettem. Átnéztem a kacatjaimat, hogy mit tudnék használni. Találtam néhány optikai csatolót, gondoltam ezek jók lesznek.
Először Arduinóval csináltam egy próbát. A célom az volt, hogy lássam, milyen problémák léphetnek fel. Mint kiderült, legalább 500ms ideig zárni kell az áramkört, különben a fényképezőgép nem old ki. Hmm, erre nem is gondoltam.
Mikor Arduinoval ment a csattogtatás, jöhetett a második próba a Flipperrel. Van egy beépített GPIO tesztelő alkalmazás, azt használtam. A rendszer továbbra is működőképes volt.
Jöhetett a forrasztás. A cuccaim között találtam egy kísérleti nyákpanelt, amire forrasztottak dolgokat. Azokat kiforrasztottam és a saját elemeimet raktam rájuk. Az eleje még szép volt, de a hátulja, ahová a drótokat forrasztottam, már ronda lett. Nem baj, kicsit cyberpunk-os lett legalább.
Az elején még tetszett a szigetelőszalagos csatlakozó, de mikor már többször húztam ki és be, a széle elkezdett felgyűrődni, a ragacs pedig mindenre ráragadt. Kénytelen voltam zsugorcsővel helyettesíteni.
A hardver elkészült, szükség volt szoftverre. Több intervalométer is van Flipperhez, de én úgy döntöttem sajátot írok, hogy jobban megértsem a kis szerkezet lelki világát. A fejlesztésnél alapvetően két kihívás volt. Az első a gombok kezelése. Egy korábbi verzióban ugyanis mikor lenyomtam a gombot, a program fő ciklusa többször is végigszaladt. Ennek az lett az eredménye, hogy amikor a vissza gombot megnyomtam, nem csak egy menüt ugrott vissza, hanem a programból is kilépett. Ezt a
A második kihívás a visszaszámlálás volt. Ezt egy időzítővel oldottam meg, amit a furi_timer_alloc-al foglaltam le és a furi_timer_start-al indítottam. Amikor megnyomtam a vissza gombot, akkor meg leállítottam. A gpio portok programozását magas szintű függvényekkel oldottam meg (furi_hal_gpio_write). A teljes kód itt található. A poszt írásának idején még nem volt meg minden funkció. Például fényképezés előtt nem volt élesség állítás és az első kép elkészítése előtti késleltetést sem implementáltam.