Bluetooth Network Monitor

Bluetooth Network Monitor

[Zak] wanted to keep tabs on his network connection without needing to log into his router. Since his router was a PC running Debian Linux, he rigged up a Bluetooth Network Monitor to display the information.

The monitor is based on a ATMega328P that reads data from a Bluetooth serial connection and displays it on the TFT screen. It uses a low cost Bluetooth module to receive data from a router. A shell script fetches the data and formats it into a string that can be sent over the Bluetooth link.

A USB connection with a desktop computer is used to power the device, but [Zak] also added USB support using V-USB. He plans to use it to get data from the desktop. For example, he could display CPU load and temperature data.

Overall, this is a nice project for fetching data wirelessly and displaying it on your desk. [Zak] has provided the code and Eagle files with his write up for anyone interested in building their own.

20 thoughts on “Bluetooth Network Monitor

  1. And yet I’m here wondering why he’s using a customized Debian install that must be a pain to configure, when there’s already an open-source Unix-like OS designed and preconfigured to be a PC-based router in pfSense.

    1. I used to use pfSense, but found that it liked to break a lot, it also had a rather limited selection of software that it officially supported.
      Debian doesn’t have a nice web interface, but it doesn’t take much to install a few bits of software and edit a few config files.

      1. Nice Monitor project.

        But I find it ironic how all the people that like to roll their own edge security think that the REAL Edge Security Appliances (like IPCOP or PFSense) are just thrown together. They go thru this process called hardening, and then every single addition means the entire system must be re-hardening and then re-tested for security. They’re also continually tested by the dev’s, a security audit group, and then a few million users that would love to point out a bug or hole. I’ve yet to see a roll your own solution that comes close to the security these dedicated firewalls offer.

        But if you want a leaky do everything roll-your-own solution swiss army firewall/application server/file server/coffee maker, it’s your network you’re “protecting”, not mine.

  2. I did something similar a few years back. Instead of doing all the rendering on the display’s micro I used Imagemagick to do the text rendering and image compositing on the host end and pushed bitmaps formatted for the LCD down the pipe. This kept the display from updating at less than 1 per every few seconds, while the lack of RAM on the MCU I used (really early Luminary M3) meant no backing store for clean refreshes. The advantage to this setup though is that changing up the display layout or contents was as simple as a minor shell script change.

    If I had it to do over again I’d use a micro with more RAM, add JPG or PNG decoding, and let the micro do the compositing while still generating text and dynamic bitmaps at the server end.

    1. That’s a pretty slick method for formatting, I’ll have to put that as a feature on one of my many “to do” projects! I’m sure it was also a lot easier to tweak/debug the images on the computer rather than through the micro :)

  3. Really slick implementation! Only thing that puzzles me is how he’s got an email notification icon in the lower-right corner of a firewall display. Now granted, I didn’t read the article, so if he’s pulling from multiple sources for the display then that’s just extra bonus points.

    Regardless, very nice job all around.

    1. Using Bluetooth just means as long as it has power it will work, if it was only using USB it must be connected to a PC with the software running and connected to the network so it can make requests to the router. Originally it wasn’t going to have V-USB, it was a last minute extra.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.