tft display interface with 8051 factory
Senior Management and Product Marketing teams all now want TFT displays on their products, showing content rich user interfaces full of colour and graphics.
Monochrome displays are slowly going out of style. Not only have prices for colour TFTs now dropped to levels on par with STN displays, but TFTs also offer more options with respect to the display of information.
So, why do many engineers still hesitate when it comes to adding colour to their products? One reason is integrating conventional TFTs into existing systems is usually a complex process. After all, colour displays require more data and hence more memory at a higher rate than monochrome displays. Depending on the display’s level of integration, data must often be continuously updated. Basically, a high-performance processor becomes necessary…………..or does it?
IDS have introduced a range of UART TFTs from AMPIRE, a manufacturer specializing in displays for industrial applications,and for their longevity of product. These TFTs have been developed as an intelligent display solution that unburdens the main processor and is easier to drive at the same time. With integrated µC logic and memory, as well as a UART interface, these intelligent displays offer a nearly complete plug-and-play solution. Our small to medium-sized UART TFT platforms are integrated with touch screen, driving electronics and backlight drivers.
The modules can be configured as UART, RS-232 or USB versions and feature a wide input voltage range from 4.6VDC to 26VDC. With a brightness of up to 500cd/m² and resolution ranging from VGA to WVGA, the displays are well suited for many different applications. The modules are OS agnostic, working with any host operating system, or even without a host OS.
IDS have designed a complementary UI software tool to enable rapid and simple implementation of a GUI which is then stored within the on-board flash memory.Once you have installed the drivers for the USB UART to UART Display & the UART Windows software on your PC you are ready to start connecting your display (RS232/USB) and uploading your images.
Manipulate specific parts of the screen by overlaying text, or images, even create scrolling effects by shifting regions of the display. Very quickly you will get an idea of how your designs will look on the display, and how you might trigger them with simple command line instructions.
The integrated fonts and basic character/draw functions, such as text, pixel, line, right angle and circle, permit an attractive GUI to be up and running within a short amount of time. Images or graphics can be stored in 65,000 colours in the internal Display Flash, to be displayed when needed.Data is exchanged between the UART system, (UART, RS232, or USB) and your microcontroller - enabling real time interaction, and animations in high resolution,on a TFT from a few simple lines of code.
The large amounts of data that usually need to be transferred from the host system each time a TFT display updates are held on-board, dramatically reducing the strain on the CPU workload.
Featuring simple, low-overhead mechanical and technical integration, these displays are suited for the first time user or experienced display integrators.
IDS have produced a range of UART kits making it even easier to be up and running within minutes, containing a display, power supply, cables, software and example code and images.
The display is a critical component in every project, impacting the case, firmware, electrical design, user interface, and even battery life. For these reasons, and because it is the most visible component of your product, it must be approved by the mechanical design team, management and marketing.Before these teams can approve, they need to see it in action. But it can take days or weeks to connect a display to your platform, initialize it and build a code library able to create believable demonstrations. Meanwhile, the whole project is on hold.Our 8051 development kit / demonstration board can solve this problem. Use it to get the display seen, demonstrated and approved for your project.
ER-DBT032-3 is a microcontroller 8051(80C51) demonstration and development kit for ER-TFT032-3.1 product that is 3.2 inch tft lcd display with ILI9341 controller.The kit includes MCU board controlled by STC12LE5A60S2,ISP(In System Programming) with USB port and cable to customize the demonstration that includes your own bitmap images,personalized fonts,symbols,icons and burn sketches,microSD card that is written graphic and text into it,the power adaptor,the adaptor board with various pitch dimension used to connect MCU board and display.Optional for 8080 8-bit,8080 16-bit parallel interface and 3-wire,4-wire serial interface.
The display is a critical component in every project, impacting the case, firmware, electrical design, user interface, and even battery life. For these reasons, and because it is the most visible component of your product, it must be approved by the mechanical design team, management and marketing.Before these teams can approve, they need to see it in action. But it can take days or weeks to connect a display to your platform, initialize it and build a code library able to create believable demonstrations. Meanwhile, the whole project is on hold.Our 8051 development kit / demonstration board can solve this problem. Use it to get the display seen, demonstrated and approved for your project.
ER-DBT035-6 is a microcontroller 8051(80C51) demonstration and development kit for ER-TFT035-6 product that is 3.5 inch tft lcd display with ILI9488 controller.The kit includes MCU board controlled by STC12LE5A60S2,ISP(In System Programming) with USB port and cable to customize the demonstration that includes your own bitmap images,personalized fonts,symbols,icons and burn sketches,microSD card that is written graphic and text into it,the power adaptor,the adaptor board with various pitch dimension used to connect MCU board and display.Optional for 8080 8-bit,8080 16-bit parallel interface and 3-wire,4-wire serial interface.
This guide is about DWIN HMI Touch Screen TFT LCD Display. HMI Means Human-Machine Interface. DWIN is specialized in making HMI Touch screen displays that are compatible with all microcontrollers like Arduino, STM32, PIC, and 8051 families of Microcontrollers.
This is a Getting Started tutorial with 7-inch DWIN HMI TFT LCD Display. We will see the architecture, features, board design, components, and specifications. We will also learn about the TTL & RS232 interfaces. Using the DGUS software you can create UI and with SD Card you can load the firmware on display memory.
You can change the TTL Interface mode or RS232 mode from here. Just solder these two terminals as shown here to enable TTL Interface. By default, the module is in RS232 Interface.
One of the method to load the firmware to the T5L DWIN LCD Display is by using the SD Card. An SD Card of up to 16GB can be used to download the firmware files. We can easily insert the Micro SD card into the SD Card slot on the backside.
After copying the file, remove the SD Card from your computer and insert it into the SD Card slot of DWIN LCD Display. Then power the display using the USB Cable. The firmware downloading process will start automatically.
The next part of this tutorial includes creating UI and interfacing DWIN LCD Display with Arduino. For that you can follow the DWIN LCD Arduino Interfacing Guide.
Displaying Characters on an LCD Character Module describes the initialization, displaying of text and creating, down loading and displaying custom characters on our character modules. The code sample is in 8051 assembly language and a program flow chart is also provided. (79k)
Driving a character display from a PC printer port describes a simple method of controlling an LCD character module directly from the parallel printer port of a PC. There is little, if any extra hardware required and the module may even be powered from the PC. (40k)
Interfacing to a Graphics Module with a T6963C Controller describes the software and hardware to display an image on any Hantronix graphics module with a built-in T6963C controller. This note includes schematic, flow chart and sample software. The code is in 8051 assembly language. (53k)
Interfacing a 128 x 64 Graphic Module with an 8 bit Micro-controller describes the software and hardware to display an image on a Hantronix HDM64GS12. This note includes schematic, flow chart and sample software in 8051 assembly language. (76k)
Displaying in Negative or Positive Mode on Graphics Displays describes a software method of obtaining either a negative or positive image on a graphics display, which is either positive or negative from the factory. (13k)
Power Supplies for Contrast Adjustment describes circuits for building VDD to VEE power supplies for generating the contrast voltage. These efficient circuits can be used with battery-operated equipment. (41k)
LED Back Light Driving Methods describes several ways of driving an LED back light with emphasis on a technique for obtaining a bright display with minimum drive current. It also describes a method of controlling the brightness of the LED back light. (14k)
Temperature Compensation for LCD Displays. This paper discusses the issues involved in temperature compensation of the LCD operating voltage. A sample circuit to provide this compensation is also discussed. (23k)
Analog Touch Screens An explanation of the theory of operation of 3 versions of this popular type of touch screen with suggestions on controller design. (227k)
Beijing STONE Technology co., ltd was established in 2010 and devoted itself to manufacturing and developing high-quality intelligent TFT LCD display modules.
Our vision is to become one of the world"s top display manufacturers in the industrial intelligent field. And providing top-quality products and professional technical services to customers all over the world.
The modules come with a UART TFT serial interface that can be controlled by any MCU through simple but powerful instruction set like the 8051 series, AVR series, MSP430 Series, STM32 series, MC9S12, and Arduino series, among others.
Each TFT display LCD module has a wide range of applications, such as automated system control, vending machine functionality, intelligent lockers, electricity equipment (oiling machine, EV charger), elevators, smart home and office, precision instruments, and much more.
To date, we have delivered custom display solutions to over 3000 customers around the world. Our TFT LCD modules have been widely praised for their quality and performance and that is in large part thanks to our partners, including NI, Siemens, ThyssenKrupp, and many others. These long-term cooperative relationships have been mutually beneficial and we hope to continue a long history of success.
Today’s Tutorial is on DWIN HMI Touch Screen Display. HMI Means Human-Machine Interface. DWIN is specialized in making HMI Touch screen displays that are compatible with all microcontrollers like Arduino, STM32, PIC, and 8051 families of Microcontrollers. This is a Getting started tutorial with DWIN HMI Display. So, we will cover everything about this display in this session.
You can change the TTL Interface mode or RS232 mode from here. Just solder these two terminals as shown here to enable TTL Interface. By default, the module is in RS232 Interface.
Here we are provided with an HDL662B adaptor board. This board is nothing but a USB to TTL board. Then we have here FCC cable which is supplied with this HDL board. On the LCD board, you can see the flip-open connector. Just flip open the connector and insert the FCC cable. Keep in mind that the blue ends should be on top. Now you can just press the lock so the FCC cable is locked.
Now, let us visit the official website of dwin-global.com. You can see this DWIN company making a wide range of High-quality Touch screens for Android LCD, HDMI LCD, and Linux LCD Displays.
I have created my own UI using this DGUS Software. I will cover the detailed video on How to create your own UI for DWIN Display using DGUS software In the upcoming episode.
Now, let’s flash this UI on this 7-inch DWIN Display. You need to Copy the DWIN underscore SET Folder onto your SD Card then Insert the SD card on LCD Display. Now connect the USB cable connected to the HDL board.
You can see the downloading process started immediately after powering the LCD. After completing the download process remove the USB from the PC then remove the SD Card from the Display. Now again connect the USB Cable. Now you can see our newly flash UI on LCD Display.
Then we will make a serial communication between Arduino and LCD Display to monitor the sensor data and control our AC Home appliances like Light, Fan, AC, TV, etc. using this LCD Touch Display.
This is the Getting started with DWIN HMI Display video tutorial. Hope you will like it. You can subscribe to our youtube channel so you will not miss any future updates from our channel.
I have the afore mentioned display and i"ve been looking for help getting it up and running for some time. I found another person in the same situation as me, please help us:
I have been scouring the web to find all different bits of information for the Sainsmart 2.8 inch touch display with no avail on instructions on how to actually make it work.
I assumed that being it has a compatible 40 pin header that all I needed to do was put a 40 pin cable on it and install software and the os would pick up the display by default.
SainSmart 2.8" TFT LCD Display is a LCD touch screen module. It has 40pins interface and SD card and Flash reader design. It is a powerful and mutilfunctional module for your project.The Screen include a controller ILI9325, it"s a support 8/16bit data interface , easy to drive by many MCU like arduino families,STM32 ,AVR and 8051. It is designed with a touch controller in it . The touch IC is XPT2046 , and touch interface is included in the 40 pins breakout. It is the version of product only with touch screen and touch controller.
Voltage type: 5v or 3v voltage input voltage,input is selectable. Because TFT can only work under 3.3 V voltage, so when the input voltage VIN is 5V, need through the 3.3 V voltage regulator IC step down to 3.3V , when the input voltage of 3.3 V, you need to use the zero resistance make J2 short , is equivalent to not through the voltage regulator IC for module and power supply directly.(Click here)
So I contacted them and they sent me out the documentation etc. As I read all the documentation there was not one mention of how to get the PI to recognize the display. So I contacted them again and the response was to try element14.com. I went there and again no avail.
I am hoping that this is the last stop and that someone might have instructions on how to get the pi to recognize the display. Currently when hooked up the screen lights up, but that is about it, no output what so ever. The only output is what is going through the hdmi port to the tv.
In electronics world today, Arduino is an open-source hardware and software company, project and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Arduino board designs use a variety of microprocessors and controllers. The boards are equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (‘shields’) or breadboards (for prototyping) and other circuits.
The boards feature serial communications interfaces, including Universal Serial Bus (USB) on some models, which are also used for loading programs. The microcontrollers can be programmed using the C and C++ programming languages, using a standard API which is also known as the “Arduino language”. In addition to using traditional compiler toolchains, the Arduino project provides an integrated development environment (IDE) and a command line tool developed in Go. It aims to provide a low-cost and easy way for hobbyist and professionals to create devices that interact with their environment using sensors and actuators. Common examples of such devices intended for beginner hobbyists include simple robots, thermostats and motion detectors.
In order to follow the market tread, Orient Display engineers have developed several Arduino TFT LCD displays and Arduino OLED displays which are favored by hobbyists and professionals.
Although Orient Display provides many standard small size OLED, TN and IPS Arduino TFT displays, custom made solutions are provided with larger size displays or even with capacitive touch panel.
The traditional mechanical instrument lacks the ability to satisfy the market with characters of favorable compatibility, easy upgrading, and fashion. Thus the design of a TFT-LCD (thin film transistor-liquid crystal display) based automobile instrument is carried out. With a 7-inch TFT-LCD and the 32-bit microcontroller MB91F599, the instrument could process various information generated by other electronic control units (ECUs) of a vehicle and display valuable driving parameters on the 7-inch TFT-LCD. The function of aided parking is also provided by the instrument. Basic principles to be obeyed in circuits designing under on-board environment are first pointed out. Then the paper analyzes the signals processed in the automobile
instrument and gives an introduction to the sampling circuits and interfaces related to these signals. Following this is the functional categorizing of the circuit modules, such as video buffer circuit, CAN bus interface circuit, and TFT-LCD drive circuit. Additionally, the external EEPROM stores information of the vehicle for history data query, and the external FLASH enables the display of high quality figures. On the whole, the accomplished automobile instrument meets the requirements of automobile instrument markets with its characters of low cost, favorable compatibility, friendly interfaces, and easy upgrading.
As an essential human-machine interface, the automobile instrument provides the drivers with important information of the vehicle. It is supposed to process various information generated by other ECUs and display important driving parameters in time, only in which way can driving safety be secured. However, the traditional mechanical automobile instrument is incompetent to provide all important information of the vehicle. Besides, the traditional instrument meets great challenge with the development of microelectronic technology, advanced materials, and the transformation of drivers’ aesthetics [1, 2]. Moreover, the parking of the vehicle is also a problem puzzling many new drivers. Given this, traditional instruments should be upgraded in terms of driving safety, cost, and fashion.
The digital instrument has functions of vehicle information displaying, chord alarming, rear video aided parking, LED indicating, step-motor based pointing, and data storage. The instrument adopts dedicated microcontroller MB91F599, a 7-inch LCD, and two step-motors to substitute for the traditional instrument. All the information generated by other ECUs can be acquired via not only the sample circuits but also the CAN bus.
The instrument provides interfaces for different types of signals and the CAN bus. All types of signals (such as square wave signal, switching signal, resistance signal, analog voltage signal, etc.) coming from other ECUs can be acquired either from different types of sampling circuits or from the CAN bus. This makes it suitable for both the outdated application where the information from other ECUs can only be acquired via the sampling circuits and the modern application where the information from other ECUs are transmitted via the CAN bus.
The CAN bus interface and the 7-inch TFT-LCD make it more convenient to upgrade the instrument without changing the hardware. If the software needs to be upgraded, we need not bother to take the instrument down and program the MCU. Instead, we can upgrade the instrument via the vehicle’s CAN network without taking the instrument down, which makes the upgrading more convenient. Most of the information from other ECUs can be transmitted via the CAN bus; so, we do not have to change the hardware circuits if some of the ECUs’ signals are changed in different applications. Besides, since most of the driving parameters are displayed on the TFT-LCD, and the graphical user interface can be designed with great flexibility by programming, only the software needs to be revised to meet different requirements of what kind of driving parameters to display and so forth. These characters, together with the reserved interfaces, enhance the instrument’s compatibility in different applications.
It is a trend to incorporate the instrument into the vehicle information system via the CAN bus. The CAN bus interface gives the instrument access to the vehicle CAN network which enables easier fault diagnosing [3, 4] and information sharing. The fault diagnosing could be realized by accomplishing the fault diagnosing protocol above the low-speed CAN bus.
On the one hand, there are some automobile instruments which adopt 8-bit MCUs or 16-bit MCUs which have limited peripherals, so it is difficult for them to meet some requirements such as rearview video and high real-time data processing performance. And many extra components are needed if the designer wants to accomplish some functions such as video input. On the other hand, there are some advanced automobile instruments which adopt high performance MCUs (such as i.MX 53, MPC5121e, and MPC5123) and run Linux on them. They even use larger TFT-LCDs (such as the 12.3-inch TFT-LCD with a resolution of 1280 × 480 pixels) to display driving parameters. These automobile instruments show higher performances than the instrument in this paper. However, they are more expensive than this automobile. This instrument is able to provide almost all the functions of the advanced automobile instrument with a lower cost.
The instrument receives signals from other ECUs via the sampling circuits or the CAN bus interface. It can also receive commands from the driver via the button interface. The signals are then processed by the MCU, after which the MCU may send the vehicle information to the LCD or light the LEDs and so forth, according to the results. Therefore, the automobile instrument can be viewed as a carrier of the information flow. And the design of the system can be viewed from two aspects: the hardware system and the information flow based on it.
Overvoltage protection circuits should be placed at the interfaces of power supply and important signals (such as the CAN bus interface) in case of voltage overshoots.3.1.3. Generality
Reserved interfaces should be taken into consideration to shorten the development cycle of subsequent similar instruments and optimize the instrument for general use.3.1.4. Inventories
The automobile instrument receives and processes information from other ECUs such as the tachometer, the speedometer, the cooling water temperature gauge, the oil pressure gauge, and the fuel gauge. The signals coming from these ECUs are of different types, according to which different kinds of sampling circuits and interfaces should be designed. Accordingly, a classification of the input signals is first carried out, as shown in Table 1.
Respecting the above mentioned factors, we finally chose the MB91F599 produced by Fujitsu as the microcontroller. The MB91F599 is particularly well-suited for use in automotive instrument clusters using color displays to generate flexible driver interfaces. It integrates a high performance FR81S CPU core which offers the highest CPU performance level in the industry. Besides, it has a graphics display controller with strong sprite functionality, rendering engine, and external video capture capabilities. These greatly reduce the need for extra components and enhance the stability of the system. The rendering engine can operate in combination with the video capture to enable image manipulation. Overlaid graphics such as needles or parking guidelines can be rendered in conjunction with captured video, which helps to accomplish the aided parking. What is more, multiple built-in regulators and a flexible standby mode enable the MB91F599 to operate with low power consumption.
Figure 6 shows RGB with sync in NTSC format. The RGB varies in a positive direction from the “black level” (0 V) to 700 mV. Meanwhile, a sync waveform of −300 mV is attached to the video signal. Since the output video signal of the camera is AC-coupled, a clamp circuit is needed to clamp the RGB and sync to a reference voltage and leave the others to vary. If not clamped, the bias voltage will vary with video content and the brightness information will be lost [5].
Here, the sync signal is not present, so the clamp level is controlled by the clamp level output pin of the microcontroller, which is called “keyed clamp” [5]. The graphics display controller of the microcontroller let the clamp level output occur in coincidence with the sync pulse; that is, the clamp level output occurs during the sync tip in Figure 6, thus we get the “sync tip clamp” [5].
Since the FLASH size of the microcontroller is only 1 MB which is limited for the storage of pictures displayed on the LCD, external FLASH is needed to store different kinds of meaningful pictures such as the background of the dial. Two S29GL256N chips with a memory capacity of 256 Mb are chosen for picture data storage for their high performance and low power consumption. The application circuits of the chips are provided in their datasheets, so it is unnecessary to go into the details of them here.
Controller Area Network (CAN) is widely deployed in automobile, industry, and aerospace domains. As a major trend of the technological development of in the automation industry, CAN is now reputed as a local area network in automation [6]. Its low cost and ability to integrate with most microcontroller silicon families have made it a standard for automobile applications [7–9].
For this design, only the CAN transceiver and its auxiliary circuit are needed since the MB91F599 is integrated with two CAN controllers, which are connected to the high-speed and low-speed CAN bus, respectively. TJA1040 is chosen as the CAN transceiver for its low consumption in standby mode. Besides, it can also be woken up via CAN bus, which is required by some automobile instruments. Detailed circuit is provided in the datasheet of TJA1040, so the repetitious details need not be given here. Note that for high-speed CAN, both ends of the pair of signal wires must be terminated. ISO 11898 requires a cable with a nominal impedance of 120 Ω [19]; therefore, 120 Ω resistors are needed for termination. Here, only the devices on the ends of the cable need 120 Ω termination resistors.
The 7-inch TFT-LCD has a resolution of pixels and supports the 24-bit for three RGB colors. The interface of the 60-pin TFT-LCD can be categorized into data interface, control interface, bias voltage interface, and gamma correction interface.
The data interface supports the parallel data transmitting of 18-bit (6 bits per channel) for three RGB colors. Thus, a range of colors can be generated. The control interface consists of a “horizontal synchronization” which indicates the start of every scan line, a “vertical synchronization” which indicates the start of a new field, and a “pixel clock.” This part is controlled by the graphics display controller which is integrated in the MB91F599. We just need to connect the pins of the LCD to those of the microcontroller correspondingly.
Bias voltages are used to drive the liquid crystal molecules in an alternating form. The compact LCD bias IC TPS65150 provides all bias voltages required by the 7-inch TFT-LCD. The detailed circuit is also provided in the datasheet of TPS65150.
The greatest effect of gamma on the representations of colors is a change in overall brightness. Almost every LCD monitor has an intensity to voltage response curve which is not a linear function. So if the LCD receives a message that a certain pixel should have certain intensity, it will actually display a pixel which has intensity not equal to the certain one. Then the brightness of the picture will be affected. Therefore, gamma correction is needed. Several approaches to gamma correction are discussed in [20–22]. For this specific 7-inch LCD, only the producer knows the relationship between the voltage sent to the LCD and the intensity it produces. The signal can be corrected according to the datasheet of the LCD before it gets to the monitor. According to the datasheet, ten gamma correction voltages are needed. These voltages can be got from a resistive subdivision circuit.
For this instrument, the LED indicators, the backlight, and the chord alarm need to be supplied with a voltage of +12 V; the CAN transceiver, the EEPROM, and the buttons need to be supplied with a voltage of +5 V; the video buffer circuit, the external FLASH, and the data interface of the LCD need to be supplied with a voltage of +3.3 V. Besides, the microcontroller needs to be supplied with voltages of +5 V and +3.3 V simultaneously. Figure 8 offers a detailed block diagram of the power supply for the automobile instrument.
The main task for the program is to calculate the driving parameters of the vehicle and display them on the TFT-LCD. The calculation is triggered by the input signals via the sampling circuits or the CAN bus. The main program flow chart of the system is shown in Figure 10.
The design scheme of a TFT-LCD based automobile instrument is carried out form aspects of both the hardware and the main program flow chart. The MB91F599 simplifies the peripheral circuits with its rich on-chip resources and shows high performance in real-time data processing. The automobile instrument is capable of displaying the velocity of the vehicle, the engine speed, the cooling water temperature, the oil pressure, the fuel volume, the air pressure, and other information on the TFT-LCD, which contributes a lot to driving safety and satisfies drivers’ aesthetics. Besides, the rearview video makes the parking and backing easier and safer for the driver. Moreover, the CAN bus interface and TFT-LCD make it easier for the upgrading of the instrument without changing the hardware, thus saving the cost.
Beijing STONE Technology co., ltd was established in 2010 and devoted itself to manufacturing and developing high-quality intelligent TFT LCD display modules.
Our vision is to become one of the world"s top display manufacturers in the industrial intelligent field. And providing top-quality products and professional technical services to customers all over the world.
Our core TFT LCD display modules integrate a CPU, flash memory, and touch screen in the hardware unit. Paired with an easy-to-use free GUI design software and complete instruction set, customers can avoid time-consuming accessories selection and system integration tasks. These units greatly reduce the workload in HMI development and make the entire process faster and easier.
The modules come with a UART TFT serial interface that can be controlled by any MCU through the simple but powerful instruction set like the 8051 series, AVR series, MSP430 Series, STM32 series, MC9S12, and Arduino series, among others.
Each TFT display LCD module has a wide range of applications, such as automated system control, vending machine functionality, intelligent lockers, electricity equipment (oiling machine, EV charger), elevators, smart home and office, precision instruments, and much more.
To date, we have delivered custom display solutions to over 3000 customers around the world. Our TFT LCD modules have been widely praised for their quality and performance and that is in large part thanks to our partners, including NI, Siemens, ThyssenKrupp, and many others. These long-term cooperative relationships have been mutually beneficial and we hope to continue a long history of success.