Date: Tue, 19 Mar 2019 00:01:22 +0000 From: Kaya Saman <kayasaman@optiplex-networks.com> To: ticso@cicely.de Cc: freebsd-arm@freebsd.org Subject: Re: Options for FBSD support with LCD device - new project Message-ID: <de6e49f8-3d83-3c03-a4df-30ba94acca95@optiplex-networks.com> In-Reply-To: <20190318232530.GE57400@cicely7.cicely.de> References: <CAF19XBLAjP4yKtGSBzA4QdT346Bnbnr8MutQNZgmERLbJkWAyA@mail.gmail.com> <8df902f6-20a3-31c4-71ac-91f5d5fdf50d@optiplex-networks.com> <0ecf23e129ca7ac6a92a01bbb34c03f1ac8c6dc8.camel@freebsd.org> <e5d42c67-e1f2-ede1-965f-c89226de46da@optiplex-networks.com> <89f5b8d1ab0614ac8d88b5d5f1afc63e640c3c17.camel@freebsd.org> <4EB5C6C1-7DB9-4DEE-BB23-CD1259581271@jeditekunum.com> <004ddba628b94b80845d8e509ddcb648d21fd6c9.camel@freebsd.org> <C68D7E6E-03C1-448F-8638-8BD1717DBF44@jeditekunum.com> <ac7d434f16f3a89f5ef247678d6becdbeded5c3f.camel@freebsd.org> <35b3045f-817c-5645-d78b-f20b08671850@optiplex-networks.com> <20190318232530.GE57400@cicely7.cicely.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 3/18/19 11:25 PM, Bernd Walter wrote: > On Mon, Mar 18, 2019 at 08:57:28PM +0000, Kaya Saman wrote: >> <snip> >> >>>>> I'm not sure what would give you that impression about i2c and >>>>> spi. I >>>>> belive they're well-supported on virtually every arm SOC we have >>>>> any >>>>> support for at all (except maybe amlogic/odroid and exynos, both of >>>>> which are rapidly bitrootting from neglect). We have command-line >>>>> tools to read and write data to i2c and spi devices from userland, >>>>> as >>>>> well as programmatic interfaces using ioctl() for higher- >>>>> performance >>>>> needs like a rasterized spi display. >>>>> >>>>> I'm the person who does most of the i2c and spi driver work for all >>>>> of >>>>> freebsd (not just arm), and it's something we use heavily in our >>>>> products at $work, so I tend to stay on top of it. >>>>> >>>>> To enable i2c or spi on any given platform, you usually do have to >>>>> touch some FDT code along the way. That's because almost always, >>>>> the >>>>> pins used by i2c or spi can be used for other things as well, so >>>>> the >>>>> default config (which we get by importing fdt source code from >>>>> linux) >>>>> usually isn't set up to enable those devices. >>>>> >>>>> To enable them you typically have to write and compile a small dts >>>>> overlay and set a variable in /boot/loader.conf to have that >>>>> overlay >>>>> loaded at boot time. None of that is hard, but there is quite a >>>>> bit to >>>>> explain, more than I can do right here in this email in the middle >>>>> of a >>>>> $work day. I guess maybe I should write a wiki page for it. >>>>> >>>>> -- Ian >> Finding this thread: https://forum.pine64.org/showthread.php?tid=6232 >> >> It seems that there is an official image for pine64 platform: >> http://ftp.freebsd.org/pub/FreeBSD/releases/arm64/aarch64/ISO-IMAGES/12.0/ >> >> >> Would anyone recommend the Pine64? >> >> Also which model as there are several: >> http://wiki.pine64.org/index.php/Main_Page#PINE64_Devices > The Pine64 is an excellent board, but so far I've only used it with serial > console. > The Pinebook, which is based on very similar hardware, however works nicely > with it's screen, but not done any X tests yet, only console. > > If you want a smallscreen, which just works with FreeBSD then you should > try this one: > https://www.waveshare.com/3.5inch-HDMI-LCD.htm > I've tested it with FreeBSD in text mode. > The touchscreen is based on an XP2046 chip, which (AFAIK) we don't support, > but it shouldn't be difficult to write a driver for it. > It is an HDMI display and should work on other boards as well, but it is > mechanically designed to hook up to an Raspberry with a special HDMI > interconnect PCB. > I also had to define config.txt entries for many of their HDMI displays, which > is raspberry specific. > If you are located in Germany, you can buy it from me, I'm a distributor of > Waveshare. > That said, I can't suggest all of the Waveshare components for use with FreeBSD. > Especially the touchscreen support experience is mixed, some work out of the box > with wmt(4), some don't. > > The SPI based displays work by running HDMI as dummy output in a specific > resolution and then regularily grab the fbdev data and push it the the SPI > display. > It should be possible to write software for that, maybe even in userland, but > getting the display initialisation right requires some research. > On the display module they use shift registers to the parallel data input of > the panel. > They also have XP2046 base touch chips. > That's fantastic! I will probably need the serial console more then the HDMI display though I do want to add a character based LCD such the Crystalfontz I referenced earlier in this thread as an example. Though it looks like there are some alternatives on the site you mentioned too: https://www.waveshare.com/product/modules/oleds-lcds.htm So I think that your reply and Emmanuel's response have clarified things a lot for me and the Pine64-LTS is the one to choose. Looking through the RPi header documentation or the Pine64: http://synfare.com/599N105E/hwdocs/pine64/index.html I should even be able to add a DB9 connector for UART serial rs232c access for terminal emulators like minicom,tip etc. Now I just need to find a DIN NS35 enclosure for it (or make one) and then I can begin my project :-) :-) I'm getting excited now as this is going to be a lot of fun! Thanks everyone for all the responses. Kaya
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?de6e49f8-3d83-3c03-a4df-30ba94acca95>