Some concrete hardware components for creating a mobile phone powered by FreeBSD.

Hello.

some time ago I've started an abstract thread to express my desire to build a phone powered by FreeBSD. At that time I had nothing of concrete to show. In the meantime I've did my research and I found some hardware components to start a DIY mobile phone with FreeBSD installed :

I think we can start from that base tutorial :


0) https://www.instructables.com/OURphone-an-Open-Source-Linux-Smartphone/


but making a lot of improvements,since the base os for us is FreeBSD. Some of those modifications include :


1) SOC : Raspberry Pi Zero W. Why this soc ? go to point 6.

2) the case could be made of carbon fiber. Not of wood :)

3) in my dream there isn't any touchscreen. I love a physical keyboard. I think that to connect some kind of physical keyboard to the soc we will need to port an open source Linux driver to freebsd. Go to point 6

4) I think FreeBSD is already well supported by the raspberry,so most of the work is done

5) the most difficult part : maybe there is the needing to port the Linux driver on FreeBSD for the "SIM7600G-H 4G HAT For Raspberry Pi, LTE Cat-4 4G / 3G / 2G Support" : I need to check if this component can be used on the Raspberry Pi Zero W.

6) memory LCD + physical keyboard for pi :


ok. let's talk about this. We have some concrete idea and components to talk about. I think it's enough geeky and it will become even more geeky.

NB : I'm talking about a DIY phone,created for a small group of lovers,software and hardware engineers. I may be wrong but to create the phone that I'm talking about is not so difficult. It can't be a ready to go commercial product. It is not my goal to make a commercial product. I want to create an amateur project. At least for the moment.
 
You have to understand, without drivers; you have nothing. The reason why projects like PureOS are able to provide something usable is due to the existing driver infrastructure linux already has; many projects piggyback off of this advantage. Everything else above that can be done by independent developers; like display servers, toolkits, UI frameworks, etc.

You have to research a way to provide drivers for the hardware you're using with FreeBSD. Chicken and egg problem, of course. But it seems your will is strong; so you'll probably find a way.
 
You have to understand, without drivers; you have nothing. The reason why projects like PureOS are able to provide something usable is due to the existing driver infrastructure linux already has; many projects piggyback off of this advantage. Everything else above that can be done by independent developers; like display servers, toolkits, UI frameworks, etc.

You have to research a way to provide drivers for the hardware you're using with FreeBSD. Chicken and egg problem, of course. But it seems your will is strong; so you'll probably find a way.

Sure I know. How much hard is to port a driver from Linux to FreeBSD if there is the linux source code available ? I will start a crowd funding champaign to hire the developers to port the linux drivers to freebsd. But maybe I find some developers on the internet who wants to work on the drivers porting for free. Sometimes happens when a project is cool. Do you like the form factor of the phone ?
 
That's a good question. I'd start with what kind of specific hardware you are trying to target; the ARM world is terribly inconsistent; from chipset drivers to ACPI, to boot ROMs. If you want to start off with the Pinephone or Google Pixel, for example; then you'd have to find a way to port (or atleast convert) drivers for that particular chipset to FreeBSD. I don't think there's a LinuxKPI layer for ARM devices yet; could a project on its own, who knows. From my limited knowledge; that's probably where you'd start.
 
ok. What's the most piece of hardware FreeBSD compatible that you will use instead of the "SIM7600G-H 4G HAT For Raspberry Pi, LTE Cat-4 4G / 3G / 2G" ? The easiest way is to change the hardware component directly,but the new component should fit well with the other components.
 
Maybe this : https://techship.com/products/category/lte-ngff-m2/

not sure at all if it can be connected to the Raspberry Pi Zero W.

Anyway,I'm reading here :

https://forums.freebsd.org/threads/...odem-m-2-interface-suitable-for-laptop.79402/

and I have the strong sensation that I can find a compatible LTE modem which run with FreeBSD and with the Raspberry Pi Zero W.

I also see that you gave a lot of good hints to the user,but now you are trying to discourage me. It's not good. You could try to be more propositive with me. I'm putting a lot of efforts trying to assemble the right hardware components for my DIY FreeBSD phone.
 
I also see that you gave a lot of good hints to the user,but now you are trying to discourage me
I call it realistic expectations.
For sure we can run a cellular data modem on Pi via USB. Maybe limited to 1MB/sec because of protocol.

That is a far leap to creating a FreeBSD mobile phone.

Not discouraging you but you say you want a phone not cellular data services. Maybe you could rig a SIP/VOIP phone from that.
 
"SIM7600G
Is might be supported.
We have a similar device in usbdevs
product ALINK SIM7600E 0x9001 LTE modem

These SIMCOM modules use a protocol that works on FreeBSD.

The Pi Cellular Hat would take an overlay to use. I am not sure have drivers for all the features.
 
Researching the WaveShare SIM7600G Pi Hat I see they are using analog out jack for audio.

Have you researched the LTE bands used by that modem?
Its the global version and may not meet your needs.
There is a SIM7600E for your market. That might be a better choice depending on your tower channels.
They make a Pi hat with SIM7600E

You would have to dial out from the AT+ Command Prompt.
 
Researching the WaveShare SIM7600G Pi Hat I see they are using analog out jack for audio.

Have you researched the LTE bands used by that modem?
Its the global version and may not meet your needs.
There is a SIM7600E for your market. That might be a better choice depending on your tower channels.
They make a Pi hat with SIM7600E

You would have to dial out from the AT+ Command Prompt.

it requires Arduino. I plan to use the Raspberry Pi Zero W because it is more like a small pc and it allows to find more interesting components than Arduino. For example I like the idea to use the BeepBerry (small LCD screen + physical keyboard,that has a retro and geek style and taste,like FreeBSD has)

Can this module can be attached to the Raspberry Pi Zero W :

https://www.simcom.com/product/SIM7600G-1.html

?
 
Can this module can be attached to the Raspberry Pi Zero W :
I can't answer as I don't own one.
I can say SIMCOM uses the exact same processor as Sierra Modems. Firmware looks similar too.

This statement in the literature you send concerns me:
MBIM to Win8
What does that even mean? MBIM is a modem protocol but "to Win8"?? We don't support MBIM it is Windows protocol.

I pointed out that SIM7600E is in our usbdevs file. That is for usb devices. So something works here.
The branding is different (VendorID) but I am willing to be it is same x09001 PID module.

If this module is like Sierra Module, you can switch between various supported protocols..
I don't know.

The site you sent is for the raw SIM7600 chip. You need a carrier board or cape for use.
 
When you explain concepts you are too much technical for me. I don't understand everything. I try to guess and to use the common sense to understand what to do next. So,can you try to explain things using a language more tailored for the newbies ? thanks.
Check this out :


tell me if it can help or not.
 
Here is what I have learned about the SIM7600.
The last letter denotes countries supported.

SIM7600A = North America
SIM7600CN = China
SIM7600SA = South America
SIM7600G = Global
SIM7600E = Europe

These are based on LTE Frequescies used in these regions.

Global sounds ideal but look at the frequencies. Not many supported North American bands.
 
Buy a pinephone and use whatever OS it uses...

It will never happens. I'm here to learn,anyway. Not to buy and use something without understanding how it works. Don't focus your attention on me,to what I should do or not,out of the scope of the thread. Try to make a good introspection inside you. Try to get the best that the other persons can suggest to you to improve your social skills. If I say that you are using a too technical language,try to understand if its true,if this can damage you in some situation,if you can improve your communication and so on.
 
That last Pi Hat is what you would need. The module is in usbdevs and might work oob.

40 pin header is 40 pin header. Pi 3 or Pi Zero.
They only use 4 pins from it for this Hat. Power,Ground, RX,TX.

I am not guaranteeing it will work but it should. All signs look positive.
 
Now,the point is that If I want to use the Raspberry Pi,I should cut the USB ports and the ETH port because with them the SOC is too fat. I don't want to create a double hamburgher phone :D. I would like to know if I can use that hat with the Raspberry Pi Zero W,that's slimmer. Thanks.
 
FWIW, crap-can RPI and look at professional SOC/SOM. I could write volumes on why to stay away from anything having to do with RPI or RPI-foundation...a mjor issue being that it is is NOT frue FOSS, but instead a sidechannel ARM core running on a proprietary ASIC, and the security implications of that mean that noone I would call a professional would go anywhere near an RPI.
 
should I cut the USB ports and the ETH port because...
I would get it working first before cutting anything. I have no idea how you get analog audio out from these modules.
Usually this function is called VoLTE. Voice over LTE and many carriers do not support it.
So while SIM7600 probably works for data I have no ideal at all about voice.

I see OpenBSD supports the module under its proper VendorID.

Yep you will need PPP for this to work.
 
I bet voice would sound amazing over a 1MB/sec Max PPP connection.

Can you hear me now?
So what drivers / Protocol does Android / Linux uses? What drivers/protocols will he need to convert to hopefully have faster speed in FBSD or BSD in general as it seems only PPP is supported? Phishfry

PPPDirect-IPNCM
ECMRNDISMBIM
QMI

Above is from the ROOter link you reference....
 
Back
Top