Is it possible to Flash Colibri VF50 Using Imx_uart via Raspberry Pi

Currently I am Flashing OS in Colibri VF50 using imx_uart binary file via PC. Is it possible to do same thing using Raspberry Pi instead of PC?

Hi

Can you please post more information like how you are flashing and what OS you are flashing.

Also, which host you are using for flashing Linux or Windows?

Please check the below post about how to flash bootloader and more information for compiling your own imx_uart.
https://www.toradex.com/community/questions/41787/imx-uart-64-bit-possible-to-use-for-colibri-vf50.html

Let me know if you have any queries.

Best Regards
Ritesh Kumar

Currently I am installing a custom linux OS developed with BuildRoot. I am installing is via using this approach
sudo /usr/bin/imx_uart ${LOADEROPTS} -d ${UARTDEV} ${LOCPATH}/vybrid_usb_work.conf \ ${BINARIES}/u-boot.imx

but its is on desktop PC, x86 processor, I am using Linux host, specifically lubuntu,

I want to do same thing using R-pi,
Is it possible to do so?

If you can build imx_uart for pi or any other system from the source code, I do not see any reason it should not work.

Please check the below link for the source code for the same.

https://github.com/boundarydevices/imx_usb_loader

Best regards
Ritesh Kumar

Hi Ritesh,

Thank you very much for your response. Actually I have downloaded imx_uart repo and built it in Rpi 3. When I execute this command with correct parameters and correct directory
sudo /usr/bin/imx_uart ${LOADEROPTS} -d ${UARTDEV} ${LOCPATH}/vybrid_usb_work.conf \ ${BINARIES}/u-boot.imx
it stucks at and does not proceed further…

Kind regards,
Munawar Ali

I am sorry but unfortunately, we do not have Raspberry pi to test, and neither we support the same.

So I will request you to please use the desktop host to flash module.

Let me know if you have any further queries.

Best Regards

Ritesh Kumar

I am having problem with desktop pc. I am getting magic missmatch, reason was 0x000000, I searched it on internet, this thread also: https://www.toradex.com/community/questions/5498/colibri-vf50-not-entering-in-recovery-mode.html
But did not find any promising solution. Your help in this regard will be very much appreciated.

Kind Regards,
Munawar Ali

And it would be also very nice if you can help me with R-pi

Hi

Earlier you mentioned it is working from desktop PC but now the same not working for you. Have you change anything or change the hardware setup?

Can you please describe your hardware setup and confirm the connection is proper, as the UART link uses hardware flow control using RTS/CTS, so make sure those are available?

As per my understanding, we too have faced those errors due to improper RTS and CTS connection. So please make sure the connection is proper.

Check the below article for more info. I would recommend you try flashing default binary from Toradex to verify the flashing setup is okay and then try using your custom Linux.

https://developer.toradex.com/knowledge-base/flashing-linux-on-vybrid-modules

Also any specific reason or requirement of not using BSP layers provided by Toradex. Kindly note that we maintain and provide periodic bug fix and feature updates to our images.

Best Regards

Ritesh Kumar

Hi Ritesh,

The thing is that I already have a PC which is used to flash colibri VF50, It has all file such as upadate.-sh and uboot and imx_uart. In that PC i am using update.sh file to flash colibri with ./update.sh -m 1 -n -d /dev/ttyUSB0 command. For ttyUSB0 I am using FTDI chip UM232h and it is all working fine. Now I want to use same thing in an other PC there it is giving me magic missmatch , response was 0x00000000 error. what can be the possible reason. One more thing is that, with update.sh file I am using -n which means no RTS CTS are used.

Kind Regards,
Munawar Ali

Hi Munwar,

Just to confirm we again tested and this time without update.sh

vf_flash/imx_uart --no-rtscts /dev/ttyUSB0 vf_flash/vybrid_usb_work.conf
colibri-vf_bin/u-boot.imx

dev@dev-HP-ProBook-440-G3:~/Data/Images/vybrid/Colibri-VF_Console-Image_2.8.7$ vf_flash/imx_uart --no-rtscts /dev/ttyUSB0

vf_flash/vybrid_usb_work.conf colibri-vf_bin/u-boot.imx

config file

parse vf_flash//vybrid_usb_work.conf

starting associating phase

association phase succeeded, response was 0x23454523

HAB security state: development mode (0x56787856)

== work item

filename colibri-vf_bin/u-boot.imx

load_size 0 bytes

load_addr 0x00000000

dcd 1

clear_dcd 0

plug 1

jump_mode 2

jump_addr 0x00000000

== end work item

No dcd table, barker=402000d1

loading binary file(colibri-vf_bin/u-boot.imx) to 3f4074e8, skip=0, fsize=73b18 type=aa

<<<473880, 473880 bytes>>>

succeeded (status 0x88888888)

jumping to 0x3f4078e8

j4 in err=0, last_trans=4 0d 0a 0d 0a

and it worked without any issue. I will check here with another UART converter.
I am suspecting there may be some issues from the host uart driver side. If it works in one pc that shows there nothing you need to do at the target setup.

Hi Ritesh,
Thank you for your concern. can you provide me the scripts and file that you are using. And please also can you tell me which machine you are using as your host, which OS and kernel version you are using, whch uart converter?
One more thing I want to ask that, did you compile imx_uart from https://github.com/boundarydevices/imx_usb_loader or installed it directly using sudo apt install imx-usb-loader

Kind regards,
Munawar Ali

hi Munwar,

You can download a reference binary for Vfxx from our website. There we have update.sh in the downloaded folder. Please go through it for detail/exact steps we are following. There itself you can find imx_uart binary also.

We have tested on ubuntu 16.04 running oh host PC.

Best Regards

Ritesh Kumar

Dear Ritesh,

Thank you very much. first of all I think that imx_uart doesnot work with R pi to flash OS in Colibri, so I used PC instead.
The problem I had is that colibri module was not going into recovery mode.
Thanks for your help.
And I would appreciate if you people can update something so Rpi can also be used to flash the OS.

Kind regards,
Munawar Ali

HI @Munwar

Perfect that you can do recovery from your Desktop PC. Regarding Rpi, did you compile imx_uart for Rpi? Did you use the update.sh?

If yes, what output did you get?

Best regards,
Jaski

Hi Jaski,

Actually I did compile imx_uart for Rpi and it did not work, but I will try to do it one more time properly, may be it works.
If it is possible for you to implement it with Rpi, kindly do that. I will be thankful.

Kind regards,
Munawar Ali

Dear Jaski,

I tried one more time to flash Colibri via Rpi3. I compiled imx_uart for Rpi. imx_uart does not seem to be working for Rpi. If it is possible then kindly resolve this, furthermore, I am open for your suggestions.

Kind regards.
Munawar Ali

Hi Munawar

Actually this is out of scope of Toradex Support.
Which Linux Distribution and Toolchain are you using on Raspberry PI3?

Best regards,
Jaski

Dear Jaski,

Thanks for your reply, I used Raspbian as well as Ubuntu mate. But imx_uart did not work on any of them. It will be really helpful if you can consider this problem of mine.

Kind regards,
Munawar Ali

HI @Munwar

Sorry but I did not have time to look into this issue. Is the issue solved for you?

Best regards,
Jaski