Tartalomjegyzék:

Retro stílusú forgó tárcsás mobiltelefon: 4 lépés (képekkel)
Retro stílusú forgó tárcsás mobiltelefon: 4 lépés (képekkel)

Videó: Retro stílusú forgó tárcsás mobiltelefon: 4 lépés (képekkel)

Videó: Retro stílusú forgó tárcsás mobiltelefon: 4 lépés (képekkel)
Videó: iPhone 15 Pro Max - BETTER THAN ANDROID NOW! 😳(kinda) 2024, Június
Anonim
Retro stílusú Rotary Dial mobiltelefon
Retro stílusú Rotary Dial mobiltelefon

Ezt a projektet mind a gyakorlati szükséglet, mind pedig valami szórakoztató vágy hajtotta.

Mint a legtöbb modern család, sok évvel ezelőtt abbahagytuk a valódi "otthoni" telefon (vezetékes) használatát. Ehelyett van egy extra SIM-kártyánk a "régi" otthoni számunkhoz társítva, amelyet a dual-sim mobiltelefonomban hordtam. Ez a legtöbbször rendben volt, de néhány esetben nem működött a legjobban, például amikor a szüleink látogatták (ők régi generáció - mobiltelefonok nélkül, és nem tudtam őket otthon hívni, amikor távol voltunk) mivel az "otthoni" telefonunk nálam volt). Ezt erősítette a telefonom váltásakor is (új telefon egyetlen SIM -foglalattal). Tehát jó ötletnek tűnt, hogy megtaláljuk a módját, hogy "otthoni" stílusú telefonunk legyen, amely képes lenne extra SIM -kártyánk használatára.

Ami a szórakozást illeti, manapság a legtöbb gyereknek fogalma sincs arról, hogy hány éves forgó telefonos telefonok működtek, vagy egyáltalán léteztek. A világ azon részén, ahonnan feleségem és én származunk, a "fordítsd meg a számot" kifejezést használjuk a tárcsázáshoz, ami zavaró a fiatalabb lakosság számára, mivel "miért forgatná bárki a telefont, hogy tárcsázzon". Ezért úgy gondoltam, hogy jó lenne, ha a fiam (aki aktívan részt vett ebben a projektben) tapasztalatot szerezhetne a forgó telefonról.

Természetesen abban is biztos voltam, hogy ez az "új" telefon jó beszélgetési téma lesz, ha barátaink és rokonaink vannak. Vagy még jobb, ha magunkkal visszük a telefont barátaink látogatásakor, meglepve az embereket egy teljesen működőképes retro kinézetű mobiltelefonnal.

A projekt során megváltoztattuk néhány eredeti tervezési célt. Például arra gondoltam, hogy újratölthető külső akkumulátort ágyazok be a telefonba, hogy könnyen hordozható legyen, de végül rájöttem, hogy ez nem szükséges (mivel ez a típusú telefon természetesen mindig egy helyen marad, így mindig csatlakoztassa a konnektorhoz). Volt néhány más "gyorsbillentyű" is, amellyel tudtunk foglalkozni, így a projekt viszonylag egyszerű és nem túl bonyolult.

================

Az anyag tekintetében eredetileg abban reménykedtem, hogy a szüleimtől megkapjuk a régi forgótelefont, és a legtöbb alkatrészét (telefonhéj, forgó tárcsa, fejhallgató stb.) Használhatjuk, ami csökkenti a teljes projekt költségeit. Ez végül nem történt meg a COVID-19 miatt, ami megakadályozta a tervezett európai utunkat (családlátogatás), ehelyett csak megtaláltuk és megvásároltuk az új rotációs tárcsás telefont az Amazon-on (nem voltam megelégedve az eBay lehetőségeivel és áraival). Ez rendben volt, mivel néhány érdekes kiegészítő funkciót biztosított, mivel találtunk forgó tárcsázós telefont extra tárcsázási lehetőségekkel (* és #), amelyek általában nem érhetők el a régi telefonokon.

A projekt fő része a GSM/GPRS HAT volt, amely könnyen elérhető (nem volt szükségünk 4G verzióra), és amely közvetlenül vezérelhető bármely Raspberry Pi vagy hasonló táblával. Esetünkben volt egy kis Raspberry Pi Zero tábla, amelyet nem használtunk aktívan (a fiam idősebb projektjéből).

Érdekes, hogy a legtöbb gondolkodási és tervezési változtatás a projekt viszonylag egyszerű és kis része körül történt - csengő akció létrehozása. Mint azok, akik ismerik a régi telefonokat, tudják, hogy a jellegzetes régi stílusú csengetést a 40-60 VAC által hajtott "harangok" produkálták, ami a projekt részeként bonyolult volt. Végül úgy döntöttem, hogy leegyszerűsítem a projektnek ezt a részét, és végül viszonylag egyszerű megoldást kaptam egy rögzíthető hangmodul használatával, amely általában az üdvözlőlapok része. Voltak más lehetőségek is, de ez valójában remekül működött, és viszonylag olcsó megoldás volt.

Kellékek

  • Raspberry Pi Zero W
  • Waveshare GSM/GPRS/GNSS/Bluetooth HAT

  • Rögzíthető hangmodul, nyomógomb aktiválva
  • (Régi) Rotary Phone
  • Micro SD kártya (Raspberry Pi -hez), kábelek/tűk, régi fejhallgató stb.

Lépés: A telefon előkészítése

A telefon előkészítése
A telefon előkészítése

A régi stílusú vezetékes telefonok viszonylag egyszerű eszközök. Amint az a képen is látható, az eredeti telefont szétszedve, az újrafelhasználható alkatrészek a telefon fő burkolata, beleértve a forgó tárcsát és a talpat, a headsetet és a kapcsolóját, míg a többit kivették - csengő és vezérlőpult.

Ami nagyon szép volt ebben a telefonmodellben, az az volt, hogy nemcsak a forgó tárcsát, hanem annak csatlakozóját is újra használhattuk, amelyet közvetlenül a Raspberry Pi fejlécébe lehetett csatlakoztatni. Meg kell jegyezni, hogy ez a csatlakozó 3 vezetékkel rendelkezik, egy referenciaként, és 2 a Raspberry Pi diszkrét bemeneteihez. Megfelelő logikával (csatolt kódban rögzítve) ez lehetővé teszi a tárcsa elforgatásának és a kiválasztott számnak a felismerését.

Ugyanez volt a helyzet a fejhallgató kapcsolóval is, amelynek csatlakozója közvetlenül csatlakoztatható a fejléchez. Ez egyszerű logika, mivel csak referenciát és egy diszkrét bemenetet igényel.

A várakozásoknak megfelelően a fejhallgató kábele 4 vezetékkel rendelkezik, egyenként 2 db kis fogyasztású hangszóróhoz és mikrofonhoz. Mivel az általunk használt HAT 3,5 mm -es audio csatlakozóval rendelkezett a fejhallgatóhoz, végül csak csatlakoztatom ezt a 4 vezetéket a régi 3,5 mm -es férfi fejhallgató -csatlakozóhoz.

Még egy érdekes dolog, ami hasznos volt ebből a telefonmodellből, a rögzítőoszlopok a telefonbázisból. Míg egyeseket vágni kellett, hogy helyet biztosítsunk a tábláknak, másokat újra fel tudtunk használni, és biztosítani tudtuk a táblákat. Szép szünet volt, és időt takaríthat meg nekünk.

2. lépés: A dolgok összeillesztése

Összerakni a dolgokat
Összerakni a dolgokat
Összerakni a dolgokat
Összerakni a dolgokat
Összerakni a dolgokat
Összerakni a dolgokat

A koncepció egyszerű bizonyításához elegendő a Raspberry Pi és a GSM HAT közvetlen csatlakoztatása, valamint a normál fejhallgató csatlakoztatása a GSM HAT -hoz. Ezt a beállítást a MiniCom alkalmazással (Raspberry Pi soros port, amely közvetlenül a GSM HAT -hoz csatlakozik) használva tudtam gyorsan ellenőrizni, hogy működik -e a SIM -kártyám, és hogy ezzel a beállítással tudok -e hívni és SMS -t küldeni/fogadni.

Mivel másokat is érdekelhet ez (szórakoztató az új beállítás gyors tesztelése), itt vannak a tippek, hogyan kell ezt megtenni (nyilvánvalóan ugyanazon/hasonló táblák feltételezése alapján):

- Telepítse és konfigurálja az OS -t a Raspberry Pi -n (Lite OS verziót használtam, amely GUI nélkül).

- Csatlakoztassa a GSM HAT -ot (behelyezett SIM -kártyával) a Raspberry Pi -hez (győződjön meg arról, hogy a GSM HAT megfelelő UART -kapcsolóval rendelkezik a csatlakozástípus alapján, lásd a HAT kézikönyv alábbi linkjét). Ehhez a lépéshez szüksége lehet a Raspberry Pi verzióra, amelyen már van fejléc csatlakozó, a mi esetünkben fel kellett forrasztanom (mivel a Pi nullát használtam, ami alapértelmezés szerint fejléc nélkül jön). Alternatív megoldásként jobb megoldás a mikro -USB -kábel használata mindkét kártya csatlakoztatásához (mind a Raspberry Pi, mind a GSM HAT rendelkezik micro USB -vel)

- Engedélyezze a Raspberry Pi soros port használatát, ha a GSM HAT -ot soros porton keresztül csatlakoztatja (alapértelmezés szerint a Raspberry Pi port konzolként használatos). Ehhez kövesse a raspi -config utasításokat (lásd fent a "konfigurálás" linket), az interfész beállításait - az SSH és a soros beállítások engedélyezését. Ha Lite OS verziót használ, akkor lehet, hogy "csatlakoznia kell a vezeték nélküli hálózathoz", és engedélyeznie kell az SSH -t (lásd a fenti "configure" link utasításait).

- Csatlakoztassa a Raspberry Pi -t a monitorhoz és a billentyűzethez (vagy érje el a távoli ssh -n keresztül)

- A MiniCom vagy hasonló soros alkalmazás segítségével manuálisan vezérelheti a HAT -ot a megfelelő porton keresztül (a beállítási portom "/dev/ttyS0" volt, más lesz, ha micro USB -t használok). Telepítse a MiniCom programot a "sudo apt -get install minicom" paranccsal, és miután telepítette, indítsa el a "minicom -D /devtyS0" paranccsal (vagy bármelyik portot használja).

- Használja a GSM HAT kézikönyvet vagy az AT Command kézikönyvet a különböző HAT funkciók vezérléséhez (SMS küldése, hívás kezdeményezése stb.). A megfelelő csatlakoztatás után a GSM HAT "OK" -val válaszol, amikor az "AT" parancs lekérdezi. Annak ellenőrzéséhez, hogy a SIM -kártya megfelelően van -e regisztrálva, használja az "AT+CREG?" Parancsot, amely szintén "OK" -t ad vissza. A hálózati szolgáltatót az "AT+COPS?" Segítségével is ellenőrizheti, vagy saját telefonszámát az "AT+CNUM" gombbal ellenőrizheti

A többi szükséges alkatrész integrálásához egyedi 16 tűs kábelt készítettünk a Raspberry Pi és a GSM HAT számára, mivel szükségünk volt néhány más általános célú IO csapra a forgó tárcsa, a headset kapcsoló állapotának és a csengőhang meghajtásához (az automatikus indításhoz is) GSM HAT a bekapcsolás / inicializálás során). Megpróbáltam a Raspberry Pi-hez néhány, a polcon lévő szakító vezetéket használni erre a célra, és bár ez jól működött a gyors csatlakoztatáshoz és teszteléshez, nem voltam elégedett a minőséggel, és végül elkészítettem a saját 16 tűs csatlakozómat.

A Raspberry Pi és a GSM HAT közötti kapcsolat másik módja mindkét tábla mikro -USB -portja (és ismét meg kell határoznia a megfelelő UART -kapcsolót a GSM HAT -on), és ez gyorsabb és sokkal egyszerűbb megoldás lehet. Ezt könnyedén megteheti, ha megfelelő kábelt kap (ez időt és energiát takarít meg a kábelkészítéshez) - ne felejtse el megváltoztatni a szoftver/alkalmazás által használt portot.

A táblák csatlakoztatása után (mikro USB -vel) a többi egyszerű. Csak kövesse a fenti diagramot, ahol az ott bemutatott csapok az utasítás végén csatolt kódhoz vannak társítva. Kimondottan:

- A 35, 37 és 39 érintkezők (a Raspberry Pi GPIO 19, 26 és a földhöz társítva) a tárcsához való csatlakozáshoz (bemeneti érintkezők) használhatók. Az általunk választott telefon már 3 vezetékes csatlakozót épített, a piros és fekete vezetéket NO és NC csatlakozókkal, a sárga vezetéket pedig gyakori.

- A 23. és 25. csap (Raspberry Pi GPIO 11 és föld) a fejhallgató kapcsolójának csatlakoztatására szolgál (bemenet - észleli, amikor a fejhallgatót felemelik vagy leteszik)

- A 22 -es és 20 -as érintkezők (Raspberry Pi GPIO 25 és föld) a hangmodul -kapcsolóhoz való csatlakoztatáshoz (kimenet - csengetés)

- Ezenkívül előfordulhat, hogy a 19. tűt (GPIO 10) a GSM HAT főkapcsolóhoz kell forrasztani, mivel a HAT egyes verziói nem indíthatók el csak bekapcsolással, hanem szükség van valakire, aki manuálisan megnyomja a HAT kapcsolóját.

- A telefon oldalán lecsupaszítottuk a belső fejhallgató 4 vezetékes kábelét, és 3,5 mm -es audio jack csatlakozóhoz kötöttük a régi fejhallgatót. A piros/zöld vezetékek a fejhallgató mikrofonjához, a sárga/fekete vezetékek a fejhallgató hangszórójához tartoznak. A használt 3,5 mm -es jack oldaltól függően előfordulhat, hogy ki kell találnia a megfelelő vezetéket (a fenti kivonat szerint a GSM HAT fejhallgató bemenethez), de a mi esetünkben a mikrofon árnyékoláshoz és piroshoz volt csatlakoztatva, míg a hangszóró vezetéke zöld és kék volt. Végül csatlakoztassa a 3,5 mm -es aljzatot a GSM HAT fejhallgató bemenetéhez.

3. lépés: Végső csomagolás és szimulált "csengetési hatás" hozzáadása

A végső csomagolás és hozzáadás szimulálva
A végső csomagolás és hozzáadás szimulálva

Míg a fenti képen látható végső belső csomagolás viszonylag ügyesen néz ki, sok bonyolítást és különböző lehetőségek kipróbálását igényelte. A fő korlátok a forgó számlap alatti hely és a merev csatlakozók voltak, és az egész folyamat olyan volt, mint a rejtvény összerakása.

Nagy szerencse volt, hogy több olyan bejegyzést is használhattunk, amelyek már léteztek a telefon belsejében (a többi bejegyzést eltávolítottuk a Dremel eszközzel), valamint a táblákat és a hangszórókat. Ez azonban korlátozta a rendelkezésre álló hely többi részét is, ami végül arra késztetett bennünket, hogy elhagyjuk az eredeti elképzelést a belső újratölthető áramforrás hozzáadásáról.

Ami a "gyűrűt" illeti, végül elemmel működő írható hangmodult vásároltunk. Opcióként (amikor a táblát mikro-USB-n keresztül csatlakoztatja) van egy nem akkumulátoros verzió, amely közvetlenül a Raspberry Pi 5V-os fejlécéről táplálható.

Mindkét esetben el kell távolítani a hangmodul külső vezérlőkapcsolóját, és a vezetékeket a GPIO pin + test egyikéhez kell csatlakoztatni. A csengőhang modulba programozása nagyon egyszerű, csak csatlakoztassa azt a számítógéphez, és töltse le azt az mp3 fájlt, amelyet csengetési művelethez szeretne használni. Itt a link egy szép webhelyre, sok régi csengőhanggal.

4. lépés: Szoftver és végső integráció

Szoftver és végső integráció
Szoftver és végső integráció
Szoftver és végső integráció
Szoftver és végső integráció

A fenti blokkdiagram bemutatja az összes fő összetevőt és kapcsolataikat. Lényegében a megvalósításhoz 3 különálló bemenetre és legalább 1 diszkrét kimenetre van szükség (2 DO -t használtunk, mivel a GSM HAT verziója, amelyet kaptunk, nem indul el automatikusan a HAT gomb megnyomása nélkül, ezért a vezetéket ehhez a gombhoz kell forrasztani, hogy kényszerítsük a HAT indítása, amikor a telefon be van kapcsolva).

Ami a kódot illeti, a Python 2.7 -ben írták, így ha a 3.x és újabb verziókat telepíti/használja, előfordulhat, hogy néhány dolgot meg kell változtatni (nyilvánvaló a „print” utasítás). A kód megfelelő működéséhez néhány Python könyvtárat kell először hozzáadni, például:

- gpiozero (a Raspberry Pi GPIO interfészhez szükséges)

- re (reguláris kifejezés könyvtár - a bejövő SMS -üzenetek elemzéséhez telepítse, ha nem része az alapértelmezett Python -telepítésnek)

- soros (a GSM HAT -hoz való csatlakozáshoz - akkor is szükséges, ha micro USB -n keresztül csatlakozik, telepítse, ha nem része az alapértelmezett Python -telepítésnek)

Ezenkívül a csatolt kódban 2 hely van, amelyet módosítani/módosítani kell a végső megvalósítástól függően (vagy 3 hely, ha különböző GPIO -csapokat használnak). Az első a számhoz kapcsolódik, amelyet üzenetek továbbítására szeretne használni:

# *********************************** FORWARDING_NUMBER = "5551234567" # tegye ide azt a telefont, ahová üzenetét szeretné továbbítani

# ***********************************

A második pedig a soros port beállítására vonatkozik:

# ***********************************

# SIM868 inicializálás és rutinessim868 = serial. Serial ("/dev/ttyS0", 115200)

# győződjön meg arról, hogy a /dev /ttyS0 megfelelő a beállításhoz

# ***********************************

A kód állapotgépként készült, a fenti ábrán leírtak szerint. A telefon legtöbbször IDLE állapotban van, és várja az eseményeket: 1. Bejövő hívás (amely a telefont RING állapotba hozza)

2. Bejövő SMS -üzenet - amely automatikusan átirányítható egy másik telefonra

3. A fejhallgató felemelése, előkészítés a tárcsázásra (a telefon DIAL állapotba kerül)

4. Speciális karakter tárcsázása fejhallgató felemelése nélkül (az aktuális kód szerint, a "#" leállított telefon tárcsázása)…

Sok megjegyzés van a kódba ágyazva, amelyek segíthetnek az olvasásban és megértésben. Néhány dolgot befejezetlenül hagytunk, mint például a gyorshívási lehetőség hozzáadása, az állapotüzenet küldése, vagy…

Ami azt illeti, hogyan kell automatikusan futtatni a kódot áramellátás esetén, úgy döntöttünk, hogy szolgáltatásként implementáljuk, amelyet az itt leírtak szerint lehet megtenni. Egyszerűen tegye a következőket:

- Töltse le az alábbi csatolt fájlokat: "rotaryPhoneStateMachine.txt" és "myphone.txt", és nevezze át őket "rotaryPhoneStateMachine.py" és "myphone.service" fájlokra (valamilyen furcsa ok miatt az Instructables szerver nem teszi lehetővé bizonyos fájltípusok feltöltését)

- helyezze a "rotaryPhoneStateMachine.py" fájlt a /home /pi mappába

- helyezze a "myphone.service" fájlt a/etc/systemd/system mappába

- engedélyezze a szolgáltatást a "sudo systemctl enable myphone.service" paranccsal (minden tesztelése után)

Ajánlott: