HARDWARE | DOWNLOADS | MISCELLANEOUS | ||||
FBUS & MBUS | |||||
NuukiaWorld project:
FBUS & MBUS adapters1. FBUS & MBUS basics
1.1 IntroductionThe communication methods called FBUS and MBUS are used in Nokia mobile phones for data transmission, service, and adjustments. NuukiaWorld has researched and tested these communications methods to get information for developing better cables for mobile phones and PCs.
The MBUS method, that uses only a single pin, is a half-duplex method used also in older Nokia phones. With MBUS it is possible to interface with almost all Nokia mobile phones for service and adjustment purposes. The FBUS is a newer solution and offers high-speed full-duplex communications link between the phone and the computer. The service and adjustment operations, which are traditionally made over MBUS, are available also via FBUS, but usually much faster.
Most of the information here is based on measurements made with a digital storage oscilloscope in preliminary circuit between a Nokia 6110 (firmware version V05.24) phone and the RS 232 port of a PC. The measurement circuits shown in figure 1.1 are not ideal, because even the voltage levels were almost unknown, and unnecessary protection is included in the circuit. The measuring circuit affects the signal levels, and therefore it is possible to extract information about the type of inputs and outputs of the phone.
Figure 1.1 The test circuit used between the PC serial port and a Nokia 6110 phone.
When analyzing the voltage levels in the oscilloscope pictures shown here, you must correct the effect of the 10x attenuation of the probe.
For clarity, the RS 232 signal levels are called as "+12 volts" and "-12 volts" in the following. In fact they are usually lower when loaded, but in theory they could be also more positive and negative than 12 volts [Halme1992].
1.2 Unknown propertiesThe things required to be known when designing cables were:
- The type of internal connections of FBUS and MBUS pins of the phone.
- The signal levels in those pins.
- The data rate and requirements for rise and fall times in the protocols.
- Possibility to connect the PC simultaneously to MBUS and FBUS pins.
Exact values were not required, so in most cases only general idea for the implementation is enough.
1.3 FBUS communication1.3.1 Signal levels
The FBUS data sent by the PC and the reply from the phone are shown in the figure 1.2. Please note that the signal level of the computer (the data burst on the left) quite bad only because the measurement circuit attenuates the signal. It should a rail-to-rail signal from 0 to 3 volts like the phone response. These images are captured from Nokia Data Suite 2.0 (NDS) communication.
Figure 1.2 A part of the FBUS communication of the Nokia Data Suite. The scope ground is at the lower cursor (at the bottommost division line).
A good guess about the FBUS drivers is that there is a high-impedance input in the FBUS Rx pin of the phone, and a real push-pull buffer output in the FBUS Tx pin.
But it is not so simple. By looking the startup situation of the Nokia Data Suite communication. The start is shown in figure 1.3.
Figure 1.3 The start of FBUS communication measured with the test circuit.
By looking at the figure 1.3 you must see that the FBUS Tx line, the phone FBUS output (the signal without data pulses) will rise after the buffers of the measuring circuit are powered. (The power is applied to the measurement circuit just before the first time-division line on the picture.) The "middle" state of the phone before the power-up means that the FBUS Tx output driver does not drive the pin high all the time, but it is a three-state output. (Measurement on an idle phone with a current meter shows the same thing.)
By pulling the FBUS Tx down instead of the 400 kilo-ohm pull-up shows that the FBUS Tx drives the signal up to 3 V during the data pulses, so it is not a open-collector type output.
The figure 1.3 shows also that the Nokia Data Suite 2.0 starts the communication immediately after supplying power to the measurement circuit (the data pulses on the PC-to-phone line). The first pulses are possibly not transmitted correctly because the adapter circuit is not yet correctly powered. (The power-up ramp can be seen in the upper signal on the scope.) Fortunately, this does not cause problems with the NDS.
1.3.2 Data speed
A part of a data burst from the PC to the phone is shown in the figure 1.4.
Figure 1.4 A close-up view to the FBUS data sent by the PC.
By assuming that the data format contains the typical start and stop bits, one possible data byte is shown in the figure with the time cursors. If it contains 11 bits (2 low, 4 high, 3 low, and 2 high), then the baud rate near the standard value of 115200 baud.
A similar view to the data sent by the phone is shown in the figure 1.5.
Figure 1.5 FBUS data sent by the phone.
There it seems to be only 10 bits between the cursors (2 low, 4 high, 3 low, and 1 high). This matches with the baud rate told above, but the figure does not contain a valid stop bit after the 10 other bits (for 8E1 or 8O1 formats). 8N1 format may be possible, if there is a 1-bit-length gap between the data bytes in figure 1.4.
There seem to be no problems with the rise and fall times with the measurement circuit, which is the most important result of these close-up measurements.
1.4 MBUS communication1.4.1 Signal levels
The MBUS data is transferred with a one pin to both directions. This requires that the outputs must be three-state or open-collector type. Simple measurements with a multimeter show that it is possibly pulled up with a 5 kilo-ohm resistor. This means that the MBUS is an open-collector type pin on the phone.
In the measurement circuit the FBUS Rx input is connected together with the MBUS. This is not a problem from the electronics, because the FBUS Rx is a high-impedance input (in theory, it could be a problem for the protocols, but it is not that either). MBUS data bursts are shown in figure 1.6. The signal levels of the pulses sent by the computer are bad because of the resistance in the measurement circuit (the computer cannot pull the MBUS lower than 500 mV).
Figure 1.6 MBUS messages from the computer (on the left and the right), and the response from the phone.
The "high" level of the MBUS signal in these pictures is only at 2.25 volts, because the zener diode reverse current pulls the signal down (that was a surprise). This helps the open-collector-theory, which can be now accepted.
1.4.2 Data speed
Close-up views to the MBUS data are shown in the figure 1.7.
Figure 1.7 MBUS data sent by the PC (on the left) and sent by the phone (on the right). Because the buffer output in the measurement circuit is protected with a 1 kilo-ohm resistor, it cannot pull the MBUS line lower than 531 mV (a 10x probe has been used).The data speed is assumed to be standard 9600 baud. The pulses in figure 1.7 supports this theory. The time cursors in the figures mark a data byte in the data stream. The length of the data byte is correct for 9600-baud data.
1.5 Powering the serial port devicesBecause there is no power supply pins in a RS 232 port (at least in a DB9-connector), the power for a FBUS or MBUS adapter device must be taken from the signals. There are three signals driven by the PC: TxD (Transmitted Data), DTR (Data Terminal Ready), and RTS (Request To Send).
The TxD is at the negative voltage (usually about -12 volts, at least -5 V) when the port is idle, and pulsed to +12 volts only with the data bits, so it cannot be used to power any circuit. The behavior of the DTR and RTS depend on the software controlling the serial port. When the Nokia Data Suite (uses FBUS) is running, the RTS is fixed to -12 volts (figure 1.8) and the DTR is fixed to +12 volts.
Figure 1.8 The RTS line during FBUS communication (NDS application starts at the first time cursor). The ground for channel 2 (RTS, 0.5 V/div) is at the centerline.
In MBUS case the DTR line seem to be fixed to -12 volts and RTS will go high (figure 1.9).
Figure 1.9 (a) The DTR line in MBUS transmission session measured from the serial port signals. The upper trace is the TxD line of serial port containing the data pulses of the communication (the pulses are mostly invisible due to the long sweep time). The ground of these RS 232 level signals is set to the middle of the screen.
(b) The RTS line of the RS 232 port during MBUS transmission session (RTS signal is at the upper voltage cursor). The other (the more noisy) channel is the MBUS pin of the phone (grounded at first division from the bottom).
(c) The same RTS level shown with the TxD line level, both measured from the serial port.
Because the DTR and RTS are alternatively powered, the power cannot be taken in a dual-mode adapter (e.g. an adapter supporting both FBUS and MBUS) from one line only. In FBUS-only and MBUS-only cases the power may be taken from DTR and RTS, respectively.
The RS 232 line must be terminated with 3...5 kilo-ohms according to the standards [Halme 1992]. The RS 232 line drivers has also a 300-ohm resistance. Large load easily pulls down the whole signal, which must be avoided. Minimizing the power consumption is one goal in the adapter design.
1.6 Designing adaptersAfter studying the measurement shown above, it is easy to design several different adapters for connecting a PC to a mobile phone. There are three different adapter types, FBUS-only, MBUS-only and dual-mode (e.g. an adapter supporting both FBUS and MBUS) adapters.
1.6.1 FBUS-only adapter
Because the FBUS Rx input of the phone is a high impedance input and the logic power supply voltage of the phone is 3 volts, the FBUS Rx can be driven directly with a 3-volt logic output (figure 1.10(a)).
Figure 1.10 (a) A 3-volt buffer driving the FBUS Rx input of the phone. (b) Solution for driving FBUS Rx with a 5-volt buffer.
If the buffer driving the signal is a 5-volt one, overvoltage in the phone must be avoided. This can be made by making the buffer to be only able to pull the FBUS Rx to zero. This is achieved with a schottky diode as shown figure 1.10(b)) The logic "1" state (3 volts) must ensured with a pull-up resistor. A schottky diode should be used instead of a regular silicon diode to ensure a proper "0" state.
The three-state output of the phone (FBUS Tx) can be directly connected to a 3-volt or a 5-volt buffer input, because the high level (near three volts) is recognized as a "high" state even in a 5-volt buffer input. The situation when the pin is the high impedance is more awkward - the buffer input floats in that case.
The solution is to pull the FBUS Tx line to a valid logic level with a high resistance that does not disturb the signals when the line is in use (the phone is driving it). The correct way is to pull the line up, because the RS 232 RxD (Received Data) line must be low (more than -5 volts) when the signal is idle and the RS 232 driver is inverting, as stated in the standards. The complete solution for an FBUS-only adapter is shown in the figure 1.11.
Figure 1.11 An FBUS-only adapter.1.6.2 MBUS-only adapter
The MBUS is generally an up-pulled line that must be driven with open-collector type drivers. A driver of this kind is formed, when a schottky diode is connected to the buffer output as in the FBUS case (figure 1.10(b)). The pull-up resistor is not required, because the phone has an internal 5 kilo-ohm pull-up.
The link from the phone MBUS to the PC is achieved just by connecting the RS 232 driver input to the MBUS pin of the phone (together with the signal from the buffer sending data to the phone). The data sent by the computer will be echoed back to the PC, but this is a feature of the structure of the MBUS and is not a problem. A complete model for an MBUS adapter is shown in the figure 1.12.
Figure 1.12 An MBUS-adapter.1.6.3 Dual-mode adapter
A dual-mode adapter is easily set to operate as an FBUS and an MBUS adapter when required. The general simple idea is to combine the two basic adapters shown above. There has been reported also adapter without any switches for mode selection. Usually they connect the incoming and outgoing FBUS links together with a diode, which serves as a data path in MBUS mode.
According to my measurements there is some uncertainties in that kind of solution. In the FBUS mode, the signal from the PC to the FBUS Rx pin of the phone must not be transmitted back to the PC. This would prevent real full-duplex transmission. I could not record any simultaneous data transmission with Nokia Data Suite, but if the signal is echoed back to the PC, the most critical function of the NDS (reading the contacts directory from the phone) fails easily.
The diode solution could work, if the forward voltages of the diodes in circuit prevent the data pulses to disturb the phone-to-PC receiver. It would not be a reliable solution, because it is affected by the supply voltage and signal levels. Generally, some kind of switch must be used,
- to ensure sufficient separation between the to data directions during FBUS use, and
- to create a data path from both data directions to the MBUS pin of the phone when used in MBUS mode.
The phone does not be disturbed, if the FBUS signals from PC are delivered also to the MBUS (as told in the chapter 1.6.1), and same in the MBUS case, the FBUS Rx and MBUS may be connected together without any switches. The internal MBUS pull-up of the phone is also used for the FBUS line because the pins are connected together and must now be driven with an open-collector style driver.
Because the FBUS Tx output of the phone is in high impedance when not in use, it seems to be the easiest solution to connect the MBUS pin to the FBUS Tx in the MBUS mode (figure 1.13).
Figure 1.13 A dangerous simple idea for a dual-mode adapter. Do not try this.
It is not so simple. There has been reported at least one case, when the phone (or MBUS based software on the PC) is pulling the MBUS down when the FBUS Tx is active and sends logic "1", which means a short-circuit. This case happens in the phone firmware initialization (reboot). A part of this moment is shown in the figure 1.14.
Figure 1.14 The FBUS data burst from the phone (the trace starting uppermost) and simultaneous MBUS pulses (the wider pulses). When the FBUS Tx is high and MBUS is low, there is a short-circuit if they are connected together.
To avoid overloading the drivers in the phone with a short-circuit situation, a 10 kilo-ohm resistor maybe put on the FBUS Tx pin as shown in the figure 1.15. The resistor limits the current and holds it in safe limits. The simultaneous data bursts are naturally invalid after the crash, but this seems not to disturb the MBUS software in any way.
Because the DTR and RTS signals of the RS 232 port seem to contain information of the current mode (FBUS or MBUS) (see chapter 1.5), there is also a possibility to automate the mode switching.
Figure 1.15 A dual-mode adapter.
1.7 SummaryThe FBUS and MBUS are communication methods between Nokia cellular phones and a PC serial port. In this chapter "1. FBUS & MBUS basics" the basics of the data signal levels and speeds of the FBUS and MBUS data transmission methods are discussed with oscilloscope screen shots. Also the state of the other serial port signals are told.
According to the measuring results, three different adapter structures for connecting a phone to a computer has been presented. These adapters include an FBUS-only, an MBUS-only, and dual-mode adapters. In the following chapters these idea are implemented in practice.
© Copyright 1999 Panu M Tuominen. All rights reserved. Republishing this document partially or completely is forbidden. Internet hyperlinks to the main page are allowed and such linking is encouraged. You are doing everything at your own risk. See the WARNING! in the general information page.For example, Nokia 5110 and Nokia 6110 are 5100/6100 series phones. The tests have been done with Nokia Data Suite 2.0, Nokia Logo Express, and a Nokia 6110.
21.5.2001 nuukiaworld@gmail.com
Email replies cannot be guaranteed.