Experiencing some technical difficulties as we are redesigning the site.
We have fallen back to an old webpage for the time being.

Welcome!


VirtualBreadboard is an easy to use simulation and modelling tool that can be used in place of a real breadboard for quickly performing experiments and testing out electronic and microcontroller powered 'embedded' applications.  Since 1999 VirtualBreadboard has been a favourite with universities and enthusiasts from all around the world.

What's it for?

VirtualBreadboard (VBB) is for designing and testing embedded software in high-level interactive circuit simulations and rapidly prototyping hardware from those designs. Compared to other simulators many people find the high level approach taken VBB easier to use and much faster to model and test out new ideas and circuit variations.  

YouTube Video Channel

Quick Arduino Demo

Arduino Virtual WebServer example

Getting Started with Amicus Example

Got a Bug or Suggestion - Enter it here

25 May 2010
VBB 3.6.4 Available
Whats New
* PIC16F628
* PIC16F628 Examples
* Added EEPROM to PIC16F877
* Added Relay Component ( Switches Group)


8 May 2010
VBB 3.6.0 Available
Whats new

* Undo! in Breadboard Design Sheets
* Stepper Component
* Arduino
- Stepper Library Support
- Stepper Example
- Added micros() and delayMicroseconds()
- #define statements supported in any source code



27 April, 2010

Got a Bug or Suggestion - Enter it here

18 April, 2010

VBB 3.5.7 Available

Whats New

* Microchip PIC16 - Fixed a bug with PIC16 devices that only have .hex files. They reset and run immediately now.

* Arduino - Added support for multiple .pde files in sketches and also for User Library Support with cpp files.


To add a user library you can right click the Arduino source project and add a CPP source file and matching C Header file.
You can also add additional Arduino Source files - only one should have the setup() and loop() routines and this is considered the main.

See the Morse example for how to work with custom libraries.

NOTE: Only Arduino language is supported - you cannot use arbitary cpp or processor specific inline assembly

Arduino Examples
Added the following standard examples
* User Libraries / Morse
This example is from the Arduino tutorial on how to add a user custom library.
* User Libraries / MorseSub
This example does the same job as morse except that a .pde subroutine is called from the MorseSub.pde to illustrate using seperate .pde files as subroutine files.



10 April, 2010

VBB 3.5.6 Available 

Whats New

Tab Completion and context sensitive method suggestions when editing Arduino code




9 April, 2010

VBB 3.5.5 Available 

Whats New

Arduino Library Support 

 *
EEPROM - Includes a property in the Virtual Arduino board for editing or loading and saving the EEPROM to a file
 *
Servo - Generates Servo pulses suitable for driving a servo component

Arduino Examples
Added the following standard examples
* EEPROM -  EEPROMClear,  EEPROMRead,  EEPROMWrite
* Servo -  Knob, Sweep

4 April

20 examples in 3 minutes

A quick tour of VBB's Virtual Arduino builtin examples and also a good snapshot of what you can do in VBB

VBB 3.5.4 - 4 April 2010

Better runtime error handling for Arduino

VBB 3.5.3 - 3 April 2010

Whats New
LED Anode - The LED 1,4,8 have a new Anode property which allows you to use a pin to specify the anode instead of the default ground. Useful for multiplexing LEDs
Example Fixes - Fixes the BasicStamp and RoboPAL examples caused by the Xencode release model
 
NOTE: Since there is no installer the MPLAB Plugin does not get installed. This will be available as a seperate install shortly.

3.5.2.exe - 2 April 2010


Xenocode Virtualisation

Instead of being distributed as an installer, VBB is now distributed as a Xencode EXE which means all of the files are contained in a single executable sandbox EXE which doesnt need installing. Just save it to your desktop and run it. This is great for managing versions and running on machines that would otherwise lock you out.
NOTE: You still need to install the dependencies of J# and DirectX seperately. See the notes at the bottom of this page


New Components

Arduino

The largest addition for this version is integrated support for the popular Arduino board. The standard board is supported along with many of the libraries. In VBB you are able to edit and run realtime emulations of Arduino applications.



Arduino Examples
The 25 examples provided illustrate the libraries supported by VBB


HD44780 LCD



The standard and long requested HD44780 is now available. The custom character, cursor and cursor blinking is not functional but the rest works nicely

Buzzer
The buzzer component expects square waves in audible frequencies which it converts to a tone and plays using direct sound.

A LCD Matrix

The LDM-24488NI Matrix. is a neat LCD matrix which allows mini bitmaps to be displayed. The component implements a fade feature to allow scanning to operate.

 
PWM to Analog

A PWM to Analog converter function block which accepts PWM and outputs a duty based analog level

 

Check Install Notes
See Troubleshooting
Enter a bug or suggestion

Download VirtualBreadboard

Version 4.2.9( 11 Feb 2011 )

 

Contact:

 

Quick Tips

  • When wiring you must have a single wire ending on pins on either end. If successfully wired it will become thicker. Click left button to create the wire and right button to finish the link
  • To view a DesignSheet (Breadboard, source project etc) You drag and drop it into a viewing panel. If the panel is occupied you can always drag into the title bar of the panel t
  • The Toolbox and Toolbar are context sensitive and change when the current design sheet is selected. In particular this means you need to select a Breadboard to simulate to see the run toolbar
  • It is highly recommended to save your project immediately after creating it to give it a file location which can avoid problems when adding new source files later
  • If you are using the PICMICRO examples make sure MPLAB is installed in the default location or you can change the location see here

 

Screenshots

DesignMode

RunMode

PicMicro

Aduino Arduino



Click HERE for Previous Release Notes Hints and Tips


'HowTo' Quick Start Tutorials
  Simulate a Hex File Say you have created a HEX file using your compiler or whatever and you want to simulate it. This tutorial shows you the basic steps to
1) Start VBB and create a New project
2) Drag and Drop a PIC18F8722 ( My HEX uses this part )
3) Wire up some virtual hardware, a LCD and COM Monitor
4) Save the project
5) Locate the properties of the PIC and link the Application property to the HEX file to run
6) Run the virtual application
7) Edit the properties to improve the simulation.
  Creating an Arduino Project from Scratch Say you have an Arduino source code file you want to simulate. There are lots of Arduino example built into VBB but this tutorial shows you how to do it from scratch?
1) Starting with a Arduino application called Blink.pde on the desktop
2) Start VBB and create a new Project
3) Drag and Drop an Arduino board onto the Breadboard and then drag and drop a LED onto pin 13
4) Save the project: Note Its important to save the project before adding source projects. We are calling the project MyBlink
5) Copy your Arduino application into the MyBlink VBB Project folder
6) Add an Arduino Source project to the folder by right clicking on the Project and selecting from the list.
7) Add the Arduino Blink.pde Source file to to the Arduino Source Project by right clicking on the Arduino Source project. You can select Blink.pde from the list because it is in the project folder already
8) NOTE: To view the source project you need to drag and drop it into a view panel 
9) You now need to link the source code project to the Arduino processor so you click the Arduino board and then select from the Application property the name of the project source
10) You are now ready to run the simulation so click run and you will see the LED blink
11) You can inplace edit your arduino code but you need to save it before you compile it. If you make syntax errors you will see those in the Errors List.
HTML   Using MPLAB .LST Files How to debug a MPLAB .LST File
  FLASH First Debug Project Minimal steps for creating a debug project VBB3. ( No comments yet )
FLASH ( 6.3 Mb) Logic Analyser Basics ( 6.3 Mb) How to add and use the Logic Analyser with your projects
  FLASH ( 5.5 Mb ) Using MPLAB Plugin How to connect to your project hardware from MPLAB using the VBB MPLAB Plugin
  FLASH ( 5.5 Mb )(fixed) Virtual Serial Port How to connect a serial ethernet bridge to VBB applications in-circuit

Installation Instructions

The VirtualBreadboard application is a single Standalone EXE. You can simply download it to your desktop or preferred location.

However, VirtualBreadboard has the following dependencies which need to be installed on your computer. These may already be installed on your computer and only need to be installed once.

1) Latest version of DirectX - Click here to download from Microsoft

2) .Net 2.0 Redistributable. Click here to download from Microsoft

3) J# 2.0 Redistributable. Click here to download from Microsoft

Now you can download VBB

Supported Operating Systems
 
VBB3 is a Windows Application developed with Visual Studio 2005 and has been tested on 32 bit versions of windows WindowsXP, Vista and Windows 7. VBB also works on 64 bit versions of windows.

Linux is not supported at this time however the long term goal is to run VBB on the Mono.Net platform which is supported by Linux. However Mono does not yet support DirectX and other libraries so there remains considerable porting work remaining before Linux is supported.