V I R T U A L - B R E A D B O A R D

VBB is free to download with many useful features right out of the box including graphical programming, logic and breadboard layout. In addition there are several pay-for modules which extend VBB

VBB Module Description
GrapeVine A graphical programming language free for use with VBB and Boogie-Board.
Arduino Toolkit Integrated Arduino Development with emulation, debugging and programming  
JARVIS Knowledge base of circuit designs which you can place into your circuit
COMMS Create virtual to real bridges using serial and ethernet connections
CDK Create components and interactive models to control
Firmata Control firmata boards from VBB or control VBB from firmata clients
PicMicro Instruction set simulator for many PIC12,PIC16,PIC18 devices
AVR Instruction set simulator for ATMega 328 device with Arduino IDE monitor
Fritzing Importer for Fritzing component library

Recent Articles and Tutorials

Using the Fritzing Component 21 July 2014

Netlists in VBB   25 June 2014

Resistors in VBB   22 June 2014

Arduino Options in VBB 15 June 2014


Featured Video

Latest News  

25 August 2014

Science Hack Day Eindhoven 29-30 August 2014


Join Me if you can to field test the new VBB stuff and I promise to shower you with free tools! I am going to a field trip to the Science Hack Day to find out for myself what this Hackathon gig is all about. The plan is to apply VBB/Arduino/BoogieBoards/WaveRaster/iGadgART to do something cool. Not sure what yet, only signed up today. Those who can join my team will get hands-on VBB workshop, VBB licenses, dev boards, first look at the rapid PCB manufacturing and a shot at some cash if we can come up with something cool to make!. Hope to see you there.


22 August 2014

So back from vacation and getting back on track. This week I have been busy setting up the very first VBB custom FAB board the VZ-Shield

This is an AutoRouting Shield which you will be able to order for only $10 shipped same day when before the daily manufacturing deadline. The first project I am building to demonstrate the VZ-Shield is a board to support the Feed Monkey project which requires 8 servo connectors and button and light connectors. The VZ-Shield is based on the standard Breadboard pattern with special support for powered 3 pin connectors typical of servo's and other analog sensors and actuators. Below you can see how the 3 pin connectors are used ( this version of VBB will be available next week ).


I will walk through the whole process next week and also the additional features of the board but basically you just wire it up in VBB and when you order it you will have a custom PCB without wires ready to solder. I can't wait to explore the new possibilities with this new 'makeable' capacity.

6 August 2014

Free Custom Shield-PCB promotion!
/portal/vbb/doc/Home/VZ_Shield.png Share your project, get a FREE CUSTOM PCB!

The PCB FAB system is ready to go. It involves customising VBB template PCB's using a CNC profiler driven directly from your VBB designs. A low cost, next day PCB service is being created from this capability. /portal/vbb/images/youtube.png VBBExpress PCB Service . The plan is to franchise this service so contact me if you are interested in purchasing a machine and receiving PCB orders which you will FAB and supply to your local region and join in the VBB Micro Manufacturing Network.


The 'VZShield' is the first customisable template to be offered, the PCB's are on order and will have arrived by the time I get back. While trialling the PCB FAB system you can get yourself a FREE PCB based on the VZShield template when you share your project.


Shared Projects should include a writeup and a working emulation model using either GrapeVine or Boogie which will be standard in the free version of VBB. This will allow anyone to download and preview the project. As a reference project I will be creating a 8 way servo controller shield for use with the Feed Monkey iGadgART project. This will be turned into a project template for you to share your own projects in a way that can be easily added to the VBB online project library.


You can already start thinking about your designs using the UVShield already available in VBB which is almost exactly the same as VZShield. VZShield has a few extra bells and whistles including a special row for powered 3 pin connectors so commonly seen in sensor and servo projects plus several power rail connection options.


Boogie-Board Kickstarter!
/portal/vbb/doc/Home/kickstarter.png Back me on Kickstarter, COMING SOON  

I am building toward a KickStarter for the Boogie-Boards, iGadgART, a Udemy based step-by-step self-education course and possibly other rewards which I really hope you will back me on. There are a bunch of different reward possibilities and I haven't yet decided the complete mix. Kickstarter campaigns are hard to get right so I want to get some feedback and help with getting the right 'buzz'. As part of that I am actively looking for campaign contributors and communicators - if you think you can help let me know. I am thinking to offer a share of the rewards in return for your contributions in shaping and sharing the message.


To date I have been spectacularly bad at 'buzz'. This is part strategy ( stay under the radar ) and part personality ( I find it hard to put myself out there! ). But I recognise that in this day and age it's important that people feel good about the products they are involved with. This is the reason for the VBB make-over with Boogie and GrapeVine.

/portal/vbb/doc/Home/Boogie.png VBB has fantastic potential as an educational platform and I wanted to make it fun and funky to capture kids imagination and energy as young as possible. And well, I have it admit it really makes a difference. My 8 year old boy find's 'Boogie' much more interesting than V18'O (huh?).. He is my test case and both my kids absolutely love FeedMonkey and other iGadgART I have cooking. They have started to learn GrapeVine and will soon start on Boogie so this is the educational level I want to begin from. Up until now I haven't built any coursework to enable this type of learning with VBB and that's something I want to make part of the kickstarter, an in-depth step-by-step course that can be followed virtually and and also for real with a Boogie-Board starter kit.


Why Boogie-Board and not just use Arduino? Well actually you will be able to follow alot of the course with an Arduino and so that will be an option for those who already have Arduino boards. Also I will offer a chip swap option so you can transform DIP based Arduino boards into Boogie-Boards. However there are things you can only do with Boogie because Arduino has it's limits.


Most importantly Boogie is Object Orientated so you can create dynamic objects and do all those funky OOP things you can do in Boo/Python/Java that you can't do in C. GrapeVine for example is an OOP based Visual Programming language, and WaveRaster /portal/vbb/images/youtube.png WaveRaster 'What is it'   which Boogie-Boards also support is an OOP based Android programming System which is so amazing it still blows my mind. You can try to understand WaveRaster, /portal/vbb/images/youtube.png WaveRaster 'How it works' , but you won't 'get' how this is useful for creating ah-hoc user interfaces until you touch it with your own hands. Here is an early example to get started /portal/vbb/images/youtube.png WaveRaster 'Using WaveRaster With Arduino ' . Just say this 10 times, The Android App gets embedded and the Android Phone remotely rasters the display. Got it?


So what exactly are Boogie-Boards then? A Boogie-Board is very similar to an Arduino except it has a different compiler ( muvium java ) and a different micro ( PicMicro ). When the PicMicro is programmed with a Muvium Bootloader it becomes a Muvium Micro. So a Boogie-Board is a development board for a Muvium-Micro in the Arduino Form-Factor. I first created Muvium back in 2003, years before Arduino was even thought of and if you attended Microchip Masters in 2004 or 2005 you could have taken the preview course on Muvium using Eclipse and an earlier version of VBB - talk about head of it's time! You can also develop for Boogie-Boards using Eclipse ( or other java platforms like netbeans ) once you become an expert but Eclipse is just not the right tool for getting started, that's what VBB is for.


With interactive emulations that accurately map to the real world, VBB is impossible to beat for self education when used alongside a complete coursework. I am very excited to finally be in a position to complete the VBB vision and I hope you can back me and become part of the VBB story.


More when I get back recharged and ready to .. um.. Boogie!!


5 August 2014

VBB 5.07 Available Now!  

Release Notes - Will record a release note video tommorrow

- Replaced the Piping Board with 'Boogie-Board' which is to become the reference development board for VBB tutorials, reference code etc

- Renamed Piping to GrapeVine ( If you have created Piping projects zip them and send them to me and i will upgrade them to work with the new version )

- Reworked all Piping examples to GrapeVine

- Updated VirtualShield graphics

- Added Redo and put the Undo/Redo buttons on the toolbar

- Linked Arrow keys to scroll bars

- Linked mouse scrollbar to zoom with ALT key is hold down

- Linked mouse scroll wheel to vertical scroll when ALT key is not held down

- Fixed crash on minimise

- Fixed the current solution working director browse button

- Fixed ARDUINO ERROR - just click ok on importer

- Improved the snap to grid

- Fixed zoom when not using lock origin mode

30 July 2014

Lets Boogie!

/portal/vbb/doc/Home/Boogie.png I have spent years trying to find the perfect language to become the native language for VBB. The original thinking was Java, and to support this I built an AOT java compiler for microcontrollers called muvium. In addition I integrated a Java runtime and debugging framework into VBB but.. yawn it just didn't stick.


Then along comes Arduino which is C made to look like java and wiola! There are other factors for sure but I have become convinced that it's the type-free programming that is really attractive to the typical Arduino and physical computing dudes ( and dudette's ). For more casual type programmers where the program is only part of the solution type-free languages really seem to be the bomb and bundling C with Java makes Arduino more type-free than java it'self which uses strict typing.


As a more or less full-on software guy I find type-free languages hard to live with because they introduce errors when software libraries need to work together but for scripting and 'hacking' the lower learning curve of type-free languages seems to be strongly prefered


While I have been able to run the java parts of Arduino in VBB using the java frameworks originally created for muvium, Arduino is not a perfect fit for the native language for VBB. After all Arduino is also C, a very CIL unfriendly language. What I need is a language that supports both CIL and JVM. Java using J# for CIL and javac for JVM was a good first effort but Java is not a type-free language and in addition Microsoft stopped supporting J# putting VBB on a clock to to deprecate J#  


My initial response was to develop a Visual Basic (VB.NET) Bytecode Generator which was released in VBB as VBee. This allowed me to experiment using Visual Basic as the native VBB language. But since Visual Basic became VB.NET it also lost alot of the type-free features that made the original VB6 and VBA popular. This has seen VB.NET become less popular over recent years so also didn't stick. Strike 2.


After some head scratching I found myself asking what has stepped up to replace VB6/VBA as the type-free Language of choice? Why Python of course.


However, Python is an interpreted language , not CIL and not JVM.. unless.. Enter Boo!


Amazing! Boo is exactly what I have been looking for and in recent months I have been integrating an embedded Boo version into VBB which I am calling Boogie

  • Boo is based on Python syntax but with critical differences essential for embeddable runtime
    • Boo is statically typed which means it uses smart analyses to add typing suitable for Ahead-of-Time-Compilation (AOT)
  • Boo compiles to CIL
    • Like J# I can use Boo to run embedded Boo applications emulated at full CIL speed in VBB
  • Boo compiles to Java Bytecode via Boojay
    • Like javac I can load Boo JVM code into the VBB Java Debugger framework
    • Muvium can compile and deploy the Boo generated JVM bytecode to embedded Muvium microcontrollers
  • Boo can bind .NET libraries for scripting components VBB and other scripting tasks
  • Future Proof
    • Cross-platform support for Mono when we finally make VBB fully mono compatible
    • Boo is a supported Scripting language in Unity for potential future 3D support in VBB


There is still alot of work to do to fully support tab-completion editing, in-circuit debugging and more but the first steps will begin in just a few days time with the release of 5.07. Get ready to Boogie!


More soon!


24 July 2014

VBB 5.06 Available Now! - Fixed some internationalisation problems introduced in 5.05

22 July 2014

VBB 5.05 Available Now!

This release is a big step forward for the SVG graphics engine and a much needed website clean-up. VBB uses a type of iterative development model where new features and product lines are released quickly to see what 'sticks'. It's a bit of a messy process but things are coming together now and each release iteration is sharpening the look and feel of the platform and filling in the gaps.


The big feature for 5.05 is the upgaded support for SVG sufficient to import most patterns that are produced from Illustrator and InkScape. This really opens up some fantastic opportunities. Importing Fritzing components is an important step but even more exciting is you can now import clipart and other graphics into the Component Development Kit for use with the VBB animation engine.


iGadgART - My inner artist has been patiently waiting for this because there is a whole art-form I have been wanting to explore. I called it Interactive Gadget Art or iGadgART and now VBB can be the development platform for this new artform. I have included one example of iGadgART in 5.05, it's called 'Feed Monkey' and it's a servo based animatronic that I am building for real also. It's a type of Virtual PET where when you press the FEED button , a servo controlled sequence of monkeys swings through the forest to grab the banana. My kids already love it but I will be adding sounds and maybe even virtual PET logic where you have to feed him to keep him happy. This is all part of the exploration of iGadgART and already I can think of countless projects to work on.

/images/info.png mouseover to feed monkey


How it works is you use the Component Dev Kit to create the model of the iGadgART and then you import the interface to that model onto a Breadboard and hook it up to an Arduino or a Piping Board. I have extended Piping to support Servo's and have included an example of using Piping to implement 'Feed Monkey'. This means everyone can preview iGadgART because Piping is free for everyone to play with. I have also included an Arduino version of the code but you won't see that until you have a Arduino Toolkit license. I am going to have to release a bunch of followup tutorials on how to 'roll your own' clip-art based components and much more so that's all coming up over the next few weeks.


Fritzing - Is a complementary Breadboard centric tool that has a nice library of SVG Breadboard component graphics which you can now use in VBB with the Fritzing Module. Read More ...   



Arduino Developer Bundle - Many of you have been asking about bundles and here it is! The Arduino Developer Bundle puts together everything the serious developer needs to really get their teeth into VBB

  • Arduino Toolkit
  • Component Development Kit
  • Fritzing Importer
  • Communications
  • Atmel AVR

All for $99! which is a less than half the price if you purchased seperately.

But wait there's more! -- For a very limited time you pick up the Arduino Developer Bundle for only $49 which is more than 75% off!

More News ...