I recently discovered a heat issue with the USB interface on the TelosB wireless modules. Heat can drastically corrupt the data collection when you try to read packets over a USB port. To see the problem yourself, I have created a video demonstrating what happens. Sorry for the blurry screen in the video.
USB ports, due to their serial architecture, run at a set data rate. My guess is that by heating up the node, the oscillator that the system uses to clock data is changing frequency enough to make the serial interface go haywire. I could be wrong though, just a thought. If anyone has an idea of why this is happening, feel free to post in the YouTube comment section.
Remember to keep your TelosBs away from any kind of heat source, including your laptop CPU vent. If you're doing experiments outside, keep the base node out of direct sunlight to avoid a problem.
Here's a quick video about how to build RTI sensor stands. Thanks to Yang Zhao for being the camera man.
I just dug out this photo from my phone: This is Joey Wilson (Xandem Tech, a former SPAN lab member) and Chris O from KBS TV, a Korean broadcasting station, and a cameraman from the station. Joey was being interviewed for a Korean documentary on radio waves, a documentary sponsored by the Korean institute of Radio (a government agency). This is a photo from October 26, 2010.
I have been working on processing lots of large datasets, such as long-term remote sensing data, and large-scale sensor network data. It is often necessary to log in a remote server and process these data for a long time. However, if you start a program from your laptop and then want to do other things, your program will be killed if you log out the server, or lose internet connection, or close your laptop lid to sleep mode. So you want to leave your program running in background on the remote server even if you log out the system.
A simple way to do that in linux is to use the "nohup" command. The following is the detailed procedure that I use to run my matlab or python codes on a remote server from my laptop at home.
1. log in a server via ssh: ssh email@example.com, for University of Utah CADE Lab users.
2. write a simple shell script, like run_mycode.csh,
for Python code, it can be as follows:
ipython << EOF
for Matlab code:
matlab << EOF
3. excecute the shell script depending on which script (csh/sh/tcsh) used in the server: nohup csh run.csh & for C shell.
4. check if your program is running, then close the terminal.
Note that, if you find something wrong with your Python or Matlab code, you can always kill that process, make changes to your code, and then repeat the above procedure.
Another way to process large datasets from home without worrying about network connection and logout problems is to use shell session management tool "Screen", which is available for most Linux distributions like Red Hat and Ubuntu. For Ubuntu servers, you can also use "Byobu", which is a more advanced version of Screen.
I'm a new dad these days and, I guess it goes without saying, sleep deprived. I have a wonderful baby daughter who is otherwise perfect (in my opinion) but who is not fond of sleeping. Which may make her great at all-nighters later in life but is something I'm not too fond of today.
One thing that has helped is having white noise in the background to cover up all of the other sounds going on in the house. I think it also has become part of the routine, so she knows that the background noise means that its time for sleep. There are many ways to make noise, and we've tried running the bathroom fan, or putting the radio on a channel with no station. But my favorite continues to be our white noise CD. It doesn't waste energy (it certainly uses energy, but not as much as a fan) and doesn't waste water (running a faucet).
My noise CD is "handmade" which really means computer made; and not by my computer, but by my students in 5510 from Fall 2006. I assigned them each the task of making a three-minute white noise sound track. And when I say "white noise", I only mean that in the common use of the term.
Actually, white noise is non-white noise. Seriously. I don't mean in the ethnic sense, I mean in the frequency domain sense. Pure white noise, that is, constant power spectral density (PSD) as a function of frequency, is awful to hear. Try it if you don't believe me. If you analyze one of the "Pure white noise" CD tracks on a commercial CD, you'd see that it is emphasizes some frequencies (lower bands) more than others (higher bands).
So the assignment was to design the linear-time invariant (LTI) filter which would produce a good-sounding white noise track, and to analyse the PSD that the filter would produce, using techniques learned in class.
In any case, when I assigned it, I didn't know how valuable these tracks would be for me today. I've probably played on my CD player (on the one-song-repeat option) a white noise track on the order of 10,000 times. So I owe a debt of gratitude to my students.
Since I've been thinking about this CD quite a bit, I thought I'd post and share the link in case someone else would benefit from a white noise CD. The tracks are in MP3 format so they're ready for your standard CD burner software. Your results may vary, and some of these tracks sound quite a bit better (to my ear) then the others, so not all of them are equal -- you might want to select your favorites and only burn those.
Check this out: http://xandem.com/halloween-2010
We have a new portable power system for performing experiments when the use of mains power is not an option. This blog entry is a short introduction for other members of the SPAN lab.
The system consists of a 225 Ah AGM battery and a 1000W charger/inverter for maintaining the charge on the battery and providing a 120 VAC pure-sine-wave suitable for powering sensitive measurement equipment. After a full charge, the system is capable of powering a single NI transceiver (Windows controller, transmitter, receiver, chassis) as well as a 17 inch LCD for approximately 3.5 hours. Although this system was designed for powering a National Instruments transceiver and an LCD, it can also be used to power other devices that represent comparable loads. It is perfectly suitable for powering a laptop and a Universal Software Radio Peripheral, for example.
I will be attaching a reference sheet to the cart itself, but here are some important notes on using the system:
1. It is important not to discharge the battery beyond 50%. Discharging beyond this point will shorten the lifespan of the battery. When you use the system, keep a close eye on the voltage level of the battery, which is displayed on the remote control panel. When the voltage drops to 12.2 V, it is time to plug the charger/inverter into a mains outlet or wrap up your experiment. If the voltage is not displayed on the remote control panel, push the "METER" button on the panel. The panel should then display the status of the system, which includes the current battery voltage.
2. It is important to fully recharge the battery immediately after each usage. Doing so will prolong the life of the battery. To recharge the battery, simply plug the inverter into a mains outlet. The charger/inverter includes an automatic 4-stage charger that can be left overnight. However, it required less than three hours to fully charge the battery from 50% when I tested it.
3. Plugging the charger/inverter into a mains outlet while the inverter is providing power from the battery will automatically start charging the battery and route power from the AC outlet to the connected loads. However, if you want to unplug the charger/inverter while powering loads from a mains outlet, it is necessary to manually turn off the charger and turn on the inverter using the remote control panel before unplugging the charger/inverter from the AC outlet. This can be done using the Inverter and Charger on/off buttons on the remote control panel. When the inverter is on, the green LED labeled "INV" will be illuminated. When the charger is off, the green LED labeled "CHG" should be dark.
4. Please do not change any of the settings using the remote control panel. The only buttons that you should need to use are the Charger and Inverter on/off buttons and the METER button.
5. Finally, the ground at the outlets on the charger/inverter is not guaranteed to be at the same electric potential as the ground from the mains outlet. So, if the inverter is providing power from the battery, DO NOT let equipment being powered from the mains contact the cart or anything on it.
We currently have only one of these systems, but another should be ready soon.
If you have any questions, feel free to contact me.
Am I allowed to post on this blog even though I am now graduated? :) If you live in Utah and like open source software, consider attending the Utah Open Source Conference 2010: http://utosc.com. It's a great way to support the local open source scene, meet new people that share your interests in software, and learn new tools.