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
Why Managed Embedded For VBB
Using VBB with Arduino IDE 8 Sept 2014
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
13 October 2014
5.09 Available Now
The last few days I have been back in film making mode. This time instead of a 'explainer' type video I made something more like a short film. It's called duino's Dream and it's based on the film 'the matrix'. Spoiler Alert! - duino wakes up to find he is in a matrix of his own and his reality is created by electrical signals created by a VirtualShield. Like morpheous said..
Morpheous - the matrix
7 October 2014
Over the weekend I participated in the Sprint14 Hackathon and won the runner up prize - not too bad for an idea I had only during the week and with a random team. It was a good opportunity to put BoogieBoard programming and VZ-Shield PCB manufacturing through its paces and I will write more about it soon in a special hackathons section. Actually we had alot of fun with this simple hack and I think I am going to take the idea forward as an experiment on product cycles that go directly to customers via crowdfunding. As I get more engaged with the whole startup, hackathon, meetup community the focus always seems to be on getting investors. All the energy seems to go into business models, pitches, demos, competitions all to get an 'investor'. Seems to me there is alot of energy wasted on things other than the actual product invention and customer feedback driven product iteration. Crowdfunding seems to offer something different. How about just focusing on the product and pitch directly to customers? Crowdfunding is not completely new but its not yet mainstream behind the scenes it seems. I suppose it's more 'scary' to pitch to 1:10000++ in public and risk an epic public failure than it is to pitch 1:1 behind closed doors.
So will it work? How does it work? What can we learn about crowdfunding? Lets find out! More soon.
Yours truly (seated) overseeing data collection to prove the concept.
3 October 2014
New Tutorial Switch L.E.D
2 October 2014
New Tutorial Blink L.E.D
1 October 2014
5.08 Available Now
It's late and I have had enough! Time to just Ship It..
What's new is Boogie! I will write more tommorrow but my tip for now is to start following along the tutorial series.
Hello Real World
The plan is to do a tutorial a day up until the kickstarter.. should be fun.
26 September 2014
The Need for Speed
Everyone knows the only language for embedded is 'C' and to prove the point the first comparisons made with any new language showcase the for loop which is probably the strongest part of C and often the weakest part of a managed languages. Boo is statically typed and Boogie is ahead-of-time compiled by Muvium so of course the first thing I wanted to do is to add a bytecode optimiser packer for the Boo for range() enumerator function.
The most common benchmark I have seen is how fast you can toggle an output pin. Here is the code using the for range loop to toggle a pin 1 million times. This short code segment shows also shows off how to directly access Special Function Registers which gives you the power you need to manipulate the real world.
mark as long = millis()
//Fastest : 378ms
for x as long in range(1000000):
PIC18.LATCbits.RC3 = 1
PIC18.LATCbits.RC3 = 0
println( millis() - mark )
The results speek for themselves. 378 milliseconds for 1 million toggles of an IO pin on a 16MIP 8-bit PICMicro microcontroller core. Ok, so I have tuned performance for this specific pattern but that's kind of the point. Boogie has speed when you need it and the high level language features that make your code easy to develop.
12 September 2014
Why Managed Embedded For VBB
The problem I am trying to solve for VBB is how to lock together the emulated and deployed application so they are the same thing and not have to deal with conversion friction which reduce the value of the emulation.
It's proven useless trying to emulate unmanaged system applications. Not because of the difficulty of simulating the CPU's, we have AVR and PIC simulated cores already. Its because microcontrollers don't stand alone and its too hard to simulate the entire world at a waveform level.
11 September 2014
Boogie Sneak Peak
Today I finished working through the Boojay JUnit test suite to verify the Boogie implementation and except a handful of minor exceptions Boogie passed the more than 100 test suite covering a wide variety of language constructs. The categories include arrays, assorted, autocasting, builtins, callables, crossplatformability, expressions, generators, macros, statements and types give you some idea of the richness of Boo. I am preparing a release test report and will be re-running and extending the suite each release to validate correctness.
To clear up the names :
I have also just about completed the integration of Boogie into VBB and with the backend up and running will be able to release a preview version this weekend. Check out the sneak peak - Spot the Pythonesque capabilities..
( PS - Last days for the summer deal on the Arduino Developer Bundle )
8 September 2014
Using Arduino IDE Tutorial
VBB supports integrated Arduino development using the Arduino Toolkit but this requires the conversion to-and-from java. There are several ways in which VBB also supports working side by side with the Arduino IDE. This tutorial shows how to setup a project to work side by side with the Arduino IDE using the JARVIS Arduino code generator. Learn More... 8 Sept 2014
5 September 2014
Unit testing Boo - Progress Report
I have been promising all sorts of write up's and their coming but this week I have been in the 'zone'! I think it's fresh energy from the Hackathon and all the boxes I had to tick to make that happen cleared the decks for attacking the muvium Boo port this week. I have never used Python before but Boo is a fantastic interpration of Python that is ideal for embedded because of it's static compilation. To make this happen I have been working with Boojay which is the Boo java bytecode emitter and porting the back-end language support to suite small footprint implementations.
It's electifying to see Boo compiling to bytecode and then muvium squeezing into a tiny micro and executing with the performance of C. One of the best things about Boojay is the unit test suite which I have integrated into the muvium junit test harness to verify the implementation. The muvium Junit harness allows you to target a suite of java tests and dynamically compile the test, program the board and compare the expect result. In the process I am learning so much about Boo because I am inspecting the bytecode emitted by various Boo(Python) language constructs and understanding how the language is helping simplify concepts to make things easier. A fan in the making I think..
I am about half way through the test suite.. I really will write all this stuff up but right now I am just trying to ride the energy boost to accelerate the integration of Boogie into VBB and bring forward the KickStarter so you guys can get your hands on a Boogie Board of your own ASPAP. In the meantime here is some Junit eyecandy..
1 September 2014
What a week! One of the reasons I get involved in events like the hackathon is to set deadlines to help me accelerate development. In the hackathon I wanted to have the VBBExpress PCB's ready and integrate WaveRaster into VirtualBreadboard for use with Boogie Boards. Getting all that ready in time was really a push but that's what it's all about!
My idea for the hackathon was called 'FunQ' which is the gamifaction of the waiting queue. The idea is people waiting in a queue connect to and control themed iGadgART with their phone using WaveRaster as they move along a queue. We had quite some fun and I will do a complete write up about it in the next few days.
Today I want to show you what a VZ-Shield looks like because I am extremely excited and happy with the result. I have been working on this concept for years now. I think it can completely revolutionise DIY micro manufacturing and when I combine it with J.A.R.V.I.S your circuits will just about make themselves!
So here it is - the very first VBBExpress board. It's a VZ-Shield routed to drive 8 Servo motors with a LED, Pushbutton and optional power regulator. Right now I am putting together a tutorial on how you can make your own VZ-Shields but I couldn't wait to give you this peek. Cool huh!
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
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. 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.
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.
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 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, 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 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 News ...