Micropython code to implement a GSM mobile phone
github.com
github.com
The UI reminds me of Apple's iPhone prototype: https://thenextweb.com/apple/2014/10/05/apple-skankphone-bui...
Wow those UI's are dated, granted article is from 2014 but damn, looks like something I would have made with Touch Develop
Did anybody try to build a GSM (UMTS, LTE, ...) client, say, with a FPGA and a transceiver, or with a SDR? I know high-frequency stuff is not exactly DIY, but there should be some off-the-shelf generic hardware by now that would be able to run such a stack, I would think.
https://github.com/skorokithakis/A6lib
Hopefully the MicroPython ecosystem will expand with efforts like this one, how did you find performance? I'm always worried about memory usage with μPython.
Considering it's striking a pretty nice balance between high-level features and low overhead, I'd say it might be worth it, especially if you're aiming at a very hackable phone.
This is definitely going on my "list of things to do when I have too much time".
Micropython is, in fact, extremely parsimonious with memory in it's native state, and you have reasonable options to get even tighter if you like, at the expense of portability.
As it is, most of Micropython's portability quirks come from trading off 100% CPython compatibility to achieve a small SRAM footprint.
Micropython byte code is not particularly fast in an absolute sense, but is very good all things considered in the context of a microcontroller. I find for really performance critical stuff a few lines of inline asm (which Micropython supports natively) often is sufficient. And for the rest, a C module is always an option.
In terms of 3G, 4G and LTE modems, they’re a little harder to come by quite so readily, and are a damn sight more expensive too! You can pick up an 800L for £1-1.50, for 3G it’s close to £20-30 from what I remember.
So on these networks, this module will simply not work or you are always in roaming.
[1]: https://www.business.att.com/content/other/2G-Sunset-FAQ_201...
So yes it's only 2G, but you've got the potential for SMS and maybe even 512kbps data. No idea about an audio channel (voice calls).
Whilst 2G is old, it's supprisingly battle tested and goes through walls quite well. A year ago we were told to expect the phasing out of 3G networks and to expect carriers to expand 4/5G with 2G as fallback.
Also, you gotta bear in mind, this module can be bought for £5. Getting a PCI-E 2/3/4G micro-pci card for my laptop is priced at closer to £200, so this is a great starting place. Expanding to a module that supports multi-networks either later or as an upgrade wouldn't be overly difficult - this is just a super cheap way of being able to test with real SMS, real networks and real recipients.