Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by bluray4arab · Mar 02, 2019 at 10:07 PM · unity 5arduino

Long Lag Time when reading Arduino Data [serially] in Unity

Hello, I'm trying to control the main camera's rotation inside of Unity using an IMU.The quaternion describing the 3D rotation is being sent from a Teensy (Arduino compatible) microcontroller. Here's a sample of the output being sent to Unity from the Arduino IDE serial monitor:

QT 0.568585 0.583274 0.434884 -0.383899

QT 0.568373 0.583475 0.434860 -0.383935

QT 0.568278 0.583554 0.434772 -0.384054

QT 0.568279 0.583546 0.434695 -0.384152

I got the camera to follow the orientation of the IMU. However, there's a significant lag time that is making the whole thing practically useless. So, if there's anyone here who knows how to fix this problem, kindly help me fix this problem.

Here's my Camercontroller script:

 using UnityEngine;
 using System.Collections;
 using System.IO.Ports;
 using UnityEditor;
 using System;
 using System.Collections.Generic;
 
 public class Cameracontroller : MonoBehaviour
 {

 const int baudrate = 115200;

 // Specify Correct Port Name
 const string portName = "\\\\.\\COM4";

 SerialPort serialPort = new SerialPort(portName, baudrate);

 Quaternion quaternion;
 void Start()
 {
     serialPort.ReadTimeout = 100;
     serialPort.Open();

     if (!serialPort.IsOpen)
     {

         Debug.LogError("Couldn't open " + portName);

     }

 }

 void Update()
 {

     quaternion = ParseQuaternionData();

     transform.rotation = Quaternion.Inverse(quaternion);

 }

 Quaternion lastquaternion;

 Quaternion ParseQuaternionData()
 {
     List<byte> buffer = new List<byte>();
     for (int i = 0; i < 64; i++)
     {
         buffer.Add((byte)serialPort.ReadByte());
     }
     string te = System.Text.Encoding.UTF8.GetString(buffer.ToArray());
     string[] lines = te.Split('\n');
     if (lines.Length >= 2)
     {

         // Split line by spaces
         string[] line = lines[lines.Length - 2].Split(' ');

         // If the line starts with "QT", parse the Quaternion
         if (line[0] == "QT")
         {

             lastquaternion = new Quaternion(float.Parse(line[2]),
                 float.Parse(line[3]),
                 -float.Parse(line[4]),
                 float.Parse(line[1]));

         }

     }

     return lastquaternion;


 }
 }
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

191 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

How one can build 3D Room Model with specific parameters? ,How can we build 3D Room model with specific parameters? 1 Answer

Map some Values taken from Serial Port 0 Answers

Need Help Connecting Arduino to Unity 0 Answers

how to use serial communication in unity visual studio script,how to access System.IO.Ports or serial communication in unity visualstudio script 0 Answers

Serial Communication-Best Practise 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges