We could boot the kernel from there, but we first want to write it to the NAND flash. Now the kernel has been loaded into the Dockstar's RAM. It is important that the entire file is being transfered. Now the kernel image can be fetched over the network: Next the Dockstar needs to know the IP address of the TFTP server: Of course this IP address needs to be part of the subnet used for the local network and it must not be identical to the IP of another computer on the network. Failing to do so will result in U-Boot trying to boot the broken kernel again. When booting the Dockstar with the serial cable connected, after a short while U-Boot prints a message telling you to press a key to enter the u-boot console. Once the tftp server is ready it is time to reboot the Dockstar. This needs to be placed in a location such that is accessible through the tftp server. The original Dockstar redstone kernel image can be found here. On many Linux systems there is a package called tftp-hpa which contains such a tftp server. To do that a tftp server on the local network is needed. This can be done by telling U-Boot to first load a kernel over tftp and then tell U-Boot to write it to the NAND flash. To fix that a working Linux kernel needs to be written to the flash. The Linux kernel on the Dockstar's NAND flash had a checksum error preventing U-Boot from booting the kernel. This immediately revealed the reason why my Dockstar was unable to boot. When powering on the Dockstar the U-Boot bootloader immediately writes some messages to the serial port which should appear in the screen session. On Linux minicom or screen can be used for that. Now that the serial cable is connected to the Dockstar, a program to communicate with the Dockstar over the serial connection is needed. Either use the same cable as I did, so you already know the wiring or open the USB connector and have a look at the PCB inside. You cannot as easily figure out which of the remaining wires is the RX wire and which is the TX wire, though. Only the wire connected to ground will have a resistance close to zero ohms. If you have got another serial cable and you got a multimeter you can easily find out which of the wires is connected to ground by measuring the resistance between each wire and the outer metal shield of the usb connector of the cable. When using the serial cable mentioned above, the blue wire is the ground wire (GND), the green wire is the receive wire (RX) and the white wire is the send wire (TX). To build a universal serial cable that can easily be used on different devices I decided to use test hooks for the serial connection instead of a connector suitable only for the Dockstar's serial connector. Pl2303: Prolific PL2303 USB to serial adaptor driver Usbcore: registered new interface driver pl2303 Usb 4-5: pl2303 converter now attached to ttyUSB0 This cable comes with the very common PL2303 usb serial converter. Lots older mobile phones have a serial port built-in instead of the now common USB device ports.Ī suitable cable for this purpose is a DKU-5 data cable. While such a circuit is rather easy to build, there is an even simpler solution which has the advantage of also being usable on computers without a serial port.Īll that is needed is a data cable used for certain older mobile phones. To connect such a device to a PC and its standard serial port, a level shifter (e.g. Most serial ports on such embedded devices do not use 12 V, but either use 5 or 3.3 V where 3.3 V is becoming more and more common. It also comes without any handshaking lines, which is why there are only three pins (RX, TX, GND) neccessary for the serial port. This serial port is basically a standard RS232 serial port with the exception that it uses only 3.3 V instead of the up to 12 V of a normal serial port found on desktop computers. Three of the pins are assigned to a serial port. Opening the device revealed that there is a small connector on the PCB.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |