Commenting on this post I got interested in the capabilities of the i.m8m and it’s interfaces. I would like to know which interface purism wants to use for which components. As far as i can see there are the following planed components which need to be connected.
Wi-Fi / BT
WWAN (modem) probably including GPS
front and rear camera
sensors (Accelerometer, Gyroscope, Compass, Ambient Light, Proximity)
The interfaces available on the i.m8x can be found here
Some interfaces are pretty straight forward to match. Like RAM, display and cameras. There are specialised connections only for this purpose. The mass storage also seams to be clear but i’m not 100% sure. Should be eMMC 5.0, of which the i.mx8m supports 2. I think one for the internal 32gb and one for the microSD slot. Sadly it does not support the newer and fast UFS interface which seams to be common in modern smartphones.
This leaves at least 3 componets which need highspeed connection, Wi-FI/BT, WWAN and the USB-C connector. As i understood the AMA from @todd-weaver the WWAN will be connected via an M.2 expension port. These support many interface from I2C over USB 2.0 and 3.0 to PCIe with 1-4 lanes. On my breve research on WWAN cards it seams most of them are using USB, the progress report 5 of @nicole.faerber also stated that the modem is using the USB interface. So i assume on of the two USB interface available will be connected to the M.2 slot. The second obviously has to go to the external USB-C port. This leaves the WiFi component. On the i.mx8m there are now only left 2 PCIe lanes and the Gbit Ethernet adapter, as SPI, UART and I2C seams to slow for WiFi but good for buttons and sensors.
So will the WiFi be connected via PCIe and will it be soldered on the board?
And what happens to the second PCIe lane?
I would like to see it either exposed to the M.2 slot for replacement with small upcoming SSDs like this one or to expose it to the USB-C port for thunderbolt support. Thought i’m not sure if thunderbolt with just one PCIe lane is legit.
Am I missing something? I would like to know what is planed. Maybe you already have a draft for the schematics? I would love to see a blog post on that.
@nicole.faerber Could you comment on which interfaces are used for which parts now that the devboard is finisched? Would really like to know the specs for the components especially m.2 solts(s) and usb-c connector.
Yes, I think I can comment on that.
The modem in the M.2 slot, yes, it will connected to a USB host port. For the WiFi/BT we intend to use the more power saving SDIO interface. We will not use PCIe at all since this consumes way too much power. The dev kit will feature a USB-C connector and will be capable of role switching. Since the i.MX8M only has two SDIO interfaces but we will need three devices (WiFi/BT, eMMC internal storage and a SD card slot) we have added a combined USB-HUB which integrates a SD storage card interface.
Other peripherals will be attached via I2C or SPI. The dev kit will also feature a HDMI connector. The internal display will be connected via MIPI DSI, a camera via MIPI CSI. The dev kit will also include a battery holder and charging circuit for handling 18650 LiPoly cells which are common in vaporizers and such devices, so easy to get - due to shipping restrictions we will not include such a cell with the kit but they are easy to get. The kit will also work without a battery.
Please note that these specs are subject to change - this is what we plan right now and what we need to verify once we receive our first prototype boards.
Thanks alot for your comment!
So WiFI and internal storage get the battery saving SDIO, which is think is a nice choice as probably used most often. So external SD gets USB from the Hub because there are also only 2 USB 3.0 ports on the i.mx8. So which components are sharing a port an which gets the exclusive one? Exclusive one for the M.2 modem i expect?
Which roles will the usb-c port have. USB 3.0, charging, power deliviery, display(hdmi, displayport, vga), thunderbolt probably not for power reasons and only having two pcie 2.0 ports.
Is USB-C capable of usb and display transfer at the same time? I ask with the convergence in mind. I tried it with ubuntutouch and a nexus 5 and noticed that mouse and keyboard needed to be connected via bluetooth as only usb or hdmi could be connected to the port at the same time. Would be really great if the usb-c port on the librem 5 could handle both at it would be much more of an docking connector.
Do you have any board schematics of the dev board to release?
So i looked up USB-C features for mode switching my self a little bit. From what i understood vendores even could define their own alternate mode so there should be many possibilities. Common and defined modes from Wikipedia are:
- Normal USB 1.1/2.0/3.x
- Audio Adapter Accessory Mode
- Alternate modes:
- DisplayPort Mode
- Mobile High-Definition Link (MHL) Mode
- Thunderbolt Mode
- HDMI Mode
So for me Thunderbolt is the best as it also supports displayport and USB3 and HDMI can be converted by common adapert. A thunderbolt 3 port seams unlikely as to much power consumption an most importantly no pcie3.0 lanes on the i.mx8. The Second best seams to be the displayport mode as it still supports USB3 and displayport at the same time. It depends on how many of the 4 data lines are used for displayport. 4k needs all 4 lanes so no USB 3 but USB 2.0 would still be possible. But it would be capable of 2 FullHD screens and USB 3.1. HDMI is the worst in my opinion as it doesn’t allow any USB 3 support because it needs all 4 data lines. MHL is bettern than HDMI as it bundles the HDMI lines an allows USB 3 support but also needs special adapters or support in the display so there is no real advantage to displayport + adapter.
So please use the displayport alternate mode.
All modes seam compatible with Power Delivery which i think is important for quick charging.
The Audio Adapter Accessory Mode is a mode for phones without 3.5mm jack i think. It can transfer this analog signal but than only The old slow charging with 500m 5V is possible. But if there is no real costg to conect this mod it might be nice to have as i imagine usb-c to come to market soon as more and more phones drop the big 3.5mm jack.