Showing posts with label visible assets. Show all posts
Showing posts with label visible assets. Show all posts

20080708

Geeentoo Binary Package Repository

If anyone is also using an Asus EEE with Gentoo instead of the default Xandros operating system, feel free to use the binary package repository that I have set up here .

I'm going to try my best to put together some documentation about how I arrange my EEE PC, providing /etc/portage/{package,savedconfig}*, /etc/make.conf, /etc/init.d/portage_squashfs, etc. Although right now the documentation will probably consist of a static html page with links to the Gentoo Wiki and other places.

My eventual plans for the EEE are to get a full-blown GRP (Gentoo Reference Platform) set up on it, to create a stage4 for Geeentoo, and then of course to do hardware modifications :)

Planned modifications include:
Maybe I'll turn the static html page into some kind of RSS feed just to make people's lives easier.

In any event - stay posted!!

20071118

IEEE.tv Article Interviews John Stevens

John Stevens, CEO of Visible Assets, was recently featured in an interview at the RFID conference in Dallas. Actually, the conference took place 26-28 March, 2007. I only just noticed the interview because I started subscribing to IEEE.tv through Mozilla Thunderbird's RSS news reader. I also happen to work for Visible Assets, and so I thought I'd take this opportunity for some shameless corporate promotion :)

In the interview, John explains some of the details about RuBee(tm), the pending IEEE protocol (IEEE P1902.1), and how Visible Assets applies the relatively young technology of long-wavelength radio tags. At Visible Assets, we basically sell a service that builds upon RuBee(tm). Through the grouping of distributed, collaborative, and localized networkable transceivers, RuBee(tm) securely enables the authorized end user to asynchronously monitor their assets from anywhere in the world. All communication between the transceivers and the end user are event-based, which cuts down on bandwidth over long distances, enabling local monitoring in real-time and remote monitoring with extremely low latency.

RuBee(tm) is protocol that can overlay the common IEEE 802 standard. What that means in human terms, is that every tag can be assigned an IP address, just like the computer on which you read this article. When IPV6 takes over, boasting an addressable space of 2128 (about 3.4×1038), that means that every single tag will have a globally visible, unique address on the internet. Pretty astonishing, isn't it.

If I slapped a tag on my favorite toothbrush, flew to Japan, and visited an internet cafe, I have the potential to be disappointed that I forgot my favorite toothbrush on the other side of the planet. But hey, at least I would know that it was safe and sound back home ;-) That's really a crude example. Our primary clients are those who need high data reliability when monitoring their assets, such as those in the medical, pharmaceutical, agricultural, and defense sectors.

RuBee(tm) is the main feature of our infrastructure. Therefore, I should take the opportunity to share some information about the unique technology that we, at Visibile Assets, bring to the RFID spectrum.

Our tags do not belong in the same category as RFID, although they could conceptually be used in many of the same situations where RFID is used today. It should be noted that our tags operate at the lowest end of the RF spectrum (below 450 kHz), and should therefore be considered a complement to RFID. This difference in carrier frequency results in some fundamental contrasts between our tags and conventional RFID. Namely,
  1. RFID has very short range with low penetration, while our tags have very high penetration and a considerably longer range,
  2. RFID electro-magnetic (wireless) signals are largely composed of electric (E) fields, while our tags contain 99% magnetic (B) fields
  3. RFID signals have a high bit-error-rate (BER), while our tags have a low BER
  4. RFID tags are generally passive devices, whereas our tags can be passive, or optionally active devices for wireless data-acquisition applications (temperature, pressure, etc)
My job at Visible Assets, Inc. is to design and implement low-level software and high-level hardware. In some sense, I transform our transceivers from simple radios into intelligent nodes within the aforementioned distributed, collaborative system. We call the end product a Sidewinder and of course, one could say that it is indeed an internet appliance (INAP) in the trademark-free sense of the word.

Currently I'm doing a master's degree in Digital Communications during the day, but then at night I assume the role of my secret identity as embedded systems engineer for Visible Assets. Right now I'm implementing a fairly sophisticated software stack in probably the best C code I've ever written in my life!! Needless to say, it keeps me reading up on all of the distributed / intelligent systems literature that I can get my hands on.

In the interview, John really spells out a highly technical subject in such a way that the average layman can understand, which isn't a very common ability among engineers. Don't let that fool you though. There are only a few people who understand our technology through and through, and John is one of them.

That's only one of the reasons I really like working under him. John has a great relationship with all of his employees. Last year we had our staff Christmas party at his home, which is more of a personal touch than I've seen at any other company. He gave this great speech which was followed by a cheerful toast, and it really motivated me - I'm working on some pretty cool stuff!

John gets so excited when he finds out about new progress that we've made. The only analogy I can give is to compare him to a child with a new train set. He's always excited to figure out how things work and he loves talking about all of the development details, like what challenges we faced, where we made compromises, and new and interesting ways we've used to overcome obstacles.

Nice interview John! I'm looking forward to showing you what's been keeping me so busy lately.

Other articles about what we do at Visible Asests:

Converge! Network Digest [20060609]:
IEEE Begins Work on Wireless, Long-Wavelength Standard
Sensors Specialty Markets [20060612]:
New Wireless Standard for Healthcare and Livestock Visibility Networks
RF GlobalNet [20060612]:
IEEE Begins Wireless, Long-Wavelength Standard for Low-Cost Radio Tags
RF Design [20060614]:
New IEEE standard to bring local network protocol to thousands of radio tags with long battery lives

RFID Journal [20060619]:
Visible Assets Promotes RuBee(tm) Tags for Tough to Track Goods
IDTechEx [20070208]:
IEEE RuBee(tm) Network Standard Meeting
Epson [20070507]:
Visible Assets, RuBee(tm) Technology Leader, Announces Investment from Epson Electronics America

20070808

Montréal: Hacking the Kernel

So I've been back in Canada for slightly longer than a week and I'm working full time for Visible Assets until the end of September.

I've decided to postpone my flight back to Hamburg until the end of September so that I can spend a bit more time with friends and also get a bit more done for work.

Right now, I'm sitting in Montréal at Erin's place. It's been nice to be back - actually, I think I'm suffering less culture shock in Montréal than I would be in Toronto. To tell you the truth, I think mon fronçais went straight down the garbage chute since October, as if German had totally displaced it in my brain. I really think that I'm going to have to work hard at it when I get back to Canada full time, and it would be nice to work towards some sort of bilingual certification or something.

A good friend of mine from the undergrad days, Ed Cote, is in Montréal at a conference presenting some of the work he's done at Queen's, in his master's program. He just finished this past semester (I'm jealous!). Today we're going to be meeting up for a 'cinque à sept', which basically means to have a few drinks at the end of the work day. I'm looking forward to getting out on a patio and having a couple of cold ones, especially in this heat!

For the next month and a half I will be porting much of the code that I've done in user space to kernel space - well, as much as possible, i suppose. Things that I won't be able to convert to kernel space are services and so on.

Particularly, one thing that I'm working on at the moment is a virtual block device that represents tracked / timed connections to the blaster device. What's particularly strange about this, is that I'm hijacking a serial device from within kernel space, albeit with a removeable module.

So far, it's going pretty well and I even have my module initializing the uart, but I've encountered a couple of segfaults. Luckily, I'm testing all of this using Qemu ;-)

Update (2007-08-09): I've managed to fix all segfault issues with serial hijacking by exporting a function init_tty_dev, which is just a wrapper for init_dev, in drivers/char/tty_io.c . Now the uart_driver->tty_driver->tty_struct array will contain a non-NULL pointer to a tty_struct which init_dev initializes. This must always be released with release_tty_dev( struct tty_struct * tty, int idx ) when the module unloads in order to return the refcount.