summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2021-04-17 11:11:06 +0300
committerYuval Adam <_@yuv.al>2021-04-17 11:11:06 +0300
commit6199b1482e21f578cd64e5977a7a83a61d542cb5 (patch)
treee218b2663fbbe67903512623c366e370bf41bec4
parent1d22e19cc29da2f199f70c558dc0e6fc5f0e0ee6 (diff)
Add env logging
-rw-r--r--Cargo.toml2
-rw-r--r--README.md2
-rw-r--r--src/lib.rs15
-rw-r--r--src/utils/rustl_fm.rs4
4 files changed, 15 insertions, 8 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 47f51ba..722a659 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -4,6 +4,8 @@ version = "0.2.0"
authors = ["Yuval Adam <_@yuv.al>"]
[dependencies]
+log = "0.4"
+pretty_env_logger = "0.4"
rusb = "0.8"
[lib]
diff --git a/README.md b/README.md
index c114db7..d8ba47f 100644
--- a/README.md
+++ b/README.md
@@ -20,11 +20,9 @@ rustl-sdr = "0.2"
Use in your code:
```rust
-extern crate libusb;
extern crate rustl_sdr;
fn foo() {
- let ctx = libusb::Context::new().unwrap();
rtlsdr = rustl_sdr::RtlSdr::new(&ctx);
rtlsdr.init();
rtlsdr.do_stuff();
diff --git a/src/lib.rs b/src/lib.rs
index b350616..9528f91 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,8 +1,11 @@
+extern crate log;
+extern crate pretty_env_logger;
extern crate rusb;
mod tuners;
mod usb;
+use log::{error, info, trace};
use tuners::*;
use usb::RtlSdrDeviceHandle;
@@ -23,6 +26,7 @@ pub struct RtlSdr {
impl RtlSdr {
pub fn new() -> RtlSdr {
+ pretty_env_logger::init();
RtlSdr {
// ctx: rusb::Context::new().unwrap(),
iface_id: INTERFACE_ID,
@@ -36,9 +40,11 @@ impl RtlSdr {
let vid = desc.vendor_id();
let pid = desc.product_id();
+ trace!("Found USB device with vid {} and pid {}", vid, pid);
+
for kd in KNOWN_DEVICES.iter() {
if kd.0 == vid && kd.1 == pid {
- println!("Found USB device with vid {} and pid {}", vid, pid);
+ info!("Found {} {{{:04x}:{:04x}}}", kd.2, vid, pid);
let usb_handle = dev.open().unwrap();
let mut handle = RtlSdrDeviceHandle::new(usb_handle, self.iface_id);
// let kernel_driver_attached = handle.detach_kernel_driver();
@@ -57,23 +63,22 @@ impl RtlSdr {
r820t::TUNER_ID => Box::new(r820t::R820T::new(&handle)),
fc0013::TUNER_ID => Box::new(fc0013::FC0013::new(&handle)),
_ => {
- println!("No valid tuner found");
+ error!("Could not find any valid tuner, aborting.");
return;
}
},
None => {
- println!("No valid tuner found");
+ error!("Could not find any valid tuner, aborting.");
return;
}
};
tuner.init();
}
- } else {
- println!("No match for vid {} and pid {}", vid, pid);
}
}
}
+ error!("Could not find any RTL-SDR device, aborting.")
}
/// Probe all known tuners at their I2C addresses
diff --git a/src/utils/rustl_fm.rs b/src/utils/rustl_fm.rs
index 03c18f1..6931eb2 100644
--- a/src/utils/rustl_fm.rs
+++ b/src/utils/rustl_fm.rs
@@ -1,3 +1,5 @@
pub fn main() {
- println!("Usage: rustl_fm")
+ println!("Starting rustl_fm");
+ let mut r = rustl_sdr::RtlSdr::new();
+ r.open();
}