VBBMicro - UNO

VBBMicro with Arduino UNO host.

Breadboard Footprint

../../../_images/vbbmicro-k42a328p-breadboard.png

Schematic Symbol

Not available > Roadmap: Bind schematic.

Description

The VBBMicro-47K42A328P is a 28-Pin DIP ATMega328P pin-compatabile Avatar. It has a Microhip ATMega328P onboard which is the same device as used by the Arduino UNO R3. It also has a Microhip PIC18F47K42 device which supports the VBB Avatar firmware.

../../../_images/vbb-micro-small.png

PinOut

Pin

Name

Description

1

0->RX(In)

Digital 0 and Hardware UART RX pin

2

1<-TX(In)

Digital 1 and Hardware UART TX pin

3

2

Digital 2

4

3~

Digital 3 with PWM output

5

4

Digital 4

6

5~

Digital 5 with PWM output

7

6~

Digital 6 with PWM output

8

7

Digital 7

9

8

Digital 8

10

9~

Digital 9 with PWM output

11

10

Digital 10 with PWM output

12

11

Digital 11 with PWM output

13

12

Digital 12

14

13

Digital 13

15

A0

Analog 0

16

A1

Analog 1

17

A2

Analog 2

18

A3

Analog 3

19

A4

Analog 4

20

A5

Analog 5

SPICE

Yes. Mixed Mode.

OpenVBB

Yes.

Properties

Property

Values

Description

HEX App

Optional HEX to program on launch

Connection

COM | EDGE

The serial port to connect to the Arduino Host

Serial Baud

9600

The baud of the Arduino serial passthrough

HEX App

The HEX App is an optional binary HEX file as produced by the Arduino IDE or other AVR compiler. Using this property allows firmware for the virtual hardware to be saved with the project. On runtime startup the HEX file is programmed into the AVR328P using the VBB-Avatar-K42 chip as an ISP Programmer. If the HEX does not include a bootloader the device will need to be programmed with a HEX containing a bootloader before being able to be programmable again with the Arduino IDE. When programming the AVR328p using the bootloader using the Arduino IDE or other development tool leave the HEX App property empty.

Property Dialog

To attach a HEX directly drag-and-drop the HEX onto the Avatar in the Breadboard. Use the property dialog to:

  • Use a file picker to locate the HEX

  • Clear the HEX property

../../../_images/dragdrop-hex1.gif ../../../_images/hex-dialog1.png

TIP: How to create a HEX

When using the Arduino IDE use the following commands to create and locate the HEX file on your computer

  • Sketch Menu => Export compiled Binary ( Ctrl + Alt + S )

  • Sketch Menu => Show Sketch Folder ( Ctrl + K )

../../../_images/create-hex1.png

Connection

The Avatar connection is slected by drop-dropdown

../../../_images/connection-dropdown1.png

There are two type of connection. A direct COM serial connection or a remote EDGE connection.

COM

The COM port which is attached to a real Arduino UNO hosting a real VBBMicro-47K42A328P. This property dropdown list is populated by enumerating the supported devices list using the UWP generic USB driver. Windows Store App security requires that devices to be supported must be declared in the package using their USB VID:PID descriptors.

Currently Supported Arduino devices

  • Arduino UNO by Arduino.cc ( 2341:0043 )

  • Arduino UNO by Arduino.org ( 2A03 0043 )

Contact VirtualBreadboard support if you would like to request support for other compatible devices to be added to the next release.

>FTDI devices are not supported by the UWP generic device driver. Only USB emulated serial port firmware can be supported.

EDGE

When publishing your application using Remofity use the EDGE setting to enable the COM port to be late-bound to the serial port selected by the Browser or EDGE-App.

Serial Baud

The VBBMicro-47K42A328P occupies the DIP28 socket in the Arduino UNO and the VBB-Avatar-K42 chip is connected to the serial RX/TX. It is not possible to use the Arduino Serial Monitor to receive Serial.print() commmands in the Arduino IDE at the same time. If this is required then use the VBB-SHIELD Avatar which uses a seperate serial port for the Avatar communications. It is however possible to pass-through the serial communications to internal VBB serial aware components such as the Mini-Terminal. Serial Baud is the communication speed that should be used when calling Serial.begin(baud) in the Arduino application.

Useage

Notes

Add deployment details to deploy to the real device