# DOLLx8

Digital One Line Link (DOLLx8) is a technology architecture that consists of data communication protocol, synchronous serial data bus and a communication system for embedded systems and electronics. DOLLx8 use ASCII characters in its data protocol, differential signaling in the bus system, where the communication consists of an active long-distance technology based on system logic where handling of the communication is done automatically by the microcontroller and its internal embedded Real-time operating system (RTOS) and software.
A traditional local area network (LAN) is based on Ethernet, a network system used in personal computers where one PC is able to talk to another PCs. In embedded systems, RS-232 TTL (Transistor-Transistor Logic) has dominated the market over a longer period of time as the most common communication standard that also works as an internal embedded network system. With the use of MAX 232 integrated circuit (IC), the RS-232 TTL may connect to an external RS-232 connection where the immediate advantage of using MAX 232 is that there is no need of using positive and negative power supply. It is also possible to connect to USB via RS-232 to USB converter, and even if the original standard for RS-232 was basically a point-to-point system for the serial port on PCs, it is still possible to use RS-232 in small local area network using micro-controller and source code to control the signals and data transmission.
A DOLLx8 embedded network uses its own specific interface system named DOLLx8 Dataport that via DOLLx8 eMaster unit connects to external RS-232 and from there to USB directly, but requires the installation of a separate DOLLx8 driver. DOLLx8 runs on its own internal clock system that allows the DOLLx8 Dataport bus speed to be independent of the RS-232 baud speed set on the PC side, and can thus be determined by the user. With DOLLx8, USB works as a virtual communication port and can be set to a maximum speed of 128,000 kbps.

## MISOLIMA

MISOLIMA is a registered trademark of FIKO Software Co., Ltd. and are being used for all products from FIKO Software which also includes products other than software, electronics and embedded systems. One such product-range is MISOLIMA Home and Offices that is ready-built modular houses supplied with DOLLx8 technologies such as home automation, solar cells and GSM alarm. MISOLIMA accounts for most of the product developments in cooperation with other companies that use DOLLx8 technologies, where MISOLIMA gets grants from the National Innovation Agency in the development of DOLLx8 for Android.
MISOLIMA established Thailand's first foreign owned software and technology park in Chiang Mai in 2001/2002 with approvals from the Thailand Board of Investment under the name Cyber Media Park for e-Gravity (CMPEG)" where the name was later on changed to MISOLIMA Software and Technology Park (MSTP). MSTP consists of 11 400 square meters (122 708 square feet) land area with main building of 1 600 square meters (17 222 square feet).

## History

The first DOLL (Digital One Line Link) version was developed as a joint project between Norway, England and Hungary by Anne Selene FIKO and her team in the early 1990s and was used in home automation, electronic control- and audio system. The early DOLL system was back then based on 18 – bit Pulse-width modulation (PWM) where the communication was 120 Khz and was divided into 10-bit address and 8-bit data word. The signal was sent three times before the electronics of the receiver side (with the right set address code) was able to approve the data transfer and accept the 8 data bits. The reason why the data was sent 3 times was that it should make sure that the receiver did not receive erroneously information in the data network.
Some years later, around 1995 and until 1999, the DOLL was further developed together with a new group of developers in New Zealand and then became the DOLLx8 versions 1.0 to 3.0. DOLLx8 was then also extended into applications such as audio where it was emphasized on that the system should send feedbacks to the master unit and where one could check the status of all devices connected to the network.
The DOLLx8 system was in the period 2001 to 2003 re-developed so that it could receive commands via text messages rather than just data and address bits, and was then developed for both cascade (2-port) and parallel networking using RS-232 and USB. Such cascade and parallel networks had its pros and cons, where links between the units had weaknesses in such way that it had limited cable length of 16 meters, while the RS-232 TTL version had the same limitation but with only 5 meters. With such limitations, the best solution was a cascade network where each device in the network was acting as a signal buffer, where data was received on port one and went out buffered on port two. The major drawback of such solution was that if a device did not work as intended due to errors in the system, the rest of the devices would not be able to communicate with either master devices nor the rest of the network. In the same period MISOLIMA received export subsidies from the Department of International Trade Promotion and held exhibition at Comdex 2002 in Las Vegas, United States
From 2003 to 2006 DOLLx8 was also developed for embedded systems within aviation through Aeronautical Software and Technology Lab (ASLT) in Thailand where ASLT developed a DOLLx8 streaming system for the transfer of GPS-, navigation (navaid), terrain, and MEMS gyroscope data for Electronic Map Display (EMD) and Primary Flight Display (PFD). The system could then receive GPS data in NMEA and binary formats, along with other aircraft data and transmit this along with the flight plan, terrain and navigation data so that both instruments could use the same flight data over one or two DOLLx8 data lines. The advantage of such technology was that the aircraft or helicopters would need only one GPS antenna for two or more GPS based instruments. The streaming system that was developed back then by ASLT was also used in later versions and is now a permanent part of DOLLx8 in connection with sensor streaming technologies and GSM data transfer via GPRS.

## Today's system

The latest version of DOLLx8 is far more advanced than earlier versions and is based on 20-year experience in control systems and sensor technologies, where weaknesses in previous versions has meant that MISOLIMA has by research and development (R&D) developed, extended its expertise, created technologies and come up with products that are also suitable for educational purposes. The latest version of DOLLx8 as of February 2012 is 3.18b.

## DOLLx8 bus signals

The DOLLx8 bus works with five logical signals at 5 volts each, where the bus-line requires resistors as electrical termination (terminator) of 120 ohm. The system uses standard UTP category-5 Ethernet cable (twisted pair cable) with eight contact points and RJ-45 as end-piece connected to i.e. the DOLLx8 eMaster unit. DOLLx8 devices may connect to a PC or server via UTP cable, but can also be used "stand alone" without a central computer.
This table shows the bus signals and color codes in DOLLx8 contact points on MISOLIMA eSherlock 1800Tx8 where the contact 'C2' is connected to the RJ-45 end-piece of the UTP cable. The signals corresponding to the same contact point (1-8) on the RJ-45 connector if the RJ-45 connector is held in the hand with the locking tab facing down and the cable opening is held towards the body. The connectors are numbered 1-8 and goes from left to right.
| Contact point | Signal | Description | Usage | Wire color |
| 1 | DAT- | Data active low | Data between Master and Slave – in full duplex | gray |
| 2 | DAT+ | Data active high | Data between Master and Slave – i full duplex | purple |
| 3 | BSEL- | Bus Select active low | Output from DOLLx8 Master i full duplex | blue |
| 4 | BSEL+ | Bus Select active high | Output from DOLLx8 Master i full duplex | green |
| 5 | CLK | Serial clock signal | Serial clock with output from DOLLx8 Master | yellow |
| 6 | Ground | Connects to signal ground | Ground for signal ground | orange |
| 7 | +5Vdc In | Connects to power supply | +5Vdc may be taken from the USB port | red |
| 8 | +12Vdc In | Connects to power supply | May be taken from i.e. battery with solar cell | brown |
DAT+ and DAT- signals will be activated as soon as data is placed in the internal data buffer memory. DAT- goes positive and then activates the BSEL lines 3.5ms after the DAT lines are activated. The bus speed in DOLLx8 network is managed by the CLK signal and are currently set to 36kHz, which represents 14 milliseconds between each clock pulse. The bus clock is controlled by a positive BSEL- signal (BSEL + goes then simultaneously negative or low) and remains high as long as there is data in the data buffer memory. When data communication is completed and DAT receives HEX 0D 0A (CRLF) from the data buffer memory, the BSEL+ signal goes high again while BSEL signal goes low, which results in that the CLK signal ceases. The DOLLx8 system is then passively in standby or hibernation mode with minimal power consumption that leads to zero electromagnetic interference (EMI) in the network.

## Application

The DOLLx8 solution is used in vehicles, buses, trains, caravans, marine, aviation, laboratories, homes, offices, buildings and in other automated systems. DOLLx8 is based on program-controlled embedded system, or integrated systems technology, and may therefore also interface to multiple systems such as RS-232, RS-422, RS-485, Controller Area Network (CAN-bus), GSM, USB and more, but may also be connected to wireless systems such as Bluetooth, Wi-Fi, VHF, GSM, laser or Internet for communication without the use of the data buffers between the units. DOLLx8 as multi-functional data network with mixture of combinatorial logics may connect via single or multiple connection-points adapted to multiple systems as defined in Common Hybrid Interface Protocol System (CHIPS).

## Modules

MISOLIMA DOLLx8 system is based on several complete small modules and can be used in various integrated electronic projects. The main module is ePAT MCU with a clock frequency of 18.432 MHz, which is also the main unit used in most DOLLx8 systems. ePAT MCU uses only internal memory and distributed memory capacity, according to this table;
| 256 byte as on-chip RAM | used for variables |
| 1 Kbyte as on-chip XRAM | used to buffer variables |
| 32 Kbytes as on-chip Flash Memory | for software |
| 2 Kbyte as on-chip Flash memory | bootloader |
| 2 Kbyte as on-chip EEPROM | used for users settings |
ePAT MCU also includes three 16-bit counters, two serial ports, five I/O ports (4 × 8 = 32 bits + 1 × 2 bits), five channels 16-bit PCA (Programmable Counter Array) with 8-bit PWM, 21-bit watchdog counter and 8x10-bit analog-to-digital converters (ADC). ePAT has integrated switched-mode power supply (SMPS) on the upper side of the PCB which handles power input from 5 to 30 V DC. Beside ePAT MCU, there exists also i.e. small GPS and GSM modules.

## DOLLx8 protocol system (version 3.18b)

DOLLx8 protocol system is based on ASCII-text and/or hexadecimal values, where the users can control device features, settings and parameters via PC, Internet, smartphone or regular mobile phone via SMS. DOLLx8 devices such as fleet management, GSM alarm systems have features such as for Master Phone, where the owner or owners of the system can alone use the mobile network to control DOLLx8 devices. For all others calling the devices via GSM will be treated as a normal phone call. The owner of Master Phone can also use a SpyCall function where the owner can call the device and listen into what's being said without those on the other end knowing about it.
All DOLLx8 devices have an integrated unique vendor and product ID that consists of 12-digits hexadecimal values which includes Country Code, Company Code, Product ID, Manufacturer Product ID, User's Product ID and User sub-Product ID.
A DOLLx8 command may according to the table hereunder look like this: @ax, 02C002A030010, ON <CRLF>. If this command is sent to a DOLLx8 device with a buzzer installed it will start to buzz until the "OFF" command is sent to the device. If the command was successfully sent and received by the device with the right ID, then the device will acknowledge with #ax,02C002A030010,ON followed by <CRLF> as confirmation that the device has executed the command.
It is also possible to use a key name instead of the 12-digit Vendor and Product ID and if the key name is set to "living room" then the same command would look like this @ax,living room,ON <CRLF>.
| Description | Byte | ASCII value | Character value/Description |
| Start command | #1 | 064d 40h | @ |
| Product function | #2 | 120d 78h | x for DOLLx8 functions |
| Intern function | #3 | 086d 56h | B for buzzer function |
| Comma separation | #4 | 044d 2Ch | , |
| Country Code | #5-7 | 044d 2Ch | 02Ch for British manufacturer |
| Company Code | #8-10 | - | 002h for MISOLIMA |
| Group-ID | #11 | 065d 41h | Ah for node device |
| | | 069d 45h | Eh for slave device |
| | | 070d 46h | Fh for master device |
| Manufacture Product-ID | #12-13 | - | 00h to FFh |
| Users Product-ID | #14-15 | - | 00h to FFh |
| Users sub-Product-ID | #16 | - | 0h to Fh |
| Comma separation | #17 | 044d 2Ch | , |
| Function message strig | #18+ | - | DOLLx8 message |
| End command | #1 | 0Dh | CR |
| | #2 | 0Ah | LF |
* ↑ All DOLLx8 device has a product identification code consisting of an ASCII character
* ↑ All DOLLx8 devices have a functional identification code consisting of an ASCII character
* ↑ The Country Code is specified as 3-digit hexadecimal code
* ↑ Company Code is specified as 3-digit hexadecimal code and together with the assigned Country Code it becomes manufacturer ID.
* ↑ DOLLx8 message can be 32 characters, but in SMS it can be a maximum of 160 characters
* The Product ID bytes from #5 to #16 can also be replaced with a user-defined key names such as "living room"

## Example of DOLLx8 VB code

This section shows how to send a command to DOLLx8 via MISOLIMA.DLL and Visual Basic 6.0. In this case, an integrated light function on MISOLIMAs eSinclar PWM4 RGB + W LED light system is turned ON and changes colors automatically where according to the next two VB examples the speed between red, green and blue can be adjusted up or down by the user.
Adjusting color change speed opp
Adjusting color change speed down

## Internet of Things

In addition to the above-mentioned protocol system, the latest version of DOLLx8 has also integrated Internet of Things (IoT) functions which, among other things, registering an IoT serial number that consist in total of 281,474,976,710.655 unique combinations. This IoT serial number is registered by the manufacturer and together with the 12-digit DOLLx8 Product ID, this becomes the "IoT product-ID" which can then be identified as a unique number on a worldwide basis.