Add 'driver/' from commit '5346f864f2f0df0e23db1d1a7c2ded332a043a37'
git-subtree-dir: driver git-subtree-mainline:1e73a457e4git-subtree-split:5346f864f2
This commit is contained in:
		
							
								
								
									
										1
									
								
								driver/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								driver/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| /target/ | ||||
							
								
								
									
										448
									
								
								driver/Cargo.lock
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										448
									
								
								driver/Cargo.lock
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,448 @@ | ||||
| [[package]] | ||||
| name = "backtrace" | ||||
| version = "0.3.5" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "rustc-demangle 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "backtrace-sys" | ||||
| version = "0.1.16" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "cc 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "bitflags" | ||||
| version = "0.9.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "bitflags" | ||||
| version = "1.0.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "bytecount" | ||||
| version = "0.2.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "byteorder" | ||||
| version = "1.2.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "bytes" | ||||
| version = "0.4.6" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "cargo_metadata" | ||||
| version = "0.3.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "semver 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde_derive 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde_json 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "cc" | ||||
| version = "1.0.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "cfg-if" | ||||
| version = "0.1.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "dtoa" | ||||
| version = "0.4.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "error-chain" | ||||
| version = "0.11.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "backtrace 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "fuchsia-zircon" | ||||
| version = "0.3.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "fuchsia-zircon-sys" | ||||
| version = "0.3.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "gcc" | ||||
| version = "0.3.54" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "glob" | ||||
| version = "0.2.11" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "i2cdev" | ||||
| version = "0.3.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "skeptic 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "i2cdev-bmp280" | ||||
| version = "0.1.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2cdev 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2csensors 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "i2csensors" | ||||
| version = "0.1.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "iovec" | ||||
| version = "0.1.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "itoa" | ||||
| version = "0.3.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "kernel32-sys" | ||||
| version = "0.2.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "libc" | ||||
| version = "0.2.36" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "nix" | ||||
| version = "0.10.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "bytes 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "num-traits" | ||||
| version = "0.1.43" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "num-traits 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "num-traits" | ||||
| version = "0.2.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "pulldown-cmark" | ||||
| version = "0.1.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "quote" | ||||
| version = "0.3.15" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "rand" | ||||
| version = "0.4.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "remove_dir_all" | ||||
| version = "0.3.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "rust-sensor" | ||||
| version = "0.1.0" | ||||
| dependencies = [ | ||||
|  "i2cdev 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2cdev-bmp280 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2csensors 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "si7021 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "rustc-demangle" | ||||
| version = "0.1.6" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "same-file" | ||||
| version = "0.1.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "semver" | ||||
| version = "0.8.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "semver-parser" | ||||
| version = "0.7.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "serde" | ||||
| version = "1.0.27" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "serde_derive" | ||||
| version = "1.0.27" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde_derive_internals 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "serde_derive_internals" | ||||
| version = "0.19.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "serde_json" | ||||
| version = "1.0.9" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "si7021" | ||||
| version = "0.1.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2cdev 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "i2csensors 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "skeptic" | ||||
| version = "0.13.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "bytecount 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "cargo_metadata 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "serde_json 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "tempdir 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "syn" | ||||
| version = "0.11.11" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "synom" | ||||
| version = "0.11.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "tempdir" | ||||
| version = "0.3.6" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "remove_dir_all 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "unicode-xid" | ||||
| version = "0.0.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "void" | ||||
| version = "1.0.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "walkdir" | ||||
| version = "1.0.7" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi" | ||||
| version = "0.2.8" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi" | ||||
| version = "0.3.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| dependencies = [ | ||||
|  "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
|  "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi-build" | ||||
| version = "0.1.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi-i686-pc-windows-gnu" | ||||
| version = "0.4.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi-x86_64-pc-windows-gnu" | ||||
| version = "0.4.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
|  | ||||
| [metadata] | ||||
| "checksum backtrace 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ebbbf59b1c43eefa8c3ede390fcc36820b4999f7914104015be25025e0d62af2" | ||||
| "checksum backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "44585761d6161b0f57afc49482ab6bd067e4edef48c12a152c237eb0203f7661" | ||||
| "checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | ||||
| "checksum bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b3c30d3802dfb7281680d6285f2ccdaa8c2d8fee41f93805dba5c4cf50dc23cf" | ||||
| "checksum bytecount 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "af27422163679dea46a1a7239dffff64d3dcdc3ba5fe9c49c789fbfe0eb949de" | ||||
| "checksum byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "652805b7e73fada9d85e9a6682a4abd490cb52d96aeecc12e33a0de34dfd0d23" | ||||
| "checksum bytes 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1b7db437d718977f6dc9b2e3fd6fc343c02ac6b899b73fdd2179163447bd9ce9" | ||||
| "checksum cargo_metadata 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1f56ec3e469bca7c276f2eea015aa05c5e381356febdbb0683c2580189604537" | ||||
| "checksum cc 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "deaf9ec656256bb25b404c51ef50097207b9cbb29c933d31f92cae5a8a0ffee0" | ||||
| "checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de" | ||||
| "checksum dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "09c3753c3db574d215cba4ea76018483895d7bff25a31b49ba45db21c48e50ab" | ||||
| "checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3" | ||||
| "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" | ||||
| "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" | ||||
| "checksum gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)" = "5e33ec290da0d127825013597dbdfc28bee4964690c7ce1166cbc2a7bd08b1bb" | ||||
| "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | ||||
| "checksum i2cdev 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3c10164c76056ea2af0beb6a3f76ed9fb1b941716a53b4319242090d7f26368e" | ||||
| "checksum i2cdev-bmp280 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "99cac7734eca783815790ddeb99de11166d4b266c2f889efc6a2364fe71ddabe" | ||||
| "checksum i2csensors 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a5507a8d4f0920eec851f7fa13db7b5055066e98f604f13a1eb24375ba8269d5" | ||||
| "checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" | ||||
| "checksum itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8324a32baf01e2ae060e9de58ed0bc2320c9a2833491ee36cd3b4c414de4db8c" | ||||
| "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | ||||
| "checksum libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)" = "1e5d97d6708edaa407429faa671b942dc0f2727222fb6b6539bf1db936e4b121" | ||||
| "checksum nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f" | ||||
| "checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" | ||||
| "checksum num-traits 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e7de20f146db9d920c45ee8ed8f71681fd9ade71909b48c3acbd766aa504cf10" | ||||
| "checksum pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d6fdf85cda6cadfae5428a54661d431330b312bc767ddbc57adbedc24da66e32" | ||||
| "checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | ||||
| "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" | ||||
| "checksum remove_dir_all 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b5d2f806b0fcdabd98acd380dc8daef485e22bcb7cddc811d1337967f2528cf5" | ||||
| "checksum rustc-demangle 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f312457f8a4fa31d3581a6f423a70d6c33a10b95291985df55f1ff670ec10ce8" | ||||
| "checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | ||||
| "checksum semver 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bee2bc909ab2d8d60dab26e8cad85b25d795b14603a0dcb627b78b9d30b6454b" | ||||
| "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" | ||||
| "checksum serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)" = "db99f3919e20faa51bb2996057f5031d8685019b5a06139b1ce761da671b8526" | ||||
| "checksum serde_derive 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)" = "f4ba7591cfe93755e89eeecdbcc668885624829b020050e6aec99c2a03bd3fd0" | ||||
| "checksum serde_derive_internals 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6e03f1c9530c3fb0a0a5c9b826bdd9246a5921ae995d75f512ac917fc4dd55b5" | ||||
| "checksum serde_json 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c9db7266c7d63a4c4b7fe8719656ccdd51acf1bed6124b174f933b009fb10bcb" | ||||
| "checksum si7021 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ebfd04549ec538a6ca4f94a9a2923339e2f1591d6430cd7217e9d7a9f3590b8d" | ||||
| "checksum skeptic 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8431f8fca168e2db4be547bd8329eac70d095dff1444fee4b0fa0fabc7df75a" | ||||
| "checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | ||||
| "checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | ||||
| "checksum tempdir 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f73eebdb68c14bcb24aef74ea96079830e7fa7b31a6106e42ea7ee887c1e134e" | ||||
| "checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | ||||
| "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | ||||
| "checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | ||||
| "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | ||||
| "checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3" | ||||
| "checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | ||||
| "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" | ||||
| "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" | ||||
							
								
								
									
										11
									
								
								driver/Cargo.toml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								driver/Cargo.toml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| [package] | ||||
| name = "rust-sensor" | ||||
| version = "0.1.0" | ||||
| authors = ["Klemens Schölhorn <klemens@schoelhorn.eu>"] | ||||
| edition = "2018" | ||||
|  | ||||
| [dependencies] | ||||
| i2csensors = "0.1" | ||||
| i2cdev = "0.3" | ||||
| i2cdev-bmp280 = "0.1" | ||||
| si7021 = "0.1" | ||||
							
								
								
									
										96
									
								
								driver/src/main.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										96
									
								
								driver/src/main.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,96 @@ | ||||
| extern crate i2cdev; | ||||
| extern crate i2cdev_bmp280; | ||||
| extern crate i2csensors; | ||||
| extern crate si7021; | ||||
|  | ||||
| use i2cdev::linux::{LinuxI2CDevice, LinuxI2CError}; | ||||
| use i2cdev_bmp280::*; | ||||
| use i2csensors::{Barometer, Hygrometer, Thermometer}; | ||||
| use si7021::{Si7021, SI7021_I2C_ADDRESS}; | ||||
| use std::env; | ||||
|  | ||||
| static BMP280_I2C_ADDRESS: u16 = 0x76; | ||||
|  | ||||
| fn main() -> Result<(), LinuxI2CError> { | ||||
|     let mut verbose = false; | ||||
|     let mut args = env::args().skip(1).peekable(); | ||||
|  | ||||
|     if let None = args.peek() { | ||||
|         eprintln!("Usage: tiny-wetter [-v] <i2c device> <altitude>"); | ||||
|         return Ok(()); | ||||
|     } | ||||
|  | ||||
|     if let Some(arg) = args.peek() { | ||||
|         if arg == "-v" { | ||||
|             verbose = true; | ||||
|             args.next(); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     let i2c_path = args.next().expect("missing i2c device"); | ||||
|     let altitude = args.next().expect("missing altitude").parse().expect("invalid altitude"); | ||||
|  | ||||
|     let weather = read_tiny_wetter(&i2c_path)?; | ||||
|  | ||||
|     if verbose { | ||||
|         println!("temperature (bmp280):  {:6.1} °C", weather.temperature_bmp280); | ||||
|         println!("temperature (si7021):  {:6.1} °C", weather.temperature_si7021); | ||||
|         println!("corrected temperature: {:6.1} °C", weather.temperature()); | ||||
|         println!("relative humidity:     {:6.1} %", weather.relative_humidity); | ||||
|         println!("real pressure:         {:6.1} hPa", weather.pressure / 100.); | ||||
|         println!("pressure at sea level: {:6.1} hPa", weather.sea_level_preassure(altitude) / 100.); | ||||
|     } else { | ||||
|         println!("{:.1} {:.1} {:.1}", | ||||
|             weather.temperature(), | ||||
|             weather.relative_humidity, | ||||
|             weather.sea_level_preassure(altitude) / 100., | ||||
|         ); | ||||
|     } | ||||
|  | ||||
|     Ok(()) | ||||
| } | ||||
|  | ||||
| struct TinyWetterReading { | ||||
|     temperature_bmp280: f32, | ||||
|     temperature_si7021: f32, | ||||
|     pressure: f32, | ||||
|     relative_humidity: f32, | ||||
| } | ||||
|  | ||||
| impl TinyWetterReading { | ||||
|     fn temperature(&self) -> f32 { | ||||
|         (self.temperature_bmp280 + self.temperature_si7021) / 2. - 1. | ||||
|     } | ||||
|  | ||||
|     fn sea_level_preassure(&self, altitude: f32) -> f32 { | ||||
|         let coef = 13f32 / 2000.; | ||||
|  | ||||
|         let divisor = self.temperature() + coef * altitude + 273.15; | ||||
|         self.pressure * (1f32 - coef * altitude / divisor).powf(-5.257) | ||||
|     } | ||||
| } | ||||
|  | ||||
| fn read_tiny_wetter(path: &str) -> Result<TinyWetterReading, LinuxI2CError> { | ||||
|     let bmp280_settings = BMP280Settings { | ||||
|         compensation: BMP280CompensationAlgorithm::Float, | ||||
|         t_sb: BMP280Timing::ms4000, | ||||
|         iir_filter_coeff: BMP280FilterCoefficient::UltraHigh, | ||||
|         osrs_t: BMP280TemperatureOversampling::x16, | ||||
|         osrs_p: BMP280PressureOversampling::UltraHighResolution, | ||||
|         power_mode: BMP280PowerMode::ForcedMode, | ||||
|     }; | ||||
|  | ||||
|     let i2c_device = LinuxI2CDevice::new(path, BMP280_I2C_ADDRESS)?; | ||||
|     let mut bmp280 = BMP280::new(i2c_device, bmp280_settings)?; | ||||
|  | ||||
|     let i2c_device = LinuxI2CDevice::new(path, SI7021_I2C_ADDRESS)?; | ||||
|     let mut si7021 = Si7021::new(i2c_device); | ||||
|  | ||||
|  | ||||
|     Ok(TinyWetterReading { | ||||
|         temperature_bmp280: bmp280.temperature_celsius()?, | ||||
|         temperature_si7021: si7021.temperature_celsius()?, | ||||
|         pressure: bmp280.pressure_kpa()? * 1000., | ||||
|         relative_humidity: si7021.relative_humidity()?, | ||||
|     }) | ||||
| } | ||||
		Reference in New Issue
	
	Block a user