Progress

In week 10, I had progress in recording the IR Code for the TrusTech portable A/C, fully tested the functionality of turning on Vizio TV and A/C remotely using WebApp,  testing the image-stitching and homography on the local machine.

This marks the phase 3 exits and we are ready for the interim demo.

The two devices (Vizio TV and TrusTech A/C) are now successfully tested and they can be controlled by our IR MAN through WebApp.

Since TrusTech A/C was not in the LIRC database originally, we had to reverse engineer the IR Codes that controls the A/C by decoding all the IR command codes from its original remote control. So we used an IR receiver (see below) to receive all the codes from the controller.

Using LIRC API, we ran the following to format the new IR code into our lirc.conf file.

sudo irrecord –driver default –device /dev/lirc0 ~/lircd.conf

Here is the IR code (HEX) we were able to generate that maps to each keypress.

For CV pipeline, we have started researching alternative solutions. One idea that came to our mind was using homography to do image stitching in the calibration mode. To recap, IR MAN has to calibrate when it is first set up, which rotates around the room and takes a bunch of pictures to be sent to the CV pipeline for further object detection. However, taking that many photos while the camera is being rotated will cause rolling shutter issues that makes all the discrete photos blurry. And transmitting that many photos over the network is very challenging in terms of bandwidth. Therefore, we came an alternative solution that uses image stitching to combine multiple images into a panoramic photo. This panoramic photo will be the stitched result of the 360° view of the entire surrounding. This would probably mean no more blurry photos and we only have to transmit one photo to the EC2 server for further processing.

OpenCV Image Stitching Tested Locally for 180° panorama

Schedule

This week’s development is on schedule. Now shifting more focus to mechanical design and integration.

Deliverables Next Week

  • Start making the IR Man figurine and all the necessary 3D printed parts.
  • Start writing the multi-threading client code to test the web communication feature on the RPi.
  • Finish all the motion code for the motor and think about the operating scenarios.
  • New IR Devices Arrive and Device IR registration
  • Mechanical Design: Integration and 3D printing rotating base
  • Mechanical Design: IR MAN Figurine Design and Manufacture
  • Benchmark Testing and Metrics Reports for each MVP
  • Start Soldering the IR Circuits onto PCB board.
  • Help Shirley to collect and label pictures for incoming devices.

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *