Ce projet a pour objectif de produire un smartphone basé sur un Raspberry Pi. Il utilise une interface à écran tactile Adafruit et un module GSM/GPRS Sim900 pour passer des appels téléphoniques. C'est plus une preuve de concept pour voir ce qui pourrait être fait avec un facteur de forme relativement petit avec des composants prêts à l'emploi (bon marché).
Le PiPhone est composé:
<WRAP tip>Le seul problème avec cette configuration est la chaleur. Il fait un peu chaud autour du processeur si on laisse l'appareil allumé pendant plusieurs minutes, car il y a très peu de circulation d'air. Avec un petit ventilateur faisant circuler l'air autour de lui, on eput le laisser allumé pendant de longues périodes pendant le développement, et il était frais au toucher. De plus, l'en-tête à 6 broches du module GSM dépasse un peu, alors on peut dessouder l'en-tête et à souder les fils directement sur le PCB. Cela empêcherait le connecteur de trop dépasser et serait mieux placé lorsqu'il est placé sur une surface plane.<WRAP>
Étant donné que l'écran PiTFT est assez petit, il faut utiliser des programmes d'interface utilisateur personnalisés. Pygame est de loin le moyen le plus simple de le faire.
Installer pip et pygame
sudo apt-get install python-pip sudo apt-get install python-pygame
SDL 2.x et SDL 1.2.15-10 présentent de sérieuses incompatibilités avec l'écran tactile. On peut forcer SDL 1.2 en exécutant un script.
Créer le fichier installsdl.sh
et y coller le texte suivant :
#!/bin/bash # activer les sources de paquets wheezy echo "deb http://legacy.raspbian.org/raspbian wheezy main" > /etc/apt/sources.list.d/wheezy.list # définir stable comme source de paquet par défaut (actuellement buster) echo "APT::Default-release \"stable\";" > /etc/apt/apt.conf.d/10defaultRelease # définir la priorité de libsdl de wheezy plus élevée que le paquet buster echo "Package: libsdl1.2debian Pin: release n=buster Pin-Priority: -10 Package: libsdl1.2debian Pin: release n=wheezy Pin-Priority: 900 " > /etc/apt/preferences.d/libsdl # installer apt-get update apt-get -y --allow-downgrades install libsdl1.2debian/wheezy
Exécuter le script
sudo chmod +x installsdl.sh sudo ./installsdl.sh
cela forcera l'installation de SDL 1.2
Clôner le dépôt:
git clone https://github.com/climberhunt/PiPhone.git
Usage:
cd PiPhone sudo python piphone.py