Blog

Why change the old logo?

During the year it have become apparent that a new company logo was needed. The reason for this has been that the we didn’t really have a unified agreement over exactly what logo to use. Different versions of the old logo or just the company name appears here and there which in the end becomes very fragmented to say the least. So instead of just deciding on what version to use we took the opportunity to start fresh and create a new Bitcraze logo.

 

What is a logo?

Even though a logo can come in all colors and shapes or maybe just being a font or the company initials, it is important to understand that it is only one part of the company brand puzzle. The logo isn’t made to increase sales, win design awards or to get more customers, it is solely an identifier. Of course a nice side-effect could be increased sales but the purpose when creating a new logo should be to reflect the brand not to increase business. In stating that a logo is just an identifier doesn’t mean that it is unimportant or pointless to put any thought into the design process, on the contrary the branding of a company together with things like having clear company values are part of the core communication with the outside world. 

 

What to consider

Creating a logo is a tricky task, the alternatives are literally infinite and the final decision of the new logo had to be something everybody in the team agrees and fell comfortable with. There is some basic consideration however that has been part of the discussion from the initial meeting. During the research phase I learned a few ground rules, I’m not sure they tell the whole story and there is certainly more considerations and angles to what makes a good logo, but I think in general they have worked as good guidance along the way. To illustrate these guidelines better I have used some examples from different more or less famous companies:

 

Simplicity:

Keeping it simple has been a key aspect in the process of creating a new logo. Above is a great example of how to use a simple shape in combination with a distinct color and a specific typeface to create a logo.

 

Not just a cool shape but has meaning:

 

Besides a very clever way to incorporate a symbol in the company name the shape of an arrow (between the “E” and the “x”) also tells something about the company, that FedEx is on the “move”.

 

Works everywhere:

Phones, tablets, smartwatches or t-shirts it doesn’t matter the logo should be made so that it works anywhere. This often means that the logo can’t have to many details or be to complex.

 

 Timeless:

If you are looking at creating a logo that last over time, it is important to design something that is independent of trends or a specific event. It all comes down to the context of why you are making the logo.

 

Not cliché

Just because you are selling coffee doesn’t mean that your logo should be a coffee cup, look at Starbucks they have a mermaid/siren as a logo. Using something that isn’t obvious can create interest and recognizability since it stands out among others.

 

Memorable:

There is two ways for a logo to be memorable, it can either be very simple and easy to remember or it can be engaging by making an impression of some sort.

 

One strong feature

Sticking to one strong feature keeps a logo clear and distinct. This has been a very important guideline during the process of making a new logo for Bitcraze, only keeping to one idea. 

 

The design process

The design process have consisted of recurring workshops and iterations where different alternatives and suggestions have been weighed against each other. A great design tool during this time has been Mood boards, visually illustrating an idea using collages is a very effective way to explain the background or inspiration to a design concept. Without going to much into detail about the whole process here is the Mood board that later evolved into the final design.

 

 

 

 

Final design

So here it is the new logo :-).

The inspiration, as you can see comes from the vias on a PCB. The core concept here is the love for development and being a hardware company making bleeding edge technology. An obvious choice would have been making something connected to flying and drones but since Bitcraze is more then just a drone company we chose another path.

We did however keep “Quantico”, the techy looking font that we have been using as it creates a nice contrast to the new logo. We have also been discussing different ideas of how to incorporate the logo onto our PCB:s, it would be kind of cool to have an actual via going through the logo right :-)?

It feels super exciting and a bit relieving that we managed to boil it down to a final design that we really like, and we hope that our community will like it as well.

So please write a comment and tell us what you think!

 

 

 

So you have opened your Christmas present and found your long wished-for Crazyflie. Congratulations! Or maybe you have had your Crazyflie for a while and want to play with it during the holidays? In this blog post we will give you some pointers on where to find information and inspiration.

 

Getting started

You can find all our getting started guides in the “Tutorials” menu on www.bitcraze.io. Take a look at “Getting started with the Crazyflie 2.0” to see how to assemble the kit and take off for your first flight. If you have an expansion deck you will also find a guide for how to install it.

Development

When you are comfortable flying the Crazyflie you might feel that it is time for the next step, to make use of the flexibility of the platform. After all it is designed to be modified!

Check out the “Getting started with development” tutorial to set up your development environment, build your first custom firmware and download it to the copter.

Maybe you want to add a sensor or some other hardware? Heat up your soldering iron and dive in to it! Find more information about the expansion bus on the wiki. The wiki is the place to look for all product and project documentation.

All source code is hosted on github.com/bitcraze and this is also where you will find documentation related to each repository. 

Projects

Looking for inspiration for a project? Take a look at hackster.io or read our blog postsThe video gallery contains some really cool stuff as well as our You Tube channel.

Contribute!

Open source is about sharing, creating something awesome together and contribute to the greater good! Whenever you do something that you think someone else could benefit from, please contribute it! If you were curious or confused about something, someone else probably will too. Help them by sharing your thoughts, insights and discoveries.

Why not

Need help?

Can not find the solution to a problem? Don’t understand how or what to do? Have you read all documentation and are still confused? Don’t worry, head over to the forum and check if someone else had the same problem. If not, ask a new question on the forum and get help from the community.

Happy hacking!

This year we decided to do a short Merry Christmas video. The video was done during one chaotic evening last week were both time and technology seemed to be against us. We are anyway happy with the result which we hope will spread some Christmas joy!
 

 
PS. All flights, except the first take-off, where autonomous using the loco positioning system. Code and documentation to come later ;-). DS

Merry Christmas from all of Bitcraze!

At FOSDEM 2016 we met someone from Bosch Sensortec, he was very interested by the Crazyflie and got one. Apparently his college liked the Crazyflie too because soon later we where contacted by Bosch that wanted to make a deck for the Crazyflie containing a brunch of there sensor. We have been tweeting about this board before and now we just pushed the drivers for some of the sensors into the Crazyflie main branch.

The deck has an impressive list of sensor onboard:

  • BMI055: 6 Axis gyro and accelerometer, with closed loop technology gyroscope
  • BMI160: 6 Axis gyro and accelerometer
  • BMM150: 3 Axis magnetometer
  • BMP285: Pressure sensor
  • BME680: Environmental sensor (air, pressure, humidity, temperature).

Thats a lot of data, and there is also an non-populated footprint for a BMF055 which is a BMI055 and an Atmel ARM Cortex-M0 in the same package, this is something that could be very interesting to play with in the future. The drivers and the integration are still in early stage but what has been pushed so far is support for the BMI055 and BMI160. We look forward to tuning those sensors and testing the others as well!

Bosch has made most of the work with this deck them selves and we have provided mainly guidance and support, a big benefit of open source! That has been working great and it has been very fun working with them. We are not sure if this is going to be part of a product yet, as in releasing a deck full of sensors. Please tell us what you think and if anyone would have use for such deck.

Most of the time we have a few prototypes lying around that we’re working more or less on. Sometimes some of these make it into a product if we feel that they might be useful or fun for the community, like for instance the SD-card. Now it’s time for another prototype to be moved to manufacturing, a deck with VL53L0x laser ToF distance sensor.

On the Crazyflie 2.0 (and Crazyflie 1.0 10-DOF) we have a pressure sensor mounted to help control the altitude of the platform. Since air pressure is moving around a lot and the measurement is noisy it’s been very hard to get a rock-solid altitude hold working (although it’s getting closer). Already back when ST released the VL6180X we were looking at it, but the range was too short (10cm max). So when ST released the VL53L0x which has longer range (200cm max) we though this might be a good deck for the Crazyflie 2.0.

So we have a working prototype and thanks to stephanbro and Marcus Grieff we also have the firmware to use it with the Kalman filter. We are currently working at making it work together with the pressure sensor with the current altitude-hold mode.

Currently we’re working on verifying the hardware to make sure the power supply is good enough for it, but then the next step is production. Hopefully it will be available in a couple of months :-) Below is a picture of the current prototype.

VL53

Last week we reached a milestone for our Loco Positioning System: we got 5 Crazyflie 2.0 to fly in a swarm with Time Difference of Arrival measurements. This is a great step closer to making the LPS leave the early-access state.

Until now, positioning has been done using a method called Two Way Ranging (TWR). The advantage of TWR ranging is that it allows us to easily get ranges to the anchors by actively pinging them in sequence. Based on these ranges we can then calculate the current Crazyflie position and control the Crazyflie to move to a wanted position. The big drawback though is that since each Crazyflie has to actively transmit packets to ping anchors, flying many Crazyflie means sharing the air and so the more we want to fly the less ranging each Crazyflie can do. In other words: it does not scale.

TDoA measurement consist of measuring the difference of flight time between packets coming from different anchors and this is harder to achieve since the anchor clocks must be synchronized to each other. The killer feature of TDoA is that it can be implemented using unidirectional packet sent from the anchor system and received by the tag/Crazyflie. It means that as soon as you get one Crazyflie flying with TDoA, you can get as many as you want since the Crazyflies do not have to transmit anything.

This is what happened last week: on Thursday evening we got 1 Crazyflie to fly with TDoA measurements. On Friday we tried 3 and then 5 without much effort. It was just matter of modifying the ROS launchfile to connect more crazyflies, a copy-paste operation.

Then

There still seems to be a margin for progression to get even more stable flight with TDoA and we are also working on making the LPS and Swarm work with our Python client which will make it easier to use outside a robotic lab.

If you want to try the (very experimental!) TDoA mode with your loco positioning system we have documented how to get it to work on the wiki.

Thanks a lot to the growing community that is supporting us and allow us to move faster towards a Crazyflie swarm.

Last week was interrupted, disrupted and generally chopped up as a few of us had to stay home fighting germs and viruses. Today all of us were present again and hopefully we will all be well this week to participate in the fun. Even though last week will not make it to the hall of fame when it comes to productivity we still made some progress.

TDoA mode of the Loco Positioning system

We are happy to announce that we have calculated the first TDoA (Time Difference of Arrival) based position in the Crazyflie. This might not sound very spectacular but it is one step closer to being able to position an infinite (in theory) number of Crazyflies simultaneously. We used test driven development (TDD) to implement the functionality and we think it helped us to manage the complexity and write better code. We have written a few unit tests earlier, but this is our first serious attempt at test driven pair programming. We have based the unit tests on Unity and mocking on CMock from Throw The Switch.  The result of our efforts can be seen in lpsTdoaTag.c and TestLpsTdoaTag.c.

New Logo

We have used a few different variations of logos up to now, the historical logo was good for electronic boards (PCBs) but hard to make look good in other contexts like the webpage and so we ended up in a situation where we do not have a consistent logo for everything. We have decided that we probably should try to find one that we all like and want to use everywhere. Björn has made a bunch of different designs that we all have discussed together and after a few iterations we are converging towards something really good. We will not show any previews, just stay tuned to see the final result.

bitcraze_logo_white_back_sq_spaced_1400x1400

The logo currently used on Bitcraze PCBs

Marcus Greiff

We want to welcome Marcus to the team, he will work with algorithms one day a week. Marcus is currently studying at LTH where he has been using the Crazyflie 2.0 platform in his studies.

SD-card expansion deck in production

Production materials for the SD-card expansion deck has been sent to the factory. Hopefully it will be available in the shop in a few weeks time.

We attended Øredev last week and showed off our demo with an autonomous Crazyflie with a light and sound show. It was the same demo as we had in Maker Faire Berlin earlier this autumn that we wrote about last week. It is noticeable how much better the system has become since Maker Faire Berlin when it comes to performance, the Crazyflie is almost completely static when hovering in one spot now and the motions are much more snappy and exact. Hats off to the community that contributed the improvements!

 

At Øredev we met Ray Arkaei, the DJ that played at the party in the evening. When he realized that we used MIDI to control the position of the Crazyflie and the color of the LED-ring, he immediately offered to create his own sequence to a bit more contemporary music. This is what we love with events like Øredev, we meet people and exciting (and unexpected) events take place! He plugged in his machines and we set the goal of making a short sequence, film it and upload it to facebook. After just 10-20 minutes of experimenting (and recap from our side of how we had implemented the demo) Ray got going and soon he had had a pretty cool sequence going!

 

We shot this video with a phone

 

Ray Arkaei
Arkaei shot the sequence with his 4K camera (yes, we would love to have one too!) but unfortunately did not have time finish the editing. We are eagerly awaiting the final results and will publish a link here on the blog when it is live!

Thanks to Ray and Øredev for a memorable day!

Bitcraze forum

We have been discussing the information architecture on the Bitcraze forum after getting some really good feedback from Fred (derf) one of our forum members. Before starting to make changes to the forum we thought it would be a good idea to take the opportunity and ask all of our forum members for feedback about how the forum is structured. The forum should be easy to navigate and comprehensible for both new and old members so feedback from people actually using our forum is very valuable. So if you have any suggestions post a comment to this post or send us an email.

Öredev

Also this week on Thursday 10/11-16 we are going to the developer conference Öredev that is taking place here in Malmö. We are exhibiting the same demo as we did at Maker Faire Berlin so if you are going to the conference expect to see an autonomously flying Crazyflie 2.0 enabled by our Loco positioning system (code and doc for demo published here). We are there the whole day so come by and have a chat :-).

infographics-oredev

New Crazyflie 2.0 firmware release

We released a maintenance release of the Crazyflie 2.0 firmware last week. The new release improves the stand-by time for the Crazyflie 2.0 and doesn’t effect the Crazyflie 1.0. The release can be found here.

Progress on TDoA for Loco positioning

We’ve started working towards positioning using TDoA and last week we pushed updates to both the Loco positioning node and to the Crazyflie 2.0 firmware. The changes are still largely untested but we’ll be continuing the work during this week. We’re really excited about the possibilities this brings, virtually unlimited number of Crazyflie 2.0s being positioned at the same time!

Loco positioning system is still in Early access which means that things are moving fast. Since the release of the loco positioning system a Kalman filter has been contributed by Mike Hammer at ETH Zurich. The Kalman filter allows to calculate the position estimate in the Crazyflie and merges the Loco positioning system information with internal sensor to generate a much better estimate. We also worked on improving the anchor firmware, it is now ranging faster and we fixed a bug that was making the anchor hang sometime. Finally stephanbro on github pushed an improved position controller that improved the stability of flight a lot.

Because of all these changes we have decided to make a new video and to rewrite the documentation on the wiki a bit. Enjoy!


On the development side, we have extended the Loco Positioning system to position 2 concurrent Tags by using TDMA (Time Division Multiple Access) where each Tag is allocated a time slot to use to range to the anchors.

2crazyflies

This works fine for a few Tags, but does not scale very well for a larger numbers of tags. If you want to experiment by yourself there is some instruction in the git commit. Be aware that this is still experimental enough for us to break it without warning so keep track of the git commits when you pull the latest version of the firmware. Currently we are working on a TDoA (Time Difference Of Arrival) mode that will scale to concurrently position virtually an infinite number of tags, hopefully you will soon be able to see commits on that on our Github projects.