Truesense Imaging Officially Presented

...
Rochester Democrat and Chronicle: Truesense Imaging has formally announced its new corporate identity. Formerly the Image Sensor Solutions (ISS) division of Eastman Kodak Company, Truesense Imaging was acquired by Platinum Equity through a transaction with Kodak that closed on November 7, 2011 and Truesense is now operating as an independent company. Truesense Imaging, as part of the Platinum Equity portfolio, will continue to provide the industry’s broadest range of image sensor devices that combine the high resolution, ultra-fast frame speeds, and unmatched image quality that customers all over the world depend upon for their most demanding applications.

“We are extremely pleased to officially announce the launch of our new brand and corporate identity,” said Chris McNiffe, Chief Executive Officer of Truesense Imaging and former general manager of Kodak’s ISS business. “As an independent company, we now have a great opportunity to expand our leadership position and to grow into new markets and new applications that leverage our core strengths in imaging technology. This is a very positive step forward for our business, our employees and, of course, our customers.”

Truesense Imaging is headquartered in Rochester, NY. The company-owned facilities in Rochester house all research & development, marketing, and business operations, including a highly specialized image sensor manufacturing operation.

1:39 PM

Omnivision Rumors

...
Seeking Alpha publishes few speculations trying to explain the recent spike in Omnivision's stock price:

"1. Buyout Rumors - There have been OmniVision buyout rumors in the past, but these most recent ones seem to have an element of validity due to the unexplained spike in the stock price. Past rumors of either Apple or Nokia purchasing OmniVision have been tenuous at best and shot down quickly. However, one rumor surfacing this week is particularly intriguing and that is of a possible buyout by Saudi Prince Al-Waleed bin Talal of Kingdom Holding Company. ...in a recent interview with the Dubai Chronicle, Al-Waleed bin Talal mentions that his company is interested in investing in American technology companies. Whether it be from royalty or from some other suitor, it appears as if there is interest in the M&A market for the asset-rich camera chip supplier.

2. Ipod Nano Camera - The next rumor arises from the report by MacRumors.com that the next iPod Nano will go back to having a 1.3MP camera after that feature was skipped in the most recent Nano generation. This would be excellent news for OmniVision because it is known for providing lower-end camera chips such as the front-facing one in the new Iphone.

3. OV10810 confidence - The final positive indicator is that OmniVision's new 10-megapixel CMOS image sensor has been named the "Best image sensor of 2011" by Electronic Design Magazine. This restores faith in the ability of the company to innovate to meet the ever-increasing needs of cell phone manufacturers.
"
9:14 AM

Aptina CX-Sized Sensor Named Finalist of 2012 Electronics Creativity Award

...
PR Newswire: UBM announced the finalists for the 2012 UBM Electronics ACE Awards. The new awards program brings together the EE Times ACE (Annual Creativity in Electronics) Awards and EDN's Innovation Awards into one program. The awards program honors the people and companies behind the technologies and products that are changing the world of electronics. The awards ceremony will take place on Tuesday, March 27 at The Fairmont San Jose, during DESIGN West - a new conference and expo.

The only image sensor in the finalists list is Aptina AR1010 high-speed sensor. It appears to be quite similar to one used in Nikon J1/V1 mirrorless interchangable lens camera (Chipworks report). EDN explains why this sensor was selected:

"Aptina’s AR1010 is a high-speed, CX-format, 10-MP CMOS image sensor that is enabling a new class of consumer digital still camera. Traditional compact digital still cameras (DSCs) have the benefits of being reasonably priced and easy to use but are slow and use small-format sensors that provide a less than optimal imaging performance. The alternative has been for consumers to upgrade to DSLR cameras that are bulkier, more expensive, and not so easy to use, yet use larger-format sensors that allow the capture of quite high-quality images. The new MILC segment is taking the best from DSCs and DSLRs to provide a camera that is reasonable in size and price, yet uses a larger-format sensor for high-performance imaging. The AR1010 targets this MILC segment and does so with a unique high-speed sensor design to further advance the speed of image capture and eliminate the slow camera response. The AR1010 has enabled a leading camera manufacturer to introduce an innovative camera in the MILC segment and highlights the performance benefits and advanced features the sensor enables. Key benefits/features of this particular camera enabled by the AR1010 sensor are a large CX-format imaging array with high sensitivity (ISO100 to ISO6400); small and light interchangeable lens digital cameras; full HD video, 1080p; fast autofocus system; focal plane phase-detection AF + contrast-detect AF; 10fps continuous shooting, with AF tracking; and 60fps full resolution shooting."
8:56 AM

Panavision Patent Claims Against Aptina and Canon Turned Down

...
Law360: A California court on Friday shot down patent claims brought by Panavision Imaging against Canon USA, Micron and Aptina, ruling that the companies did not infringe a patent covering video imaging technology.

In two separate orders, U.S. District Judge Mariana R. Pfaelzer granted a pair of motions for summary judgment of noninfringement brought by Canon as well as Micron and Aptina, finding that Panavision failed to prove the companies infringed its patent covering an invention.

The original lawsuit included Omnivision as well. It's not clear what has happened with this part of the lawsuit.

Update: Weil: The recent news on patent dismissal relate to US Patent 6,818,877. Panavision originally brought the suit in 2009, alleging infringement of four of its imaging technology patents. In April 2011, Judge Pfaelzer dismissed three of the patents-in-suit.
11:39 AM

How to interface Servo Motor with 8051 Microcontroller (AT89C51)

...



8051 Microcontroller Servo Motor ProjectThis project demonstrates the operation of a servo motor. The control signals for the rotation of the motor are provided by 8051 microcontroller (AT89C51). Here, the servo arm is rotated by 5° from the previous position, starting from 0 °as initial position. As the servo reaches a limit, the arm comes back to the initial position (0°). For basic concepts and know-how of a servo motor, refer to the article Servo Motor.


DESCRIBTION(click here)
  • The servo motor is controlled by feeding pulse width modulated (PWM) signal at the control wire of the servo motor. In addition a 4.8V (ideally 5V) DC supply is provided to the red lead of the servo. The black lead of the servo is connected to Ground.

    The first pin of port P1 (P1^0) of AT89C51 microcontroller is set as the output pin to provide control signal to the servo motor. Before connecting to the control wire of servo, the output from the microcontroller is fed through a comparator IC (LM324) so that the signal is protected from any loss due to overloading.

    In the program, one of the 8051 timers is configured to generate flag after every 50 µs. Usually the pulse durations corresponding to 0° and 180° angular positions are 1ms and 2ms, but these durations may vary for different servos. Here, a pulse with ON time of 700 µs sets the motor closer to 0° and a pulse of 5500 µs sets the motor to 180°. A variable is taken which is initialized to a value 14. A function using timer is written that has the variable mentioned above as an argument. This function generates time delay in the multiples of 50 µs. Initially when the microcontroller executes program, a pulse with ON time of 700 µs (14 x 50 µs) followed by OFF time of 18 ms is generated. This shifts the servo horn to 0° angle.
    Every time the value of variable is increased by 5. This increases the ON time of pulse by 250 µs (5 x 50 µs). So every new pulse has an ON time 250 µs greater than the previous one. This is followed by an OFF time of 18 ms. In this way, at every loop the servo is rotated by 5° ahead.
    As the value of variable reaches above 100 it is again set to 14. This moves the servo back to the initial position of 0° after a full rotation.

CODE(click here)


  • // Program to rotate servo by 5 degree from previous position starting from 0 degree



    // 0 degree = 700us

    // 180 degree = 5500us

    // Timer1 pulse after 50us -23



    #include<reg51.h>

    sbit output=P1^0;   //Output to motor

    int count;



    void delay(unsigned int msec)   // Function for delay

    {

    int i,j;

    for(i=0;i<msec;i++)

    for(j=0;j<1275;j++);

    }



    void timer(int msec) // Function for timer

    {

    int i;

    TR1=1;

    for(i=0;i<msec;i++)

    {

    while(TF1==0);

    TF1=0;

    }

    TR1=0;

    }

    void main()

    {

    int i;

    TMOD=0x20; // Mode2

    TH1= -23; // 50usec timer

    output=0;

    count=14;

    while(1)

    {

    if(count>=100)

    count=14;

    else

    count=count+5;

    for(i=0;i<200;i++)

    {

    output=1;

    timer(count);

    output=0;

    timer(360);

    }

    delay(100);

    }

    }



COMPONENTS(click here)
  • AT89C51 Microcontroller
    IC LM324
8:00 AM

How to interface GPS with 8051 Microcontroller (AT89C51)

...


Interface GPS with 8051 Microcontroller (AT89C51)GPS has become an efficient tool in the field of scientific use, commerce, surveillance and tracking. This project presents a small application based on Global Positioning System. It depicts the use of GPS module/receiver to find latitude and longitude of its location. The data obtained from GPS receiver (GPGGA sentence) is processed by the microcontroller to extract its latitude and longitude values.

The GPS Module has been interfaced with
AT89C51 and the location values are displayed on a 16x2 LCD interface.


DESCRIBTION(click here)
  • The GPS module continuously transmits serial data (RS232 protocol) in the form of sentences according to NMEA standards. The latitude and longitude values of the location are contained in the GPGGA sentence (refer NMEA format). In this program, these values are extracted from the GPGGA sentence and are displayed on LCD.

    The serial data is taken from the GPS module through
    MAX232 into the SBUF register of 8051 controller (refer serial interfacing with 8051). The serial data from the GPS receiver is taken by using the Serial Interrupt of the controller. This data consists of a sequence of NMEA sentences from which GPGGA sentence is identified and processed.

    The extraction of location values is done as follows. The first six bytes of the data received are compared with the pre-stored ($GPGGA) string and if matched then only data is further accounted for; otherwise the process is repeated again. From the comma delimited GPGGA sentence, latitude and longitude positions are extracted by finding the respective comma positions and extracting the data. The latitude and longitude positions extracted are displayed on the
    LCD interfaced with AT89C51.

    To obtain more details (other than latitude and longitude) from the GPS receiver, GPRMS sentence can be used. Refer next article.

    The circuit connections are as follows:
    Receiver1 (R1) of MAX232 has been used for the serial communication. The receiver pin of GPS module is connected to R1IN (pin13) of MAX232. R1OUT (pin 12) of MAX232 is connected to RxD (P3.0) of AT89C51.

    Pins 1-3 of port P1 (P1.0, P1.1 & P1.2 respectively) of AT89C51 are connected to the control pins (RS, R/W& EN) of LCD. The data pins of LCD are connected to Port P2 of the controller. The latitude and longitude positions are displayed on the LCD.
     


CODE(click here)


  • /* Basic program to show latitude and longitude on LCD extracted from GPGGA statement */



    #include<reg51.h>

    #define port2 P2

    sbit rs = P1^0;

    sbit rw = P1^1;

    sbit e = P1^2;

    char info[70];

    char test[6]={"$GPGGA"};

    char comma_position[15];

    unsigned int check=0,i;

    unsigned char a;

    void receive_data();

    void lcd_latitude();

    void lcd_longitude();



    //DELAY FUNCTION

    void delay(unsigned int msec)

    {

    int i,j ;

    for(i=0;i<msec;i++)

    for(j=0;j<1275;j++);

    }



    // LCD COMMAND SENDING FUNCTION

    void lcd_cmd(unsigned char item)

    {

    port2 = item;

    rs= 0;

    rw=0;

    e=1;

    delay(1);

    e=0;

    return;

    }



    // LCD DATA SENDING FUNCTION

    void lcd_data(unsigned char item)

    {

    port2 = item;

    rs= 1;

    rw=0;

    e=1;

    delay(1);

    e=0;    

    return;

    }



    // LCD STRING SENDING FUNCTION

    void lcd_string(unsigned char *str)

    {

    int i=0;

    while(str[i]!='\0')

    {

            lcd_data(str[i]);

            i++;

            delay(10);

       }

            return;

    }



    // SERIAL PORT SETTING

    void serial()

    {

    TMOD=0x20;      //MODE=2

    TH1=0xfa;     // 4800 BAUD

    SCON=0x50  ;    // SERIAL MODE 1 ,8- BIT DATA ,1 STOP BIT ,1 START BIT , RECEIVING ON

    TR1=1;         //TIMER START

    }



    void find_comma()

    {

    unsigned int i,count=0;

    for(i=0;i<70;i++)

    {

    if(info[i]==',')

    {

    comma_position[count++]=i;

    }

        }

    }

    void compare()

    {  

    IE=0x00;       //Interrupt disable

    find_comma();   //Function to detect position of comma in the string

    lcd_latitude();   //Function to show Latitude

    lcd_longitude(); //Function to show Longitude

    check=0;

    IE=0x90;   //Interrupt enable

    }

    void receive_data()   interrupt 4  

    {

    info[check++]=SBUF;  //Read SBUF

    if(check<7)         //Condition to check the required data

        {

    if(info[check-1]!=test[check-1])

    check=0;

        }

    RI=0;

    }

    void lcd_shape()      //Function to create shape of degree

    {

    lcd_cmd(64);

    lcd_data(10);

    lcd_data(17);

    lcd_data(17);

    lcd_data(10);

    lcd_data(0);

    lcd_data(0);

    lcd_data(0);

    lcd_data(0);

    }



    void lcd_latitude() //Function to display Latitude

    {

    unsigned int c2=comma_position[1]; //Position of second comma

    lcd_shape();

    lcd_cmd(0x01);         // Clear LCD display

    lcd_cmd(0x84);         //Move cursor to position 6 of line 1

    lcd_string("LATITUDE"); //Showing Latitude

    lcd_cmd(0xC0); //Beginning of second line  

    lcd_data(info[c2+1]);

    lcd_data(info[c2+2]);

    lcd_data(0); //Degree symbol

    lcd_data(info[c2+3]);

    lcd_data(info[c2+4]);

    lcd_data(info[c2+5]);

    lcd_data(info[c2+6]);

    lcd_data(info[c2+7]);

    lcd_data(info[c2+8]);

    lcd_data(info[c2+9]);

    lcd_data(0x27);          //ASCII of minute sign(')

    lcd_data(info[c2+10]);

    lcd_data(info[c2+11]);

    delay(250);

    }



    void lcd_longitude()

    {

    unsigned int c4=comma_position[3];

    lcd_cmd(0x01);            //Clear LCD display

    lcd_cmd(0x84);            //Move cursor to position 4 of line 1

    lcd_string("LONGITUDE"); //Showing Longitude

    lcd_cmd(0xC0);    //Begining of second line  

    lcd_data(info[c4+1]);

    lcd_data(info[c4+2]);

    lcd_data(info[c4+3]);

    lcd_data(0);

    lcd_data(info[c4+4]);

    lcd_data(info[c4+5]);

    lcd_data(info[c4+6]);

    lcd_data(info[c4+7]);

    lcd_data(info[c4+8]);

    lcd_data(info[c4+9]);

    lcd_data(info[c4+10]);

    lcd_data(0x27);               //ASCII of minute sign(')

    lcd_data(info[c4+11]);

    lcd_data(info[c4+12]);

    delay(250);

    }

    void main()

    {

    serial();

    lcd_cmd(0x38);        //2 LINE, 5X7 MATRIX

    lcd_cmd(0x0e);         //DISPLAY ON, CURSOR BLINKING

    IE=0x90;

    while(1)

    {

    if(check==69)

    compare();

    }

    }



COMPONENTS(click here)
  • AT89C51 Microcontroller
    MAX232
    LCD
7:52 AM

TSMC and Omnivision Build Walls Between Pixels

...
TSMC proposes to use deep trench isolation to reduce crosstalk between BSI pixels. Its patent application US20120025199 covers two cases of deep trench isolation in BSI sensor. One goes through the whole BSI wafer thickness, thus completely isolating pixels one from another:


In the other version the deep trench starts from the backside, but stops before reaching the front surface:


Omnivision patent application US20120019695 proposes a process to create dark sidewalls 445 between color filters to reduce optical crosstalk:

11:58 PM

Steve Appleton, Micron's CEO, Dies in a Plane Crash

...
Micron announced that Steve Appleton, Micron Chairman and CEO, passed away this morning in a small plane accident in Boise. He was 51.

Steve was the person who decided on Photobit acquisition in 2001, entered image sensor business and, in 2009, spun off this business as Aptina, selling majority stake in it to private equities. Although Micron is not image sensor vendor anymore, its Italian Fab continues to manufacture image sensors for Aptina.

This Youtube video gives more details about the life and death of Steve Appleton:



Reuters: Micron's board named Mark Durcan, the president and COO, as temporary CEO of the company.
8:34 AM

OSA on Next Generation Mobile Phone Cameras

...
OSA Optics and Photonics News features an article "Next-Generation Cell Phone Cameras" by Tim Hayes, currently in open access. The 3-page long article overviews optical developments, such as Varioptic lens, Tessera wafer level cameras, LED flashes, etc. One of the insets includes Gartner forecast of the camera market:


Once we talk about mobile phone camera modules, there is a market share slide in the January 2012 Tessera presentation:

12:40 AM

RAL, FBK, Harvest on Imaging Trends

...
Image Sensors 2012 continues the series of interviews of the presenters. Mostly the same questions are asked and answered.

Albert Theuwissen, Harvest Imaging:

Q: Are there any disruptive technologies on the horizon that you feel will have a big impact in the coming years?

A: Maybe there are, but I am not in a position to talk about it because I am working with some people on these type of technologies!

Renato Turchetta, Rutherford Appleton Laboratory (RAL):

Q: Can you outline the emerging technologies in this field? [imagers for non-visible parts of spectrum]

A: I have been working for a long time in medical imaging. In large area applications, like mammography or chest radiography, TFT technology has been the major player for many years now. CMOS technology is starting to emerge and it could become the major player in the next few years.

David Stoppa of Fondazione Bruno Kessler (FBK):

Q: What are the main barriers to more widespread uptake of [Time-of-Flight] technology and what are the main focuses and technical challenges?

A: It has been recently demonstrated that other 3D imaging technologies (Kinect) having a similar level of system complexity entered mass markets at incredibly low cost. In the past, Time-of-Flight cameras were intended for industrial control applications where a reliable measurement system was needed and system cost was not the main concern. Nowadays, ToF technology holds all the key features to enter consumer electronics markets although some important challenges are still open, above all the reduction of the system power consumption in order to successfully implement 3D on portable devices.
7:15 AM

iSuppli: CCD Market Share Dropped to 8% in 2011

...
IHS iSupply Image Sensor Market Q1 2012 report states that CMOS sensors took 73% of the revenue and 92% of the units shipped in 2011. "CMOS technology is expected to climb even higher in future years, to 90 percent of revenues for sensors and 97 percent of shipments.

CMOS sensors already dominate cameras in notebook PCs cameras with 100% penetration as a result of their lower power and cost advantages.

While CCD manufacturers are attempting to compete with price reductions due to yield improvements, we believe this will not help in the long run as CMOS continues to improve with offering technologies such as back side illumination (BSI) improving low light conditions.

Even in one of CCDs largest segments – digital still cameras – the technology is waning projected to drop to 25 percent of CCD revenues and 27 percent of all CCD units by 2015.
"
11:39 PM

Nethra Announces Ultra-Low Power H.264 1080p60 SoC

...
Business Wire: Nethra Imaging announces the first member of its NI-5 family of visual platform SoC, the NI-5035. Targeting applications such as action/sports/activity camcorders, network IP security and surveillance cameras and IP encoders, the NI-5035 delivers a new level of low power with BOM flexibility previously unavailable to system designers. The NI-5035 features an ISP, a H.264 Codec and Video Processor capable of supporting multiple encoding streams up to 1080p60, a noise reduction including 3D temporal de-noise, a video electronic image stabilization and a Motion Compensated Temporal Filtering (MCTF).

"Unlike DSP based solutions available today, the NI-5035’s unique true hardware-accelerated architecture enables a much lower power profile and far greater control over the visual pipeline with the lowest-possible latency possible," said Ramesh Singh, Nethra Imaging’s CEO. "Nethra’s approach contrasts with other SoCs that utilize more power-hungry embedded DSP cores for the imaging and video ‘heavy-lifting’, thereby limiting user control and application power optimization."

Since the NI-5035 is fully hardware accelerated, the on-chip applications processor is fully available to the system software designer for performing analytics, full OS implementation and a host of image and video compute applications.

The NI-5035 is currently being designed into multiple applications and will be available for volume production in Q2 of 2012.
11:16 PM

8 candidate quiz buzzer using 8051 microcontroller (AT89C51)

...
8051 Microcontroller based quiz buzzer project
The quiz buzzer systems are widely used in school, colleges and TV programs. The team which presses the buzzer earliest is entitled to give the answer. At times it becomes very difficult to identify which team has pressed the button when two teams press the buzzer within a very small time gap. In such cases the decision can be biased due to human intervention. The quiz buzzer presented here takes care of the aforesaid problem. This quiz buzzer disables the other inputs as soon as the first buzzer is pressed. This quiz buzzer can be used for a maximum of eight teams. It is build around 8051 microcontroller (AT89C51).

DESCRIBTION(click here)
  • This quiz buzzer system has eight input pins corresponding to eight teams. The output is displayed on a seven segment display (interfaced with microcontroller), which shows the number corresponding to the team which has pressed the button first. A buzzer is also sounded for a small duration to give an acoustic alarm. The connections of the seven segment, input pins and output pins is shown in the circuit diagram.
    For more details, refer ‘seven segment interfacing ’. There are a total of nine input pins. Eight pins of port P1 of the microcontroller are corresponding to eight inputs and one stop pin for resetting the buzzer system. On the output side a seven segment is connected to display the corresponding output number. There is also a provision for sounding a buzzer for a small duration.
    When the system starts, the seven segment does not displays any output. The microcontroller keeps scanning the input pins. As soon as any one of the inputs is pressed, the buzzer sounds for a small duration. The seven segment displays the number corresponding to the input pressed. Now even if any other input pin is pressed, there will be no effect on the system till the time the stop pin is pressed to reset the system.
CODE(click here)

  • // Program to make a quiz buzzer using seven segment



    #include<reg51.h>

    unsigned int digi_val[10]={0x40,0xF9,0x24,0x30,0x19,0x12,0x02,0xF8,0x00,0x10};        // Hex value corresponding to the digits 0 to 9

    sbit output_on_pin = P3^0;        // Enable pin to enable the seven segment.

    sbit stop_pin = P3^1;        // Stop pin to reset the buzzer.

    sbit buzzer_pin=P0^0;        //  Buzzer pin to sound the buzzer.

    int flag;



    void delay()        // Time delay function

    {

        int i,j;

        for(i=0;i<200;i++)

        for(j=0;j<1275;j++);

    }



    void display(unsigned int current_dig)        // Function to display the resultant digit on the seven segment and sound the buzzer.

    {

        P2=digi_val[current_dig];

        output_on_pin = 1;

        buzzer_pin=0;

        delay();

        buzzer_pin=1;

        while(stop_pin != 0);

    }  



    void buzzer() //Function to monitor the input switches

    {

        flag = 0;

        while(1)

        {

            while (P1 == 0xFF);

            

            while (P1 == 0xFE)        //Check if switch 1 is pressed

            {

                flag = 1;

                display(1);

            }



            while (P1 == 0xFD)        //Check if switch 2 is pressed

            {

                flag = 2;

                display(2);

            }    



            while (P1 == 0xFB )        //Check if switch 3 is pressed

            {

                flag = 3;

                display(3);

            }



            while (P1 == 0xF7 )        //Check if switch 4 is pressed

            {

                flag = 4;

                display(4);

            }



            while (P1 == 0xEF )        //Check if switch 5 is pressed

            {

                flag = 5;

                display(5);

            }



            while (P1 == 0xDF)        //Check if switch 6 is pressed

            {

                flag = 6;

                display(6);

            }



            while (P1 == 0xBF )        //Check if switch 7 is pressed

            {

                flag = 7;

                display(7);

            }



            while (P1 == 0x7F )        //Check if switch 8 is pressed

            {

                flag = 8;

                display(8);

            }

          

            P1 = 0xFF;

            stop_pin = 1;

            output_on_pin = 0;

        }

    }



    void main()

    {

        output_on_pin=0;

        stop_pin = 1;

        P1 = 0xFF;

        buzzer();



    }

COMPONENTS(click here)
  • Seven Segment Display
  • Transistor BC548 
  • AT89C51 Microcontroller 
  • Piezo Buzzer
8:17 AM