nidas  v1.2-1520
Classes | Macros | Functions | Variables
tee_i2c.cc File Reference
#include <nidas/util/SerialPort.h>
#include <nidas/util/SerialOptions.h>
#include <nidas/util/UTime.h>
#include <nidas/util/Logger.h>
#include <nidas/util/util.h>
#include <nidas/core/NidasApp.h>
#include <linux/i2c-dev.h>
#include <linux/tty.h>
#include <vector>
#include <cstdlib>
#include <list>
#include <sched.h>
#include <signal.h>

Classes

class  TeeI2C
 
struct  ubx_cfg_msg
 UBX protocol configure packets, not supported in I2C. More...
 
struct  ubx_cfg_prt
 
struct  cfg_prt_payload
 

Macros

#define READ_LEN_REGS
 
#define DO_SMBUS_WRITE
 

Functions

static void sigAction (int sig, siginfo_t *siginfo, void *)
 
int main (int argc, char **argv)
 
void ubx_cksum (const unsigned char *cp, unsigned char *cksum)
 
void ubx_config (int fd, const string &name) throw (n_u::IOException)
 Attempt at sending configuration packets to a ublox NEO-5/6Q, using the UBX protocol. More...
 

Variables

bool interrupted = false
 

Macro Definition Documentation

#define DO_SMBUS_WRITE
#define READ_LEN_REGS

Function Documentation

int main ( int  argc,
char **  argv 
)
static void sigAction ( int  sig,
siginfo_t *  siginfo,
void *   
)
static

References interrupted, and NLOG.

void ubx_cksum ( const unsigned char *  cp,
unsigned char *  cksum 
)

References cksum().

Referenced by ubx_config().

void ubx_config ( int  fd,
const string &  name 
)
throw (n_u::IOException
)

Attempt at sending configuration packets to a ublox NEO-5/6Q, using the UBX protocol.

This doesn't work over I2C, only RS232. With I2C, writes just return timeout errors, and no acks are received back. Leave the code here for possible future RS232 implementations.

References ubx_cfg_msg::cksum, ubx_cfg_prt::cksum, ubx_cfg_msg::cls, ubx_cfg_prt::cls, fd, ubx_cfg_msg::header, ubx_cfg_prt::header, ubx_cfg_msg::id, ubx_cfg_prt::id, cfg_prt_payload::inProtoMask, ubx_cfg_msg::length, ubx_cfg_prt::length, cfg_prt_payload::mode, cfg_prt_payload::outProtoMask, ubx_cfg_msg::payload, ubx_cfg_prt::payload, ubx_cksum(), and nidas::util::Exception::what().

Variable Documentation

bool interrupted = false