User Tools

Site Tools


Embedded Hardware & Software

Home Automation Manifesto

It is two minutes to midnight to finally start developing “Hello World” application of Intelligent Buildings. This is our Home Automation Manifesto to the world:

  • Home and Building Automation has to be fully working system, with near-realtime performance, easily configurable and controllable.
  • Hardware is commodity today. Fully functioning server software, infrastructure and generic devices are needed under OSI approved Open Source license. Contributors are welcome.
  • We had enough looking at manufacturers, making their own closed gardens at users' expense. A generic (umbrella) Automation Communication Protocol is needed, in order to open and connect these closed gardens. A modern Layer 3+ protocol for dealing with today's hardware is needed. The layers below may stay platform dependent.
  • An open hardware and software Vendor Implementation Kit which will allow third party vendors and hackers to seamlessly implement their own inter-protocol bridges through an API. This way, it would be easy to bridge the proprietary protocols and start talking to protocols based on different standards.
  • In today's world Internet of Things world going after their own users' privacy, while “security” agencies collect more and more bulk data, it is our initiative to fully respect your privacy. Every device in your home has to stay silent to the outside world, unless you tell it so. Allowing your fridge to phone home to its manufacturer through our system is unthinkable, because Open Source should design with privacy in our minds.

Bratislava, January 2011.

Lubos Medovarsky

2017/01/25 15:31 · lubos

Adhesive sheets for front panel design

Some years ago I have found a good and reliable way for front panel design using multiple adhesive foils. For materials of my choice, see below. It goes like this:

  • Use inkscape or similar vector based drawing tool and your measurement tools of choice to design the front panel.
  • Print the panel on the plain paper. Cut the frame out. Check the printed outline with the original enclosure. Iterate until satisfied with your results.
  • Store the panel's outline into separate layer for later use.
  • Print the panel on opaque (non-transparent) adhesive foil of your choice.
  • Print the panel's outline onto transparent protective sheet. My preference is slightly structured surface finish, which hides the manufacturing imperfections. Your preference may vary.
  • Stick your panel to the surface
Preferred adhesive foils

My preferred items are Conrad's

  • matte sheet #528870,
  • textured sheet #529443,
  • clear sheet for laser printers #530565,
  • clear 160µm sheet for inkjets #529672,
  • as well as white sheet for inkjets #529648.

UPDATE: Recently, I have found some alternative and cheaper self adhesive laser printer sheets from Lomond. They are sold by Agem in Slovakia:

2017/01/25 15:10 · lubos

A short checklist for STM32 Open Source developers

EDIT: Published in 2013.

Up until recent months, Open Source oriented developers developing for ST's' Cortex-M SoCs were faced with a tough choice: should they choose the development tools that exist today, but are Windows-centric? Let's be fair and admit that using Windows for any FLOSS development is like developing without arms and legs.

Fortunately, native open source OS solutions have started popping up lately, though they narrow down to GNU/Linux (mainly Ubuntu 12.04 or later), gcc toolchain, openocd, and a handful of scripts for make and linker. Another addition to the list is Eclipse IDE.

With these findings, I'm on the “me too” side of STM32 bandwagon.

The first thing to go after, in my point of view, seem to be Vedder's Get Started With STM32F4 on Ubuntu Linux about building modified summon ARM GCC toolchain. With minor modifications to the script, this works well with Ubuntu 12.04 LTS.

When you are ready to launch, USB CDC as software serial on STM32F4 is the way to go.


The Definitive Guides

An issue with copying and pasting the code blindly is that it only scratches the surface, instead of understanding the core's internals. If you want to learn about ARM Cortex-M platform, my recommendations go after Joseph Yiu's The Definitive Guide to ARM Cortex-M3 and CortexM4 Processors, 3rd Edition and Cortex-M0/M0+ version here. These 800+ pages are worth the money invested. Both books are oriented at general Cortex-M programming.

Mastering STM32

If you are STM32 positive like me, then you may find even better reading with ST-specific internals: Mastering STM32. Carmine Noviello did a great job at explaining many implementation details and caveats. Although the book is HAL library oriented, STM32 users with SPL affinity like me should also read this book. In short, this is the best book about STM32 Cortex-M systems on chip so far.

2017/01/25 10:26 · lubos
embedded.txt · Last modified: 2017/01/25 15:32 by lubos