Tag Archives: serial

Debug board for Efika MX Smartbook

I finally found a time to connect debug board to Efika MX Smartbook. I got that dongle about week ago but had more important things to do.

Package arrived in small box with BBRV signature on it:

Inside was “Lange 3 DB Board” made by Pegatron company. This provides ARM JTAG and serial connectors.

To connect it with Efika MX Smartbook first thing to do is take out keyboard. To do this small screwdriver is needed to push in four places at the top edge:

Inside you see empty space for mini-pciexpress card (but only USB signalling) which is used for 3G modems. On the right is half size mini-pciexpress card (also USB only ofcourse) wifi card based on Ralink 3273 chipset. Debug board cable needs to be connected to CONN1501 connector under 3G modem space (contacts bottom).

Keyboard can be put back into place so it is possible to use serial/JTAG and keyboard at same time:

What for I would use debug board? Time will show. So far I found out that kernel based on 10.08 Freescale code drop has worse battery driver then previous one (10.07 based). After one hack I got at least system which boots normally.

New multi I/O card installed

Some days ago I exchanged my MOS9835 based I/O card with newer version based on MOS9845. Old one had one parallel port (which I never used) and two serial ports. New one do not have parallel port but has 6 serial ports instead. Why so much?

The answer is simple — more devices on desk require more ports. I could go into USB-serial adapters and buy bunch of them and create set of udev rules to make them stick with device node names. But I read too many stories when such adapters works when 2 of them are used but adding 3rd breaks config. So I bought PCI card.

Is it useful? Yes, it is. Does it add new problems? Few, but simple ones.

First problem is to get proper numbering of ports. As mainboard used in desktop has one serial port already I wanted it to be /dev/ttyS0 and additional ones to be /dev/ttyS[1-6]. But fun starts in kernel config…

There are few options which controls amount of serial ports in total (named CONFIG_SERIAL_8250_NR_UARTS) and amount of runtime registered ports (named CONFIG_SERIAL_8250_RUNTIME_UARTS). To get sane numbering I had to play with those values a bit. I set NR_UARTS to “10” (just in case) and then RUNTIME_UARTS to “7” so ports works like I wanted.

Next thing is guessing which port is which ttySx node. I did that by connecting devices and checking with “picocom” which one is which. Now connectors are signed with number on one side :D

Serial cables needs to be described

Last thing was adding names to device nodes as it is easier to use /dev/ttyALIX then remember that Alix is connected to /dev/ttyS2 port. So currently I have this config:

Portdevice
ttyS1BeagleBoard
ttyS2Alix.1c
ttyS3not used yet
ttyS4at91sam9263ek
ttyS5atngw100
ttyS6edb9301

I use also serial cable with BUG but as it has female connector I use USB adapter with it. Have to buy female->male cable for it so it will use ttyS3…

This is how it looks on desktop side:

Connectors jungle in my desktop

And one more thing — few readers suggested to use cards which adds 8 serial ports. I have to admit that I was thinking about it but decided against it. I already have lot of cables under desk and adding such hydra (card connector -> 8 cables with DB9 connector) would make it even harder to organize.

Next cables to organize would be network — each device on desk wants at least one Ethernet cable…

How many serial ports are enough?

My desktop has few RS232 ports:

  • one FTDI RS232-USB converter
  • one connected to mainboard
  • two on additional PCI card (which also gives me parallel port)

When I got BeagleBoard I had to remove the one connected to mainboard — connected that cable to BB itself. But today I got new package from Atmel: NGW100. And it means need for serial port too…

What for I use all those ports? Developer boards of course :)

  • BUG
  • BeagleBoard
  • At91sam9263-ek from Atmel
  • NGW100 from Atmel

To end that crazy situation I am planning to buy extended version of card which I use now but with 6 rs232 ports instead of just two. Will lose parallel port but I never used it and if will ever need it there will be a card with it somewhere in drawer/box.

I never thought that will need so many serial ports…

Serial cables for BUG

During this year FOSDEM Bug Labs gave 4 BUG Starter Kits for people. Two were given for best ideas of application/module/way of using BUG — here Ken and Peter selected best entries. Other two were possible to win by donating FOSDEM.

I already knew two of those lucky guys. If you are one of other ones then I want to tell that I have Handylink connectors which can be used to build serial cables for BUG. If someone wants to also have Ethernet then all signals are in connector too — just proper RJ45 socket needs to be added.

How to get Handylink connector from me? Mail me at marcin@buglabs.net with your address and I will send you one connector (with cable ending in just wires) by normal post. No costs for You even — whole package costs me ~1€ so I do not need return of costs.

Feel the power of USB

Today I got few USB gadgets:

  • Ethernet card (Damicom 9601 based)
  • RS232 cable
  • multi-port card-reader with USB 2.0 hub integrated (powered)

So during restructure of my USB network I tried to connect all my USB devices to desktop. With two external hubs I got out of ports…

Effect:

12:00 hrw@home:~$ lsusb
Bus 001 Device 055: ID 0a46:9601 Davicom Semiconductor, Inc.
Bus 001 Device 054: ID 058f:6362 Alcor Micro Corp.
Bus 001 Device 053: ID 0fce:d016 Sony Ericsson Mobile Communications AB
Bus 001 Device 036: ID 058f:6254 Alcor Micro Corp.
Bus 001 Device 001: ID 0000:0000
Bus 003 Device 059: ID 0525:a4a2 Netchip Technology, Inc. Linux-USB Ethernet/RNDIS Gadget
Bus 003 Device 058: ID 0424:223a Standard Microsystems Corp. 8-in-1 Card Reader
Bus 003 Device 057: ID 1457:5122
Bus 003 Device 056: ID 0421:0431 Nokia Mobile Phones
Bus 003 Device 055: ID 058f:9254 Alcor Micro Corp. Hub
Bus 003 Device 053: ID 04bf:0319 TDK Corp.
Bus 003 Device 046: ID 0a81:0205 Chesen Electronics Corp. PS/2 Keyboard+Mouse Adapter
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 011: ID 04b8:082f Seiko Epson Corp.
Bus 002 Device 010: ID 046d:c70a Logitech, Inc.
Bus 002 Device 009: ID 046d:c70e Logitech, Inc.
Bus 002 Device 008: ID 046d:0b02 Logitech, Inc.
Bus 002 Device 001: ID 0000:0000

The list contain:

  • USB Cup heater with integrated USB 1.1 Hub
  • Nokia 770
  • Sharp Zaurus C760
  • FIC Neo1973
  • Davicom Ethernet card
  • EPSON Stylus DX3800
  • TDK Bluetooth 1.1 dongle
  • Logitech Bluetooth 2.0 EDR dongle
  • PS/2 -> USB converter with optical mouse connected
  • Hama multi-port card reader
  • no-name multi-port card reader
  • no-name multi-port card reader with integrated USB 2.0 Hub
  • Sony Ericsson k750i phone

As result I got:

  • 14 usb-storage devices
  • 3 serial ports
  • 3 network interfaces
  • 3 input devices (Logitech Bluetooth need to be switched from HID to HCI)

And everything was working, needed /dev/ entries were created and HAL managed to show me proper tree with all devices. Both hubs were powered during test.

Now I disconnected most of them and left only needed ones.

Serial cable for Zaurus

Sharp-CE170TS serial cable for ZaurusToday I received Sharp CE-170TS serial cable. It was donated by one of OpenZaurus users which does not make any use of it. After some checking which RS232 port on my desktop machine is /dev/tts/0 and which /dev/tts/1 I got the second one working and installed minicom to get usable terminal (I used minicom years ago during studies when text terminals connected to multiport serial cards was something normal).

Few minutes later I got nice prompt in terminal:

OpenZaurus 3.5.4.1-rc1 c7x0 ttyS0

Now I can provide detailed kernel logs so maybe my 256M SD card will get more fixes from RMK :)