Working a lot with a microscope gives some challenges. You need to sit exactly in front of the microscope to get a good view. You get uncomfortable after a while. How to fix this? With the new VRScope!
The Altran Innovation Budget made it possible to buy a microscope (which you can see here).
For that we both (Guus and Marco) bundeled our budget to be able to buy this nice piece of equipment. Guus has an awesome private Makerspace where we both have 24/7 access to. All our shared equipment is placed here. The project idea is to attach a set of camera’s to the microscope and view the video stream through a Google kind of cardbox device. We also ordered the RPI Compute module, which makes it possible to make the device super light. Now we have to find the display to go with it. Normally you place a telephone in the cardbox, but this makes things kind of heavy. We want to make something with awesome resolution which is also light and comfortable.
Raspberry Pi Compute Module v3.0
MIPI CSI interface
The CSI (Camera Serial Interface) gives the possibility to connect a camera to the board. It is a standard from the MIPI organisation. Sorry to see it is a closed standard, but some documentation is leaking out, let’s find it.
Camera containing CSI transmitter and CCI slave | Controller containing CSI receiver and CCI master | |||
CSI transmitter | high speed link | CSI receiver | ||
---|---|---|---|---|
Data3+ (optional) | Data3+ (optional) | |||
Data3- (optional) | Data3- (optional) | |||
Data2+ (optional) | Data2+ (optional) | |||
Data2- (optional) | Data2- (optional) | |||
Data1+ (optional) | Data1+ (optional) | |||
Data1- (optional) | Data1- (optional) | |||
Data0+ | Data0+ | |||
Data0- | Data0- | |||
CCI slave | Control Link | CCI master | ||
SCL | SCL | |||
SDA | SDA | |||
Besides the standard implementation there is sometimes GPIO to directly control things.
It looks like CSI-2 D-PHY is used looking at the wire configuration. In the beginning I thought that both CSI’s were identical, but that is not true. CSI1 has the full amount of connections (4 lanes), but the CSI0 only has 2 lanes available. this means that CSI0 has alimited amount of resolution possible.
CSI0 (D-PHY v1.x?)
CAM0_DP0, CAM0_DN0 | Differential pairs Data lane 0 .. 1 1.5 Gbit/s per lane |
CAM0_DP1, CAM0_DN1 | |
CAM0_CP, CAM0_CN | Clock lane |
CD0_SCL, CD0_SDA | Camera Control (using CameraCommandSet CCS?) Shared between camera and display |
CAM0_IO0 | 2 GPIO’s |
CAM0_IO1 |
CSI1 (D-PHY v2.0?)
CAM1_DP0, CAM1_DN0 | Differential pairs Data lane 0 .. 3 1.5 Gbit/s per lane |
CAM1_DP1, CAM1_DN1 | |
CAM1_DP2, CAM1_DN2 | |
CAM1_DP3, CAM1_DN3 | |
CAM1_CP, CAM1_CN | Clock lane |
CD1_SCL, CD1_SDA | Camera Control (using CameraCommandSet CCS?) Shared between camera and display |
CAM1_IO0 | 2 GPIO’s |
CAM1_IO1 |
The reason probably is that the SOC only supports this amount of lanes. Maybe in the future the SOC will support more lanes on both camera interfaces. Until that time I might need to use 2 RPI CM’s.
DSI Display Serial Interface
Ways to connect a display to the CM3 is to use a DSI screen. Why not try the iPhone 4S display. I have a 4S which is broken, I might be able to connect this screen, would be awesome! There should be a connector to get it to work, on the internet I found a link to a diverse number of different connectors. I am not sure yet which will fit. First I need to get my hand on the iPhone and see how many pins it has. Maybe find out the pin layout and go from there.
DSI0
DSI1
On the left you see the normal RPI, on the right you see the CM3, Camera adapter and Camera board (NoIR version). The CM3 setup will be a lot smaller, and lighter 😀
Bill of Material (2017-11-27):
Article | ArticleNumber | Amt | Price € | Total € |
---|---|---|---|---|
SM-4TP stereomicroscoop 7-45x | SZM7045NT-STL2 | 1 | 695,00 | 695,00 |
Dimbare ledring voor microscopen | LEDR60 | 1 | 49,00 | 49,00 |
Barlow lens 0.5x | SM05 | 1 | 39,00 | 39,00 |
SubTotal Eleshop | 1 | 783,00 | ||
Article | ArticleNumber | Amt | Price € | Total € |
Raspberry Pi Compute Module 3 Development Kit | KW-1783 | 1 | 224,95 | 224,95 |
Raspberry Pi NoIR Camera Board V2 – 8MP – Infrarood Camera | KW-1703 | 2 | 29,95 | 59,90 |
Flexkabel voor Raspberry Pi Camera Board – 100cm | RPI-FLXCBL100 | 2 | 4,95 | 9,50 |
SubTotal Kiwi Electronics B.V. | 294,75 | |||
Total | 1077,75 |
iPhone displays
For the screen we need a high PPI value but we do not explicitly need the 16:9 ratio. I think the iPhone 4 screen is a nice place to start. Current iPhone display specs:
Phone | Model | Size | Pixels | Ratio | PPI |
---|---|---|---|---|---|
iPhone 1st Gen/2G | A1203 | 3.5″ | 320 x 480 | 3:2 | ~165 |
iPhone 3G | A1241 | ||||
iPhone 3GS | A1303 | ||||
iPhone 4 | A1332, A1349 | 3.5″ | 640 x 960 | 3:2 | ~330 |
iPhone 4S | A1387 | ||||
iPhone 5 | A1428, A1429 | 4.0″ | 640 x 1136 | 16:9 | ~326 |
iPhone 5c | A1456, A1507, A1526, A1529, A1532 | ||||
iPhone 5s | A1453, A1457, A1528, A1530, A1533 | ||||
iPhone SE | A1662, A1723, A1724 | ||||
iPhone 6 | A1549, A1586, A1589 | 4.7″ | 750 x 1334 | 16:9 | ~326 |
iPhone 6s | A1633, A1688, A1700 | ||||
iPhone 7 | A1660, A1778, A1779, A1780 | ||||
iPhone 8 | A1863, A1905, A1906 | ||||
iPhone 6 Plus | A1522, A1524, A1593 | 5.5″ | 1080 x 1920 | 16:9 | ~401 |
iPhone 6s Plus | A1634, A1687, A1699 | ||||
iPhone 7 Plus | A1661, A1784, A1785, A1786 | ||||
iPhone 8 Plus | A1864, A1897, A1898 | ||||
iPhone X | A1865, A1901, A1902 | 5.8″ | 1125 x 2436 | 19.5:9 | ~458 |
Possible screens to connect to the RPI family:
http://nl.farnell.com/raspberry-pi/raspberrypi-display/raspberry-pi-7inch-touchscreen/dp/2473872