66% or better

Adding a display to a USB digital scale

arduino_scale

[Oleg] found himself in possession of a Stamps.com Model 510 5lb digital scale.  It’s a great scale, but only works as a USB HID device. In other words, it’s a digital scale without a digital display. He decided he wanted it to be more standalone, so he added a Toshiba HD44780 (compatible) display. An Arduino UNO and USB Host shield were used to make it happen. His sketch simply polls the scale and outputs the weight on the display.

In this case, he used the USB Host Shield from Circuits at Home, but a brief look shows they use the same MAX3421 controller chip as Sparkfun and other versions of the board. You might also be able to pull off the same functionality with an AVR running V-USB, though admittedly it wouldn’t be so easy.

We haven’t found a great way to add USB host mode to projects other than shields like the one [Oleg] used. If you know of a better way, share your ideas in the comments.

Of course, if this isn’t hardcore enough for you, forget using a consumer scale – make your own from scratch!

Comments

  1. Mike Szczys says:

    Phillip, welcome to the team! Nice job with your first post.

    I think LUFA might also support USB host mode but I’ve never tried it. I do agree that it would be more difficult (for me anyway) to get that set up than it would be to use a dedicated controller like the shields do.

    I’m amused that they display the weight of the LCD screen on the LCD screen. Ha!

  2. trackday says:

    The Arduino Yun uses an Atheros AR9331 and can do USB host and OpenWRT! Price is high apparently. Or you could just use the 8devices Carambola2

  3. tekkieneet says:

    V-USB does not implement USB host functions.

    This undergrad thesis project on the other hand does: “SIAM32 USB HC -
    Software Implemented Atmel Mega32 Universal Serial Bus Host Controller”

    https://courses.cit.cornell.edu/ee476/FinalProjects/s2007/blh36_cdl28_dct23/blh36_cdl28_dct23/

    As with undergrad projects, it need a bit of work.

  4. F says:

    Many ARM chips like STM32F107 have USB OTG ports that can be configured as host ports. ST ships a HID demo program, it would be simple to hack it to read the scale.
    Get an OTG adapter cable and a cheap STM32 board (STM32F4Discovery will do) and you’re off to the races.

  5. James says:

    Is there no way to grab the data by cracking open the scales and finding some UART test pins or something?

    • Mike Szczys says:

      Oh I’m certain that is possible. But I’m actually really interested in the thought of easy USB host mode. Since it’s a know standard and there are debug tools available this should be WAY faster than sniffing around the PCB to figure out how it’s working.

  6. James says:

    I wonder if it wouldn’t be possible to circumvent the whole USB stuff and just get a value with the Arduino directly from the board of the scale somehow. Using the USB shield + protocol seems like overkill.

  7. shez says:

    The android controlled kebab skewer quad you featured started off using the arduino due in host mode before I settled on the androidserial route. Due does support usb host though!
    shez

  8. Elijah says:

    Now I know what im doing with my eval bot.

  9. BiOzZ says:

    i have done somthing similar with my stamps.com scale … but what i did is use a MSP420G2553 on the weight sensor thing … it took calibration but after that it was a nice usable scale!

  10. claudinemann says:

    Other than the fact that the load cell system is compatible to your device, all scales are also suitable for many types of weighing equipment. It’s always good to know that besides assurance, it also gives precise measurements over an extensive period of time. It is also consistent, balanced and reliable. I think that you used a sensor from a digital scale to get the result.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s