Saturday, July 11, 2020

Bicks by the Bay 2020 Saturday

Here is how I spent the day at Bricks by the Bay 2020. 

LEGO House Presentation



The first presentation was live from LEGO House and a tour of the facility in Denmark.  If you are a  LEGO fan this is an absolute must and is on all our bucket lists.  Some of the MOCs shown are just amazing.  The dinosaur models in both normal Lego and Duplo for the baby dinosaurs.

LEGO Ideas Presentation
A great presentation on LEGO Ideas and how the process works.  This was followed by a wide ranging discussion on everything LEGO.  Sara did a great job fielding difficult questions. 


Henrik, LEGO Designer Presentation
Great discussion on how the Imperial Star Destroyer (#75252) and how it was designed. 



His goal was to be able move it in one piece.  As he explained, the inner structure was the most important and took 6 months just to do this part of it.  He went through several designs before settling on the final design.  The whole model took 14 months to design.  Here is a video on Youtube on this design.


LDraw Presentation
Excellent presentation on MLCad and entering the parts for the digital design.  Covered all the basics of the design entry and a few of the tricks needed.  Moved on to how to build instructions in the new Web Based Web LIC.  Even though Web LIC is still in BETA, it seems to be functional and on some level even better than the old Lego Instruction creator (LIC) stand alone program.  Finally a quick explanation on how to load a MOC into Bricklink and order the MOC and how much it will cost.

Landscaping
Jumped into the end of a landscaping presentation.  Was interesting how they build 32 x 32 plates with Oceans and rivers and can connect them in multiple variations, which allows them to change the larger layout by re-arranging the plates.  Again it was the very end, but thinking how I can do that with expanded planetary station I am working on.

Common Database Interface
This is a project to create a 3D database that all LEGO type software uses.  Then you can export this data to other formats for use in other areas, 3D printing, movies, etc.  Admirable goal and hope they get there.  It will make it much easier to design and print.

Micropolis MOCs
Interesting discussion on this standard.  The addition of the train around the peripheral is a great idea. Also shows that standards have to be detailed if they are going to be useful.

LEGO Masters Discussion
This was many of the contestants from LEGO Masters TV show talking about what happened.  They could not go into all of the details of the show, but the stories they did tell were quite entertaining.

Aliens and Apes
This was a Space MOC presentation.  The first MOC was Alien  vs Predator MOC using brick separators.  The  second was 6 foot+ Saturn V with King Kong attached.  The helix staircase to form the body of the rocket was a great


Friday, July 10, 2020

Bricks by the Bay 2020 - FRIDAY


virtual vision.jpg


Today was the first day.  Some admin discussions and reminders of what is on the schedule for tomorrow.  Only two items were on the schedule today, Meet and Greet and a presentation on the state of BrickLink's Studio software by someone on the BrickLink team.

The presentation on the Studio software was very informative.  They have some very interesting features compared with LDraw, which is the software I have experience with.  Plus he showed some features they are working on.  The most interesting was the illuminated feature. You can choose the illumination and the color and once the model is rendered, this shows up.  In the presentation, he had built a small SUV.  Once rendered, the headlights were on as were the taillights.  This is something I will need to check out.

The remainder of the night was a virtual meet and greet.  Tomorrow starts at 10AM and is a long day.  There are multiple presentations I want to attend, so there will be more tomorrow.



Brick Buddy 2 Serial Port Integration

As I stated in this post, the serial port integration turned out to be a little harder than I had hoped.  Brick Buddy 2 uses two serial  ports (USART in PIC32 terminology).  USART #2 is setup as the console port.  This is only to be used during code development and has limited value in the final product. USART #1 is used as the interface to the Bluetooth Module.  This interface is critical to the operation of the Brick Buddy 2.

The system console port is setup as basically described in this document.  The USART is setup as a static driver that is blocking.  This is the simplest setup possible and thus has the fewest dependencies.  At this point this implementation has been integrated for a while.  Changing it now would require a lot of changes I am not interested in attempting.

The BT Module serial interface needs to be very responsive. In the original Brick Buddy (PIC18F implementation), this was an interrupt driven process on the Rx side and a blocking function on the Tx side.  The Tx was limited to 4 bytes at a time, though. This USART will also be a static implementation, interrupt driven with call backs.  This will allow for Tx and Rx buffers to be used to move the data in and out of the BT Module.  Of the three transfer models described here, the byte-by-byte model seemed the best to use.

I created a new project and implemented the System Console and the System Debug services.  Then tested the firmware to make sure it was working.  Then I created a second project that implemented the BT Module USART.  Currently I have no way to test this, so compilation was the only test.  Then I started to merge the second project into the first project, doing a manual code merge and incrementally testing to verify that the console port was still working.

The first attempt failed miserably. Harmony would not let me change the  USART index to 1 in a single USART project.  Thus after creation, I had to go through the code manually and change all the references from 0 to 1.  Not all references were the same, so a global find and replace wouldn't work and I missed a few, in files drv_usart_mapping.c, drv_usart_static.c and drv_usart_static_byte_model.c.

Then there were single case switch statements that had been created by the first project for the console.  They had to be expanded to include the BT USART.  While 80% were just cut and paste, some of them were different from the console implementation.  This is where attention to detail is important. Some of these functions might not be called until much later and remembering what I did today, then, will be very problematic. 

Next step is to test this whole integration.  One way is to install the BT module.  The other is to connect the BT module development board I have.  Need to think this over some and see what will get me through the verification the fastest.




Thursday, July 9, 2020

Bricks by the Bay 2020


virtual vision.jpg

Tomorrow Bricks by the Bay starts.  It is all virtual.  This might be an interesting concept even for future in person conventions.  I am looking forward to this as a change of pace from working with the Harmony framework.

So what looks interesting from my viewpoint. 
  1. Well obviously I will want to browse the MOCs.  I would have very much liked to have done something new as indicated earlier.  But time has not been n my side.  I hope by next year I will have at least started the Planetary Station upgrade, using the new Brick Buddy 2.
  2. 12 Noon  Micropolis
  3. 2PM The LDraw session is also somethng I want to attend.  I have used this in the past and it is a very useful tool for creating MOCs and most definitely for documenting a MOC.
  4. 3PM Catcus Brick
  5. 5PM I will be very interested to listen to the LEGO Masters TV show discussion with Richard and Flynn.
  6. 6PM Alternate slopes workshop
  7. LEGO 3D database
@bricksbythebay