Friday, 8 May 2015

logic level - interfacing a Stratologger altimeter with an Arduino Uno


The Issue



I am trying to interface a stratologger altimeter to my arduino uno and I'm unable to successfully read data being output by the altimeter.


The Setup


I have a stratologger altimeter, an arduino uno and a 4 bit bi-directional logic level converter to connect the two. Here are some reference pictures for what I have failing so far.


http://i.imgur.com/AAs5MBQl.jpg


Picture 1: the whole logic level converter and arduino in 1 picture


enter image description here


Picture 2: up close on the logic level converter


enter image description here


Picture 3: up close on the arduino


enter image description here



Picture 4: the connection to the stratologger


Quick wire reference:



  • yellow: from the high voltage bit B1 of the logic level converter to the rx pin 0 on the arduino

  • blue: from the tx pin on the stratologger to the low voltage bit A1 on the logic level converter

  • green: 3.3v on the arduino to the low voltage reference pin on the logic level converter

  • red: 5v on the arduino to the high voltage reference pin on the logic level converter

  • black: ground. there are 2 separate connection from arduino to high voltage ground on logic level converter and from the ground on the stratologger to the log voltage ground on the logic level converter


The code I'm using to test this is:



const int ledPin = 13;

void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
Serial.begin(9600);
}

void loop() {
if (Serial.available() > 0)

{
digitalWrite(ledPin, HIGH);
}
}

That's the simplest thing I could think of to notify me if the arduino is receiving data. When I have the arduino connected to the computer, this code works great by just typing something into the serial monitor. I disconnect the computer for the actual tests since this will be used without a computer during the intended usage.


The altimeter comes with a serial connector for the computer and I ensure that the computer reads the telemetry output that the altimeter is sending data before and after trying to interface it with the arduino. Stratologger manual, page 44 contains the relevant data for the telemetry output.


What have I tried?



  • I have connected a volt meter to every part of this to try to see if I can detect data actually being sent but I can't really tell


  • The arduino idles high on the rx pin as does the stratologger, but I don't know if that's a problem or not

  • I have tried every bit connection on the logic level converter

  • I have written code to verify that serial port is actually opening up on the arduino

  • I have tried manually setting pin 0 to input


I am out of ideas


I feel like the most likely issue is that I set up the logic level converter incorrectly because I'm pretty green when it comes to electronics. I used this guide to help me get the wires I have them. This is the actual logic level converter that I am using. Is that the right thing I need to be using at all?


I'm pretty confident that the code is good and that the serial port settings match what's listed in the stratologger manual linked above, but maybe I'm wrong there also. If that were the case I would expect jumbled data coming through, not just nothing.


I'm most confident that I have the stratologger set up correctly because it comes with the tools to set it up automatically and I verified it is sending data to the serial port by reading the data on my computer.


I feel like I am missing something simple and it will just start working after that, and I certainly hope that's the case. Does anyone have any ideas?





No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...