Page 1 of 1
Pyboard based GSM phone.
Posted: Fri Nov 10, 2017 9:39 pm
by jeffm
I have implemented a basic GSM phone using a pyboard, the LCD160CR display skin and a SIM800L GSM module. The phone implements voice calls and composing, sending and receiving SMS messages. It operates from a small (800mah) Lipo battery which lasts for around a week in standby mode.
I looked at using @pythoncoder’s impressive LCD160CR UI library, however, it proved to be overkill in terms of resources as the phone interface is primarily buttons and text labels. You really need to use a stylus (i.e. matchstick) to use the SMS text entry keyboard. The code and details can be found at:
https://github.com/jeffmer/micropython-upyphone
The following images give a flavour of the touch screen interface. More together with an explanation of the operation can be found in the github repository.
- incomingsms.jpg (43.89 KiB) Viewed 10829 times
- readmessage.jpg (42.99 KiB) Viewed 10829 times
- writemessage.jpg (45.35 KiB) Viewed 10829 times
Re: Pyboard based GSM phone.
Posted: Sun Nov 12, 2017 10:29 am
by rcolistete
Fantastic ! A GSM phone with MicroPython and only 100 KB of free RAM !
Re: Pyboard based GSM phone.
Posted: Mon Nov 13, 2017 8:40 am
by pythoncoder
That is most impressive and must have taken a good deal of effort. I'm amazed you managed to fit a qwerty keyboard on that display in portrait mode. And that the touch overlay is sufficiently precise to support it.
Perhaps there is a case for a mini-gui for the LCD160CR supporting a subset of the features of mine but consuming less RAM - but when you write a library it's hard to assess how many people actually find it useful.
Re: Pyboard based GSM phone.
Posted: Mon Nov 13, 2017 10:03 am
by jeffm
@pythoncoder
And that the touch overlay is sufficiently precise to support it.
The accuracy is outstanding and much much better than some other cheap resistive touch screens that I have. There is occasionally some jitter on touch but it quickly settles on the pressed key. The trick is to ensure that the desired key is highlighted before releasing it.
Re: Pyboard based GSM phone.
Posted: Wed Nov 15, 2017 11:06 pm
by SpotlightKid
This project was also highlighted in one of the Python newsletters I have subscribed too. Very impressive!
Re: Pyboard based GSM phone.
Posted: Fri Nov 17, 2017 12:51 pm
by rcolistete
Re: Pyboard based GSM phone.
Posted: Fri Nov 17, 2017 8:01 pm
by jeffm
Yes, I saw this quite bizarre article. The developer Alexei mentioned in the article has a Github account which has a forked version of my repository as indicated in
https://github.com/AlekSi/micropython-upyphone.
Re: Pyboard based GSM phone.
Posted: Wed Nov 22, 2017 3:45 pm
by jeffm
Now updated with internet access over GPRS. The sim800l now includes a
urequest like interface to the SIM800L module's HTTP AT interface. This allows both http and https requests. Using these I have implemented two example applications. The first fetches and displays currency exchange rates - the code is very similar to that posted by @mcauser for his Bitcoin display. The second application fetches and displays weather information using the wunderground api - see below:
- weather.jpg (39.82 KiB) Viewed 10583 times
The icon is a JPEG converted from the usual wunderground GIF icons. It would be nice to be able to display GIFs directly on the LCD160CR - any suggestions as to how best to do that?