Unable to get Sabre 7D on Android 7.1.2 to display on X-IMXEBOOKDC3

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Unable to get Sabre 7D on Android 7.1.2 to display on X-IMXEBOOKDC3

1,983 Views
tomoke
Contributor I

I am using an MCIMX7SABRE board with an X-IMXEBOOKDC3 (rather than the DC4) and am unable to get android to display on the DC3, even though the MAX17135 is found in the boot sequence and it succeeds in flashing the e-ink screen, so I know that power and the control signals and clocks all work.

The initial try was with the pre-built images (as per section 4 of the Android User's Guide) which also produced the initial screen flash. It confirmed that one could use the bootargs video=mxcepdcfb:ED060XH2C1,bpp=16, which demonstrated the ability to specify this on the bootargs. In a stock image video=mxcepdcfb:E060SCM,bpp=16 produces an error when the firmware file cannot be found and there is no epdc.fw default file.

This only resulted in the initial flash. Android continued running and was accessible through the console, but nothing on the screen.

I have updated the external/linux-firmware-imx/firmware/fsl-epdc.mk file to include all the firmware files from 

external/linux-firmware-imx/firmware/epdc:

  1. _epdc_ED060XH2C1.fw
  2. epdc_E060SCM.fw

  3. epdc_E60_V110.fw

  4. epdc_E60_V220.fw

  5. epdc_E97_V110.fw

and can boot with the bootargs with the video=mxcepdcfb:E060SCM,bpp=16 argument, and the firmware file is found (there is no error as there was before the firmware files were included in the build).

The console shows the MAX17135 being found for eink, later has a line saying a register could not be written on the max and then later shows the EPD regulators being disabled along with other regulators, but the fact that the screen flashed indicated that the max was successfully used, at least by u-boot.

usb_otg1_vbus: disabling

can2-3v3: disabling

wlreg_on: disabling

GVDD: disabling

GVEE: disabling

HVINN: disabling

HVINP: disabling

VNEG: disabling

VPOS: disabling

VLDO2: disabling

At this stage I am not sure how to proceed:

  1. in /d/regulator we can see the EPD regulators, amongst the others, so the correct dtb must have been read to setup the sysfs entries
  2. I see no error associated to a display element other than the "max17135 2-0048: Unable to write MAX17135 register via I2C"

My expectation is that the stock image, with the EPDC bootargs should have at least given me some display, even with poor quality since the clock rate would be wrong.

The update of firmware files, so that the correct display clock rates and configuration could be used, did no better.

So I am open to any suggestions as to why a stock build of 7.1.2, as per the User's Guide (section 3), flash with the mfgtool as per the Quick Start Guide (section 8.5 for bootargs initialization), does not have the android system using the apparently functional DC3 display.

I have attached a console log of a boot:

Labels (3)
0 Kudos
Reply
7 Replies

1,811 Views
igorpadykov
NXP Employee
NXP Employee

Hi Tom

you are right, IMXEBOOKDC3 is not officially supported on i.MX7D platform.

For connections one can check

IMX7D configuration with legacy IMXEBOOKDC3 - i.MXDev Blog 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

1,811 Views
tomoke
Contributor I

Sorry for the delay

I had seen that entry but did not know how to apply it from its Linux environment to the Android environment. I can see the MAX17135 doing correct I2C transactions and I get the screen flash, but then after this initial start, which I presume to be the u-boot startup, I get no more transactions to the EPD.

That suggests that the Android has not initiated connection to the EPD rather than a DC3/DC4 difference.

I will reflash a stock epd image, as well as my build (with additional waveform files) and retry things. I had problems getting to the official repos, and had to go to codeaurora.org to finish a couple of the clones.

git clone http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git kernel_imx Cloning into 'kernel_imx'... fatal: unable to access 'http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/': Failed to connect to git.freescale.com port 80: Connection refused 

$ ping git.freescale.com PING git.freescale.com (192.88.156.202) 56(84) bytes of data. ^C --- git.freescale.com ping statistics --- 314 packets transmitted, 0 received, 100% packet loss, time 320501ms $ git clone https://source.codeaurora.org/external/imx/linux-imx.git kernel_imx

I still cannot ping the official code repositories (according to the links buried in the released android source).

Did something change?

Tom

0 Kudos
Reply

1,811 Views
igorpadykov
NXP Employee
NXP Employee

Hi Tom

as this configuration is not officially supported, for additional help

may be suggested to proceed using Commercial Support and Engineering Services | NXP 

Best regards
igor

0 Kudos
Reply

1,811 Views
tomoke
Contributor I

If the Android 7.1.1 is not supposed to support an EPD display for the i.MX7D Sabre shouldn't the section in the Android User's Guide that indicates the procedure for using the epdc images be removed? The noted epdc image files are present on the distributed demo images zip and get built by the build procedure.

This implies that it should have worked out of the box, where your indication is that this capability (EPDC support) does not exist. 

Tom 

0 Kudos
Reply

1,811 Views
igorpadykov
NXP Employee
NXP Employee

EBOOKDC4 panel is officially supported  https://community.nxp.com/docs/DOC-328663 

that specific part - "IMXEBOOKDC3" is not officially supported.

Best regards
igor

0 Kudos
Reply

1,811 Views
tomoke
Contributor I

That unfortunately only deals with Linux, which was known to work, rather than the Android 7.1.1/2 that I am trying now.

Other forum entries have suggested that it is not supported, but used terms like an alpha image.

The prevailing android user's guide indicates how to build the SD-Card, with the 3 epdc specific versions of files, which would suggest that it should work, so the status of the EPDC Android seems to be contradictory. It would be good to have a definitive indication whether it really won't work out-of-the-box and needs more work, and if so, why the section is not pulled out of the guides, or at least qualified.

I have both the DC3 and the DC4, so that is not a problem for testing, but I need to get things going on Android.

0 Kudos
Reply

1,811 Views
igorpadykov
NXP Employee
NXP Employee

Android is based on linux, there is no any contradiction

pastedImage_1.jpg

Best regards
igor

0 Kudos
Reply