Skip site navigation (1)Skip section navigation (2)
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>