Planet Open Fonts

CraftingType workshopsCrafting Type Returns To Chicago in January

Thomas and Aoife are returning to Chicago to offer another 3 day intensive type design introduction workshop at the excellent Harrington College of Design, perfectly located downtown.

January 30 - February 1

Sign up today!

Ben MartinTerry: Updated Top Shelf

The Kinect is now connected much closer to the tilt axis, giving a much better torque to hold ratio from the servo gearbox. I used some self tapping screws to attach the channel to the bottom of the Kinect. Probably not the cleanest solution but it appears to mount solidly and then you get to bolt that channel to the rest of the assembly. For a closer look the Logitech 1080 webcam is mounted offset from the Kinect. This should give an enjoyable time using the 1080 RGB data and combining the VGA depth mask from the Kinect into a point cloud.

The camera pan/tilt is now at the front of the top shelf and a robot arm is mounted at the back of the shelf. The temptation is high to move the arm onto a platform that is mounted using threaded rod to the back of Terry. All sorts of fun and games to be had with automated "pick up" and move tasks! Also handy for some folks who no longer enjoy having to pick items up from the ground. The camera pan/tilt can rotate around to see first hand what the arm is doing, so to speak.

The wheel assembly is one area that I'm fairly happy with. The yumo rotary encoder runs 1024 P/R and it is attached using an 8:1 down ratio to give an effective "ideal world" 13 bit precision. Yes, there are HAL effect ICs that give better precision, though they don't look as cool ;) The shaft of the motor is the axle for the wheel. It is handy that the shaft is not right in the centre of the motor because you can rotate the motor to move the wheel through an arc, and thus adjust the large alloy gear until it nicely mates with the brass gear on the rotary encoder.

Lower down near the wheels is a second distance sensor which is good for up to around 80cm distance. The scan rate is much slower than the Kinect however.

Things are getting very interesting now. A BeagleBone Black, many Atmel 328s on board, and an Intel j1900 motherboard to run the SLAM software.

Pravin SatputeNext improved release of Lohit Devanagari 2.95.0 with Latin and ttfautohinted.

    Last release of Lohit Devanagari we did in Feb 19, 2014. During the time number of improvements happened in Lohit Devanagari. Today releasing its next version with all the improvements. [1]

    Following are the improvements:
    1. Added Latin from
            Yes, This happened :)
            I would like to thanks Dave for this, who helped to get Latin for Devanagari done from  Eduardo Rodriguez Tunni. Now one will not feel major difference while rendering of Lohit Devanagari text with Latin since Lohit has Latin coverage itself.

    2. One of the requirement of ttfautohint is to have Latin support in fonts. (AFAIK) Due to this we were not using ttfautohint for building Lohit Devanagari. Now since we have Latin in Lohit Devanagari, we have started building ttf with ttfautohint. It means Lohit Devanagari now requires ttfautohint as a build requirement.

    2. We started compiling feature file with Adobe font development kit. (AFDKO).
            As announced earlier as well.
            Feature file of Lohit Devanagari was not compiling in OTM. [2] Root cause of problem was fontforge is bit relax while validating feature file. Had good discussion with Dave and Frank on this and finally we decided to compile feature file with AFDKO. [3]

            This also helped us to further identified issues in feature file and we fixed those issues in feature file.

    3. Updated sfd file with resolved issues regarding Marathi locale (issue id on github: #46,#47)
            These were local related issues not tested well earlier.

    4. Improved Vedic accent positioning issues. Resolves issue #

    5. Added new characters uni1cf5 and uni1cf6

    Looking forward for Dave's more support to add Latin in all Lohit script fonts. Enjoy improved version of Lohit Devanagari.  Please report if any issues at github [4]. I have updated [5] page with download details

    I want to verify Lohit Devanagari with Hindi script gramme [6] and make sure it follows all rules. Soon i am going to ping some linguist who can help into this.

Pravin Satpute

Pravin SatputeFUELGILT 2014 conference and my activities

Last weekend i was fully involved in fuel conference. Lots of things i can share about the conference. Let me first start with my role in it.

1.  Representing Fedora @ conference.
2. My talk about "Why Globalization? world wide picture"
3. Celebrating 10 yrs of Lohit project and workshop on Lohit2.

1. Represented Fedora @ conference.

    We started planning for this event with Fedora Ambassador group well 2 months in advance and designed T-shirts for branding Fedora as a best platform for Language computing. This T-shirt was distributed to all active contributors to promote message Fedora perfect from language computing perspective. Most of them were available in conference wearing this T-shirt, it truly made people aware regarding yes Fedora takes care for language computing aspects and proud for same.

    I met number of people in conference and talked on how can Fedora help them. Specifically mentioned language team is very active in Fedora, most of the innovations happened first in Fedora including IBus, Harfbuzz and Updates regarding Fonts also gets in quickly in Fedora. Fedora i18n team weekly meets AT #fedora-meeting on Tuesday  06:00:00 to 07:00:00 UTC and discuss open issues.

    Analysed issues mentioned by ShivaKumar K.M  regarding corpus processing and requested Biraj Karmakar  to test Fedora 21 for Bengali and provide some report.

    Parag given talk on "How to create hunspell dictionary on Fedora". It was very well attended talk from audience. They learned practically on how to make hunspell dictionary from simple word-list and see it working. It increased there interest on hunspell dictionary. I talked with Omshivaprakash and he suggested it is possible to get some online tool for maintaining hunspell. This is the same thought we were thinking from last couple of months also discussed same with Libreoffice Caolan. Already some work has been done and soon will publish same.

    Parag also demonstrated wordxtr package avaialable in Fedora. He demonstrated it with html page and shown how quickly one can extract words with it.

    Wanted to distribute some Fedora stickers but somehow missed to collect some from Siddhesh before he moves to Phnom Penh, Cambodia for FAD.

    Discussed with Arky about how much language support Firefox OS does has and they also facing same issues which we were face some years back. In Fedora now we have nicely written criteria for language support. I mentioned him, link is here :)

    Event page for FUELGILT 2014 conference

    Overall i am happy with the presence of the Fedora in this conference. Will improve it further in upcoming conference around Language Technology.

    I would like to thanks here Rajesh, Chandrakant and Ankit for supporting activities around Fedora in this conference.

2. My talk about "Why Globalization? world wide picture"

    This was the first talk on second day. We got pleasing but unexpected rain that day. It delayed most of things. Since i was the first speaker most of the arrangements for speakers happened that time. Started talk around 10:15am.

    Its tricky subject to present. In this talk i targeted the users. Mentioned the importance of supporting not only major language of world but also as much as possible on platform. How it is important to preserve first languages of people. I have mentioned couple of important research that has been done to showcase how persons first language is very important. Also how first language can help for effective branding of products.

    Slides are available At slideshare Soon we will have youtube video for my talk.
3. Celebrating Lohit 10 yrs of Lohit project and workshop on Lohit2.

    This is moment i was waiting for long time. Though number of plans were there. We decided we will celebrate with cake in conference like FULEGILT where number of open source contributors and users get together.

    Cake arrived on time and we just thought lets start workshop by cutting it.
    Audience suggested Shilpa (present actively working on lohit2), Rahul Bhalerao (past maintainer of Lohit) and me to cut cake together.

    Later we had small presentation on Lohit 10 years. In this presentation Shilpa explained why Lohit project is important, What are the achievement of Lohit project in 10 years and what is plan for future through lohit2 project.

    Already big blog, will write one more to mention things happened in conference. Photo credits to Krishnababu and Bhushan :)

Pravin SatputeCelebrating 10 years of Lohit fonts project

   I am sure in open source it is rare to find people who are not aware of Lohit fonts [1] or not used it over the years. It is default fonts for number of Indian language in Most of the open source distribution including Fedora, Debian. It was used in early version of Android for Indian languages. It is used in Wikipedia as a Web fonts. Recently Unicode started using it for building Tamil code charts.     When talking these are the just few achievement of Lohit project during the time and list is much longer.

Image created by Shilpa
       Numbers of developers from different communities has contributed to Lohit to make it successful project. Of course one cant forget the contribution from Red Hat by continuously supporting it and making sure the open source project will get industry standard open source Indic font.

    Lohit project completing its 10 years this Nov 2014. Luckily the fuelgilt conference 2014 is happening during the same time. We thought its good time to celebrate the 10 years of Lohit in FUEL GILT Conference - the largest event of FOSS language technology.

    Our workshop in Lohit fonts is accepted by conference and it is going to happen tomorrow AT 12:30pm fuelgilt conference, Pune India . [2] If you are around do come to celebrate this success. We are going to talk how Lohit project started, how it remain active during the tough times of non-standardize open type layout shapers. What is stands presently and how Lohit2 project going to make Lohit project as one of the standard reference platform for upcoming fonts developments for Indian language.


CraftingType workshopsGaslight - Webfont & Desktop font « MyFonts

Gaslight - Webfont & Desktop font « MyFonts:

A participant in Crafting Type Seattle last year has just release Gaslight, a new type family:

(Via twitter)

CraftingType workshopsQuotes on Type Design

CraftingType workshopsVideo

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="299" src="" width="400"></iframe>

CraftingType workshopsSpecimens of Chromatic Wood Type and Borders (1874)

CraftingType workshopsVideo

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="225" src="" width="400"></iframe>

Ben MartinTerry 2.0 includes ROS!

What started as a little tinker around the edges has resulted in many parts of Terry being updated. The Intel j1900 motherboard is now mounted in the middle of the largest square structure, and SSD is mounted (the OCZ black drive at the bottom), yet another battery is mounted which is a large external laptop supply, the Kinect is now mounted on the pan and tilt mechanism along with the 1080p webcam that was previously there. The BeagleBone Black is moved to its own piece of channel and a breadboard is sunk into the main 2nd top level channel.

I haven't cabled up the j1900 yet. On the SSD is Ubuntu and ROS including a working DSLAM (strangely some fun and games getting that to compile and then to not segv right away).

I used 3 Actobotics Beams, one IIRC is a 7.7 incher and two shorter ones. The long beam actually lines on for the right side of the motherboard that you see in the image. The beam is attached with nylon bolts and has a 6.6mm standoff between the motherboard and the beam to avoid any undesired electrical shorts. With the two shorter beams on the left side of the motherboard it is rather securely attached to Terry now. The little channel you see on the right side up a little from the bottom is there for the 7.7 inch beam to attach to (behind the motherboard) and there is a shorter beam on this side to secure the floating end of the channel to the base channel.

The alloy structure at the top of the pan and tilt now has a Kinect attached. I used a wall mount plastic adaptor which with great luck and convenience the nut traps lined up to the actobotics holes. I have offset the channel like you see so that the center of gravity is closer to directly above the pan and tilt. Perhaps I will have to add some springs to help the tilt servo when it moves the Kinect back too far from the centre point. I am also considering a counter balance weight below the tilt which would also work to try to stabilize the Kinect at the position shown.

I was originally planning to put some gripper on the front of Terry. But now I'm thinking about using the relatively clean back channel to attach a threaded rod and stepper motor so that the gripper can have access to the ground and also table top. Obviously the cameras would have to rotate 180 degrees to be able to see what the gripper was up to. Also for floor pickups the tilt might have to be able to handle a reasonable downward "look" without being too hard on the servo.

There were also some other tweaks. A 6 volt regulator is now inlined into a servo extension cable and the regulator is itself bolted to some of the channel. Nice cooling, and it means that the other end of that servo extension can take something like 7-15v and it will give the servo the 6v it wants. That is actually using the same battery pack as the drive wheels (8xAA).

One thing that might be handy for others who find this post, the BeagleBone Black Case from sparkfun attaches to Actobotics channel fairly easily. I used two cheesehead m3 nylocks and had to force them into the enclosure. The nylocks lined up to the Actobotics channel and so the attachment was very simple. You'll want a "3 big hole" or more bit of channel to attach the enclosure to. I attached it to a 3 bit holer and then attaced that channel to the top of Terry with a few threaded standoffs. Simplifies attach and remove should that ever be desired.

I know I need slip rings for the two USB cameras up top. And for the tilt servo as well. I can't use a USB hub up top because both the USB devices can fairly well saturate a USB 2.0 bus. I use the hardware encoded mjpeg from the webcam which helps bandwidth, but I'm going to give an entire USB 2.0 bus to the Kinect.

OSP (Open Source Publishing)Hachures Tournures Balsamine Print Party

We’re happy to be having the next Print Party in the familiar Balsamine Foyer for the second year in a row! This year as part of a new seasonal program, but also smaller parallel program «Nos Petites Madeleines» and along with the 15 day long Quizaine Numérique we’re going to be presenting Hachures Tourneurs. Following […]

Pravin SatputeNext week Diwali festival in India

Its Diwali festival next week in India.

If you feel you are not getting reply for emails from someone from India or not update on bugzilla from package maintainer just be patient. Its diwali time :)

If one dont know regarding festival read AT

Most of the offices used to have back-to-back holidays during this.

I will be working till Monday 20th and then will be away for a week.

Ben MartinSliding around... spinning around.

The wiring and electronics for the new omniwheel robot are coming together nicely. Having wired this up using 4 individual stepper controllers, one sees the value in commissioning a custom base board for the stepper drivers to plug into. I still have to connect an IMU to the beast, so precision strafing will (hopefully) be obtainable. The sparkfun mecanum video has the more traditional two wheels each side design, but does wobble a bit when strafing.

Apart from the current requirements the new robot is also really heavy, probably heavier than Terry. I'm still working out what battery to use to meet the high current needs of four reasonable steppers on the move.

Pravin SatputeFedora 21 Beta freeze today !!

Fedora 21 Beta freeze today, so if any build pending from you do build it quickly. Not only that ping and ask for quick testing and karma.

I done with 3 important build yesterday from my side.

1. Lohit Assamese: Default font for Assamese language. Pushed latest upsteam release.
2. Lohit Bengali: Default font for Bengali language. Pushed latest upstream release.
3. Lohit Tamil: Default font for Tamil fonts. Pushed latest upstream release.

Pending stuff from me is liberation fonts. I have fixed number of Fedora bugs in ustream and release is pending from me. Once i will do with upstream release will build it first for rawhide and then for Fedora 21.

Pravin SatputeRelease of Lohit Assamese 2.91.0 just after Lohit Bengali 2.91.0

Very natural move. Assamese and Bengali fonts are not much different just 09F0 (ৰ) &  09F1 (ৱ) are extra in Assamese.

Frankly there is no need to create different fonts for these languages. Since we can have OT rules written for 09F0 (ৰ) &  09F1 in same fonts. Bengali user never type these characters and when assamese user will type these character he can get expected rendering.

But Assamese and Bengali communities has strong opinion regarding font  names. Why should Assamese user use Bengali language fonts?

Even recently Assamese communities convinced Unicode to have "Assamese and Bengali" name to Unicode chart rather than only Bengali. There point was there is nothing like Bengali script in Assamese. Do update if i am missing something.

Lohit project respect user communities and will keep Assamese fonts separate. I can remove characters not used in Assamese from Bengali fonts and viceversa for Bengali but its very minor and i dont want one to install other font specifically for two characters.

One more reason to do this release quickly after Lohit Bengali is to make sure we can get testing from wider community.

Other release specific detail is available lohit archive email

Pravin SatputeFedora has the latest google-noto-fonts with addition of 44 new font families

Last week i done with packaging latest upstream release of Google's ambitious project Noto fonts  (google-noto-fonts).

Last time we packaged it on Aug 2013 with 69 subpackage. With this latest package Fedora 21 has got all the improvements done in upstream over the year.

New package google-noto-fonts has 106 packages. 44 New packages over the earlier release from Google.

I am planning to write one article in FedoraMagzine for it, mentioning how tricky it was to package it for Fedora and what are benefits Fedora gets by packaging noto fonts. What are the missing things in Noto fonts. Stay tuned !!

Bodhi link here

Pravin SatputeLohit Bengali alpha version 2.91.0 is released under Lohit2 project

Was expecting to release Lohit Bengali around June 2014 but it took more time due to priorities of some other work including glibc.

Finally work with Shilpa last couple of week last week and completed this milestone. :)

Lohit Bengali 2.91.0 has number of improvements over earlier release.

TTF size is reduced from 140K to 128K (still some improvement possible by removing halant form which can easily formed by GPOS )

Standard compliance is one more thing happened with this release. Unicode, OpenType spec. If we are still missing something do point us to particular document.

Looking forward for more testing and more improvement in Bengali.

Do read lohit-devel email for more information.

OSP (Open Source Publishing)OSP @ Princesse!

Since the early days, OSP has changed form over and over, from asking simple questions right through to organizing week-long workshops to share answers its members have found. There have been a fair amount of turning points in the past, and some of the biggest ones have happened over the last few years. The Variable […]

OSP (Open Source Publishing)Visual Culture and Médor at Europe Refresh

Once again Les Halles are housing the 2014 edition of «Le salon du financement participatif» called Europe Refresh and it looks like it’s going to be a couple of exciting weekends! This year, to maximize the chances of fully funding the projects, the Salon will be set up for a weekend in Brussels then a […]

OSP (Open Source Publishing)Médor

Medor is not a dog ! It’s a trimestrial, Belgian magazine of inquiries and stories, 128 pages long. Médor contains long-term investigations, reports and portraits focused on Belgium. Médor digs the heart of issues. It inquires and it is persistent. It takes the time needed to be further, beyond appearances. It seeks to understand the […]

OSP (Open Source Publishing)étapes 220

étapes magazine issue 220 focused on Co-Working, so we were pleased to be asked for an interview for the Portrait section of the publication. In proper OSP fashion, after an initial set of questions from Caroline Bouige, the interviewer, we answered collaboratively, both to the questions and to each other. You can read the full […]

Nicolas Spalinger (advogato diary)24 Sep 2014

FontLab VI demo at AtypI2014 Barcelona: new drawing features, smarter workflows and better interop with native UFO support and fontgate cross-platform library

During AtypI2014 in Barcelona, Thomas Phinney invited some participants to a special evening presenting the upcoming FontLab VI based on the Victoria re-write and re-architecturing that has been in the works for a few years. (BTW, if you missed it, there is a public video recording from part of a similar talk/demo at AtypI2013 Amsterdam.)

These are the notes I jotted down during the demo evening:

drawing-related features:
  • on-canvas editing of multiple glyphs at the same time
  • smart multi-selection of BCPs
  • drag'n'drop and rich copy'n'paste directly on the canvas
  • dedicated sketchboard to emulate paper-sketching
  • import bitmaps assets and trace directly on canvas
  • smart zooming, scrolling and infinite canvas
  • lasso selection
  • smart guidelines and snapping
  • sliding beziers points (g2 continuity)
  • special selection to move two BCPs at the same time with automatic harmonizing (Tuni line)
  • eraser for more natural point simplification directly on canvas
  • linked clones, with each change propagating independently
  • smart anchors expressed using fractional coordinates with keywords and autosuggested formulas for transforms and boolean operations
  • glue tool to copy only a portion of an outline and a few BCPs
  • in-place measuring tool
  • preview waterfall panel

workflow-related features:
  • context-sensitive side panels to declutter the interface (TAB key hides them quickly)
  • font comparison tool with multiple layers
  • zip file containing assets and font sources can be imported directly
  • easier navigation of character groups and unicode blocks
  • bookmark and history panel as you navigate into your existing and desired blocks
  • in-place OpenType feature editing with an advanced source code widget
  • support for multiple monitors
  • exporting your workspace to PDF and SVG
  • Harfbuzz integration for high-end realistic rendering of OpenType features
  • ClearType integration for realistic rendering (no need to export to Windows for testing)
  • git integration with commands in a dedicated menu with the goal of enabling better tracking of changes with visual diffing

interoperability-related features:
  • native support of UFO2 and UFO3, both for import and export
  • improved python APIs, compatible with robofab
  • full exposing of the APIs via QT UI designer

Soooo, plenty of great new features both in the UI, around the new workflows and in the internal engine but still no release schedule. The private beta program has yet to start. They kept talking of a codebase in alpha stage. Maybe a public beta program will happen as well...

Being made with QT, cross platform porting is now much easier. FontLab is being developed on OSX and tested there primarily but the codebase for the Windows version is only 3% different. The main developer said that a Linux version is doable but there is no definite plan or decision made in that area yet. Until other more open editors catch up, FontLab is still the (albeit proprietary) industry heavyweight. Many people are looking forward to the new features... if they haven't switched yet that is.

Glyphs is the editor most people start with nowadays - including at the MATD in Reading and it's getting glowing reviews and wider support from various parts of the typeface design community. FontLab should be seeing the glyphs on the wall (!) and hurrying up the release. The announcements will probably appear on the forum and the blog.

I've been promised a Debian/Ubuntu version of fontgate for testing server-side interop between font formats, testing, generation with python bindings. This would be fantastic for bridging FontLab with newer, more collaborative workflows and other tools in the OFDK and would increase value in FontLab's UI features. Wait and see...

Nicolas Spalinger (advogato diary)23 Sep 2014

AFDKO progress

It's good to see that the recently re-released AFDKO is starting to get some attention and (small) things are starting to get merged back in.

There is packaging work underway by ChangZhuo Chen (陳昌倬) from the Debian pkg-fonts team.

There are still various issues to deal with for this codebase to be brought in line with Debian policies, but I was able to successfully rebuild Adobe Source Serif and Adobe Source Sans on Ubuntu 14.04.

This means we are now closer to the long-term goal of a containerized, autobuildable, open-standards-based crossplatform buildpath for complex fonts. New development and testing workflows will be much easier to integrate, so that's good news for everyone :-)

Nicolas Spalinger (advogato diary)23 Sep 2014

Open and collaborative font design in a web fonts world: AtypI2013 Amsterdam presentation and panel on open fonts by Victor Gaultney and font industry representatives

Even if you didn't attend the AtypI2013 conference in Amsterdam, you can now watch the video recording of "Open and collaborative font design in a web fonts world" a presentation Victor Gaultney followed by a discussion panel with various key font industry representatives.

Thanks to the video team for their efforts in making more of these AtypI presentations publicly available!

The League of Movable TypeWe’re super excited to introduce a new member to our...

We’re super excited to introduce a new member to our catalogue – League Spartan. We’ve been working on this one a while, and we’re starting out by releasing a single, bold weight. It’s a beautiful, modern geometric sans-serif, and we’ve actually been secretly using it on our own site for the last few months. It’s superb. You’ll love it.

CraftingType workshopsCrafting Type: Madrid 2014 for ONLY €160. 11/7-8-9

Crafting Type: Madrid 2014 for ONLY €160. 11/7-8-9:

TypeMad is an upcoming festival of typography in Madrid: Conferencias, exposiciones y talleres sobre tipografía, caligrafía, lettering y diseño tpográfico actual!

Crafting Type is participating with a workshop the weekend before the main event. The key instructor is Octavio, a Spanish type designer, and if more than 15 people to sign up then Dave Crossland will join. If more than 30 sign up, Alexei Vanyashin will bring some Russian expertise to town!

El taller será en Inglés y español.

The workshop will be in English AND Spanish.

Its our standard 3 day workshop, but we have a special offer for the festival - there is only the ‘student’ price, with an additional discount - so the total for all 3 days is only €160.

Learn more and sign up today!

Nicolas Spalinger (advogato diary)19 Sep 2014

AFDKO released under Apache2

David Lemon from Adobe has just announced during his AtypI talk that the AFDKO has now been officially re-released under the Apache2 license and pushed to this public git repo.

Thank you, Adobe!

The next step is adjusting the installation steps for Debian/Ubuntu and making it easier to integrate in existing workflows and toolkits...

Pablo ImpallariLibre Caslon Display

Libre Caslon Display

A small crop of a bigger specimen, coming soon...
Text is set at 96, 72, 60, 48 and 36.
Old school: Just typed as is. No scaling, no tracking.

Also part of a new tool that will help Type Designers choose specific words when making specimens, and to automate online specimens.

Pravin SatputeLohit Tami 2.91.0 now available for testing

Done with the release of Lohit Tamil 2.91.0 with the improvements planned under Lohit2 project.

Following are highlights:
  1. Rewritten all Open type tables with supporting taml and tml2 tags.
  2. Renamed all the glyphs by following AGL syntax.
  3. Open type tables are available in .fea file and this time it is compiled with AFDKO.
  4. Reusing glyphs by "COPY REFERENCE"
  5. Added GRID FITTING table and auto-hinting by fontforge. (Need to use ttfautohint but we need Latin support to do that)
  6. Tested with Harfbuzz NG and Uniscribe (W8)  (Need to test on WinXp yet)
  7. Auto test module available with test files. (Please help me to add more test cases.)

This release now support characters required for minority orthographies. For more details visit bugzilla

Stopped using deprecated ligature for SRII. See bugzilla for more information.

CraftingType workshopsRobothon 2015: Thursday 5 March + Friday 6 March 2015. KABK, The Hague. More info about programme and tickets will follow!"

Pravin SatputeCompiling Lohit fonts feature file with Adobe Font Development Kit

This first came to notice with issue "OTM error #13". Everything was working perfectly with fontforge, creating feature file and importing feature file back :)

But certainly above issue open up number of issues with this process. Font designers were not able to import .fea file due to this issue.

Thanks to Dave and Frank for pointing to issue and directing me towards Adobe Font Development Kit (AFDKO). Adobe is the one created specification for .fea file and provided nice tools to compile it.  Most of the information already available AT 

 This blog is specifically to update how i am using AFDKO in Lohit project.

1. Write open type tables for Lohit fonts in Fontforge.
2. Export .fea file
3. Generate .ttf by importing .fea file to it using following commands.
4. makeotf -f Lohit-Tamil.ttf -ff Lohit-Tamil.fea

It fails with error but it generates unix Type1 font required for makeotfexe.

What errors :)

  makeotf command pass following arguments to makeotfexe

  "makeotfexe "-f" "Lohit-Tamil.ttf.tmp" "-o" "Lohit-Tamil.ttf.temp_cff" -ff "Lohit-Tamil.fea" -ga -gf "Lohit-Tamil.ttf.temp.GOADB" -mf "FontMenuNameDB" -shw"

In above argument  "-ga -gf "Lohit-Tamil.ttf.temp.GOADB"  are not required but somehow automatically gets added by makeotf.

But makeotf done one good job of converting source font 'Lohit-Tamil.ttf' to temporary Unix Type1 font file 'Lohit-Tamil.ttf.tmp'

5. run makeotfexe removing problem cuasing arguments.
 makeotfexe "-f" "Lohit-Tamil.ttf.tmp" "-o" "Lohit.ttf" -ff "Lohit-Tamil.fea" -mf "FontMenuNameDB" -shw

And here get you Lohit.ttf build by adding .fea file with AFDKO.

Hope so it will help to some others as well.

I specifically found this very useful for finding issues in Lohit-Devanagari.fea files.

Jakub SteinerMaking of GNOME 3.14

The release of GNOME 3.14 is slowly approaching, so I stole some time from actual design work and created this little promo to show what goes into a release that probably isn’t immediately obvious (and a large portion of it doesn’t even make it in).

<iframe class="image full" frameborder="0" height="500" src=""> Watch on Youtube </iframe>

I’d like to thank all the usual suspects that make the wheels spinning, Matthias, Benjamin and Allan in particular. The crown goes to Lapo Calamandrei though, because the amount of work he’s done on Adwaita this cycle will really benefit us in the next couple of releases. Thanks everyone, 3.14 will be a great release*!

<footnote>* I keep saying that every release, but you simply feel it when you’re forced to log in to your “old” GNOME session rather than jhbuild.</footnote>

Pravin SatputeLohit Tamil in Unicode charts

This is news to me as well :)

 Just came to know from comment that Lohit Tamil is used in Unicode charts from 7.0 onwards.  I did quick comparison with old Tamil chart and 7.0 and yes that is Lohit !!

Kudos to Shriramana for making this happen with proposal. I remember we were talking about this last year and due to OFL license of Lohit it is easy to use it in Unicode charts without any permission.

This add more responsibility to make sure Lohit Tamil follows and keep glyphs consistent in future version. I am sure with strong community we can achieve it.

 I have been always proposing Unicode for using opensource fonts in there charts. Unicode definitely spending some money to make fonts for these charts, so why not to release these charts under opensource license?

 Presently charts only serve the purpose of reference and even after release of particular version even for single character users need to wait for other fonts to sync with latest Unicode version. If Unicode release latest version of charts with fonts as well, one can just quickly install those fonts. These fonts can be used in all OS due to liberal license, many things can happen...

  Second part that is faced specifically in complex script, is reference for rendering rules. Yeah, this can add additional overhead to Unicode but i strongly feel it can help further to have standardization in complex script rendering.

  Anyway we are already trying for this with Lohit2 project, hopefully  other script fonts project will also start this kind of initiative and in long term font designers will be free from worry of rules for complex script rendering.

  Again glad to see this is happening !!

Nicolas Spalinger (advogato diary)12 Sep 2014

Update to the OFL FAQ published: version 1.1-update4

Check out the newly updated FAQ (Frequently Asked Questions) for the Open Font License: version 1.1-update4.

It probably has many answers you're looking for on the - rather complicated and subtle - topics of using, distributing, creating and modifying open fonts.

This (small) update takes into account feedback from existing users of the license and clarifies some (small) aspects of the intent and the well-established working model.

The OFL FAQ is getting rather long but then again, it's not the easiest set of related subjects to cover... I hope this continues to be a good and useful resource for the many open font designers out there. If you haven't read it yet, now is probably a good time, otherwise search for your topic in the various sections :-)

IMHO, nobody should have to become a copyright or trademark lawyer - or pay massive legal fees - just to maximise access to some of their creation but still maintain over control the corresponding canonical version. Type designers mostly want to focus on creating and all the rest just seems like a distraction at best or a big headache at worst... but getting a better understanding of the ins and outs of the legal environment of collaborative font design and how the OFL model works practically is always helpful and should spare people some unnecessary surprises.

Pravin Satpute"Devanagari script behaviour for Hindi" standardization meeting AT Delhi on 10th Sep2014

    DIT is working on this project with CDAC and other stakeholder almost from 2+ years. I am one of the committee member of this working group and making sure it will actually benefit target audience.
We have invested earlier time on what should be the structure of this document and what things must be included in this documents.
    Also we had excellent debate with language scholars on what is valid combination in Hindi language and what is not. How particular combination should get displayed. We made one significant decision saying we will not say anything is invalid, since there is possibility of inclusion of words from other language to Hindi and end use must be able to type it.
    Number of things happened over the time from 1.3.1 version to latest 1.4.4 and finally we are very closer to have final release of this document.

    Highlights of this Draft:
    1. Target audience is ICT stakeholders.
    2. Platform owner interested in supporting particular language in his product will get complete information from locale, sorting, backspace, delete, rendering etc from single document. One can also say this document is simply including standards around Hindi language at one place. Those are Unicode, CLDR and language related standards.
    3. For Hindi draft reference is used from book "देवनागरी लिपि तथा हिंदी वर्तनी का मानकीकरण"  Central Hindi Directorate"

    Yesterday we quickly gone through draft to make sure conjuncts are represented properly in document. Hindi mostly uses half form of base characters unlike complete conjuncts get form in Marathi language.

    Draft is still open [1] for comments and feedback. Once Hindi will get finalized same process will be repeated for other language and all these Draft will get authenticated from BIS as a standards.  For other languages DIT will first prepare draft and in later stage talk with state governments for Feedback. Next one will be Marathi since most of the things are already ready for Marathi languages.

    I hope this will help to community over the time.


Ben MartinGetting a feel for Metapolator and Cascading Parameter Values

Metapolator is a new project for working on font families. It allows you to generate many fonts in a family from a few "master" cases. For example, you could have a normal font, modify it to create a rather bold version and then use metapolator to generate 10 shades on the line between normal and bold.

I have recently been reading up on metapolator and how to hack on it. So this post describes my limited understanding of what is a fairly young project. So warnings inline with that are in place; errors are my own, the code is the final arbitrator etc.

Much of the documentation of Metapolator involves the word Meta, so I'm going to drop it off this post as seeing it all the time removes its value in terms of semantic add.

At the core of all of this polating are parameters. For example, after importing a font and calling it "normal" you might assign a value of 100 to xheight. I am assuming that many of the spline points in the glyph (skeleton) can then be defined in terms of this xheight. So the top of the 'n' might be 0.95*xheight.

A system using much the same syntax as Cascading Style Sheets is available to allow parameter values to be set or updated. Because its parameters, its called CPS instead of CSS. So you might select a glyph like 'glyph#n' and then set its xheight to be 105 instead.It seems these selectors go right down to the individual point if that's interesting.

In order to understand the CPS system I decided to start modifying a basic example and trying to get specific values back out of the CPS system. The description of this is mainly to see if my playing around was somewhat along the lines of the intended use of the CPS system.

For this I use a very basic CPS

$ cat /tmp/basic.cps
* {
     label : 1234;
     xx    : 5;

glyph#y penstroke:i(0) point:i(0) {
     xx    : 6;

$ metapolator dev-playground-cps /tmp/basic.cps

The existing dev-playground-cps command makes its own fonts up so all you need is a CPS file that you want to apply to those fonts. In my case I'm using two new properties, the label and 'xx' which are of type string and number respectively.

A default value of 3 is assigned to xx for all points and each point and glyph get a unique label during setup.

I found it insightful to test the below with and without selectors that modify the 'xx' property in the CPS, and at both levels. That is, changing the xx:5 and xx:6 in the above CPS to be xxno1:5 and xxno2:6 and seeing what the below printed out. The xx.value makes the most sense to me, show me the default value (3) if nothing is set in any CPS to override it or show me what the CPS has set if it did any override for the point.

element = controller.query('master#heidi glyph#y penstroke:i(0) point:i(0)')
console.log('element:', element.particulars);
console.log('element:', element.label);
console.log('element:', element.xx);
computed = controller.getComputedStyle(element)
console.log('label: ' + computed.get('label'));
console.log('xx.base   : ' + computed.getCPSValue('xx'));
console.log('xx.updated: ' + computed.getCPS('xx'));
console.log('xx.value  : ' + (computed.getCPS('xx') ? computed.getCPS('xx') : computed.getCPSValue('xx')));

The above code is also pushed to a branch of my mp fork at cps.js#L213

I found that a little tinkering in StyleDict.js was needed to get things to operate how I'd expected which is most likely because I'm using it wrong^tm.
The main thing was changing getCPSValue to test for a local entry for a parameter before using the global default StyleDict.js#L93.

I might look at adding a way to apply a CPS to a named font and showing the resulting font as pretty json. For reference this will likely have value and valuebase showing the possibly CPS updated value and the value from the original font respectively.

Nathan WillisYour Mileage May Vary

In the last six weeks or so, I’ve given three talks about open source / free software in automotive.  [That means "cars."]

It’s sort of a new thread for me to play out on the conference circuit, at least as a speaker, but it is actually an area that I have found personally interesting for ages, and in which I’ve been a secret hobbyist for a while—at a very amateur, “enthusiast” level.  But after having followed the topic and having read up on it, last fall (i.e., November 2013) I decided to dive in and start experimenting with a Linux-based automotive computer build in my car.

That’s one of the talks I spoke about earlier: I gave a “build talk” about the project at the Automotive Linux Summit in Tokyo in early July.  The goal was to relate my real-world experience (surprises, pitfalls, etc.) to the developers and strategists at ALS in the hope that it would be beneficial to them. I gave another talk at ALS about automotive security, but it consisted of “research” rounding up other people’s research and published studies about software security problems in car computers.  I highly recommend the “just talk about other people’s hard work” methodology as a talk-development approach; it’s far less time-consuming than doing all the tests and paper writing oneself, and you also don’t have to apply for grants.

The third talk was at GUADEC, the annual GNOME project conference. It started out, in theory, as another “my build and what you can learn from it” talk idea, but it quickly became clear to me that I needed to do more: provide some context for the audience that didn’t already pay attention to the automotive corner, and offer some reasons why they should look into it and maybe even get involved.  The GUADEC team ended up asking me to make that talk a keynote, which was definitely a surprise, but obviously lots of fun, too.

I tried to include some words on where I thought GNOME developers could get involved in automotive projects (especially since many of those projects already use GNOME libraries, even if they aren’t interacting too much with GNOME-proper upstream), and some ideas on how GNOME could be more “garage friendly.”  More on that later. Nobody threw any vegetables, and a lot of people asked questions afterward, so I think it went well on the whole.

Interestingly enough, while working on the GNOME talk I kept running into the realization that a lot of full-time Linux folks weren’t really up to speed on the scope and makeup of the automotive Linux space.  It’s understandable—most of the work now is pre-production and it may be a while before products hit the showroom floor. But that also makes it the best possible time for free-software people to get involved. The better you make it right now, the better it’ll be when it arrives at the dealer.

The other big take away, for me, was that evidently I’m a shamefully bad example of a tech hobbyist because I haven’t done a running “build log” on some personal blog site or on Instructables, detailing the ups and downs of shoehorning a homemade IVI system into a recent Mustang.  So I’m vowing to do better on that front.  But I can tell you this much: a lot of what goes into posts like that won’t make a lot of sense unless I dole out some background info, like I did at GUADEC.  I apologize if you happen to catch this blog via Graphics Planet and you don’t care about the topic at all — but there is some interest UI/UX work a little later on in the process, I promise.

ALS and the landscape

Anyway, here are the broad strokes if you’re just hearing about automotive Linux for the first time.  The Linux Foundation has done this “ALS” conference for three(ish?) years now.  ALS attendees tend to be drawn from three major projects: GENIVI, which is a multi-company consortium founded by folks in the automotive industry, Automotive Grade Linux (AGL), which is a working group coordinated by the Linux Foundation, and Tizen IVI, which is a distribution project run mainly by Intel and Samsung people.  And there are, of course, plenty of other participants.

These projects overlap a lot in their areas of concern, naturally, but there are also big differences in what they want to accomplish, which makes a difference if you’re picking and choosing as an outsider.

GENIVI is focused on defining a platform-level Linux system that the participating companies can use as a specification to build their automotive products against. GENIVI defines components needed for in-vehicle infotainment (IVI; that’s the head-unit computer that the driver and passenger fight over while they’re barreling down the road) systems, so that car makers and suppliers don’t have to reinvent the wheel every time or argue endlessly about design specs. I.e., everybody uses GENIVI, so It Works.  Naturally, the alliance has to write components that don’t already exist, so they do that: they have open source code at

But GENIVI is not defining the entire system; they are stopping right below the application API layer.  Apparently that’s something that different members want to head in their own direction on, and potentially compete on. So GENIVI’s Linux builds tend to be more like “starting points for a company making a product in house.”  They even use Yocto.

Tizen IVI, on the other hand, is designed to be a fully functional Linux distribution. It’s supposed to be something an OEM can grab and mold a product out of.

In that sense, it competes with GENIVI, I guess, but Tizen also has this interesting “cross-device-profile” concern.  The larger Tizen project wants to make a Linux stack for consumer electronics products of all types (phone, smartwatch, TV, smartfridge, smartcoffepodmachine, etc) that can offer the same app-level API to third-party app developers. That is, you write yer Angry Flapbird game once, and it runs on all the devices.  So Tizen IVI is very much concerned with that app layer that GENIVI isn’t.  Tizen IVI may differ a lot under the hood from Tizen Mobile, but it’s the same on top. The app-level API is based on HTML5 and a lot of W3C standards.

Last but certainly not least is AGL. AGL is technically a “workgroup,” which means that it’s a bunch of companies that want to get together for some common purpose; they can work on whatever they decide to.  At the moment, their most visible effort is the AGL Reference Linux distro, which is a fully installable Linux distribution that you can put in a car. It’s probably not quite the same as you will see in production vehicles, but it’s the closest thing to fully realized IVI of the existing projects.  It’s based on Tizen IVI with a lot of additions.  The additions include a suite of actual IVI apps (music player, navigation, vehicle status, phone hands-free tethering, etc).

Developing more such applications is another one of AGL’s focus areas; right now they’re putting feelers out for people to write apps; it’s actually a good opportunity if you want to do development.  The other thing to remember, though, is that AGL may have broader interests than just IVI: they could decide to delve right into engine-control stuff as well, which is an entirely different space. Fuel injection, timing, traction control, etc.—all that stuff is computerized, and I hear interest from the hallway track in using Linux to virtualize, containerize, and improve these systems. It’ll be interesting to see.

The garage

All that background aside, I did actually talk about my personal “shadetree mechanic” project at both ALS and GUADEC.  What I have is something on a very PC-like microITX motherboard, stuffed into the trunk space of a 2005 Mustang GT.  How well does it work?  Well, that depends on what your criteria are.  I’ll give this one teaser thought, as I contemplate writing up a Proper Build Log like the wise & benevolent Makers Of Olde tell us we have to do:

If you make careful hardware choices, you can put together a functional Linux-based IVI system in your own car.  If, that is, you have a reasonably modern car, sufficient time (or, alternatively, money) to put into the build from both the hardware and software sides, and if you’re willing to get your hands dirty. Literally dirty. And figuratively.

BUT. The first thing you’ll learn is that there is no such thing as a generic car or a generic car computer.  The PC may be pretty standardized, but it also makes a lot of assumptions—like having a flat surface, with decent airflow, and a normal AC-DC power supply, and room to put stuff where you want it.  None of those things hold true in a car, and every single choice you make, starting from where you think you’ll put the actual computer part physically in your vehicle, radically alters all of your decisions further down the line.

So it’s one individual builder’s story, and everyone else’s will differ greatly.  But I also think the experience is useful for other FOSS developers to hear about, since whether you know it or not, automotive computer products are making their way to the mass market. And we don’t want Linux to be late to the party, having not thought about what it will look like when there’s a full-on computer in the car parked outside the house.  How do we expect that computer to relate to our other computers? To connect to the network at our house? To interact with the portable devices we own and might bring with us?  To the documents we ferry around?

It’d be good to have answers to those questions when the tidal wave of car PCs hits. Estimates are it’s less than a year and a half from now before the first official GENIVI systems hit showrooms.  Proprietary software will take several iterations to get all this stuff right, and it will compete within itself, pretty fiercely.  But I hope we won’t let them have the open road all to themselves.

Ana Carvalho & Ricardo Lafuente (Manufactura Independente)Looking at the last months

While we’re figuring out our routines to come back to writing after an August of holidays, here’s a quick write up our ventures since February this year.

MiniDebConf Barcelona

In March, Ana participated in the MiniDeb Conf Barcelona. She presented the Libre Graphics magazine in a talk about libre methodologies in design and in the production of physical objects. The slides of the presentation are here and there is also a video of the full presentation.

Kit Gráfica Livre

In April, we assembled and made public the first instance of the Kit Gráfica Livre (Libre Graphics Kit). It’s a portable safebox with a USB cable, containing a read-only SD card reader.
Placed in the bar of the Porto Fine Arts Faculty, it makes available a set of libre software for graphics and audio production. Besides software, people can find a collection of libre assets, such as typefaces, publications, typography books and a selection of F/LOSS manuals. All for free copying — while at the bar, anyone can pick up the box and use the USB cable to copy everything to their computer.

Our plan is to bring free culture and free software closer to students with this kit. There is an ample amount of open and free materials, tools and assets, but they are very often disregarded in the teaching of arts and design. We would like to see more kits in other arts&design schools, so get in touch if you would like to run one in your school. There’s also a plan for regular updates with new assets and tools.

We’ll keep posting about this mutating kit. In the meantime, there is a mini site for this project here.

Libre Graphics Meeting 2014

LGM 2014: Creative Suites

In May we were at the Libre Graphics Meeting 2014 in Leipzig. Our talk, titled “Dear designer, have these cool tools”, was a about our desire to make distro that could introduce designers to libre tools and mindset. And help designers already using libre tools to persevere in this still arid land. We showed the Kit Gráfica Livre as one of the steps building up to this ambitious plan.

The slides were done using, a simple (and imensly fun) collaborative sketch tool that Raphäel Bastide announced at this LGM. You can find the set here, and watch the video courtesy of the Gimp team.

Open Legislative Data Conference II

The Open Legislative Data Conference in Paris II took place in the end of May. Having been involved in the early stages of the Fabrique de la Loi, a visualization tool for the French law, we attend to present our latest open data project, Data Central. You can read more about in this OKFN Labs post. Videos and slides from the presentations are available here.

Interview on the practice of “open design”

In June, we gave an interview in the portuguese podcast DAR em Conversa Aberta.
Design Advanced Resources (DAR) is an association that is dedicated to the promotion of Open Design, based in Caldas da Rainha. From what we got it was the first time they talked to practioners about the field of graphic design. We talked about our work with the Libre Graphics magazine, the Kit Gráfica Livre, the From Stone to Spaceship workshop and why free software is about much more than saving money.

Ben MartinTerry is getting In-Terry-gence.

I had hoped to use a quad core ARM machine running ROS to spruce up Terry the robot. Performing tasks like robotic pick and place, controlling Tiny Tim and autonomous "docking". Unfortunately I found that trying to use a Kinect from an ARM based Linux machine can make for some interesting times. So I thought I'd dig at the ultra low end Intel chipset "SBC". The below is a J1900 Atom machine which can have up to 8Gb of RAM and sports the features that one expects from a contemporary desktop machine, Gb net, USB3, SATA3, and even a PCI-e expansion.

A big draw to this is the "DC" version, which takes a normal laptop style power connector instead of the much larger ATX connectors. This makes it much simpler to hookup to a battery pack for mobile use. The board runs nicely from a laptop extension battery, even if the on button is a but funky looking. On the left is a nice battery pack which is running the whole PC.

An interesting feature of this motherboard is no LED at all. I had sort of gotten used to Intel boards having blinks and power LEDs and the like.
There should be enough CPU grunt to handle the Kinect and start looking at doing DSLAM and thus autonomous navigation.

Pravin SatputeLohit2: Improvement plans for Lohit-Tamil

   In last phase we did excellent improvements in Devanagari, Gujarati, Gurumukhi and Malayalam with Lohit2 projects. Bengali is already done i need to test it for completeness then i can do the release of same soon.

  Now remaining are Kannada, Oriya, Tamil and Telugu. We are moving ahead and started working on Tamil development now.

  Improvements we are planning to do are as follows:
  • Renaming glyphs as per AGL.
  • Rewriting Open type rules following 'taml' and "tml2" [1]
  • Create testing file which covers most of the combinations.
  • Testing with Harfbuzz and Uniscribe.
  • Auto testing module.
  • Feature file compiled with AFDKO. (Adobe fonts development kit for Open Type) [2]
  • Follow Tamil script standards. Unicode.
   We have already started development on lohit2 git [3]

   I need help specifically for following items.
  • Creating test file with adding important combinations.
  • Identifying standards around Tamil script, i did not found other than Unicode yet.
   If one dont know about lohit2 project, do read blog [4]


Jakub SteinerOpen Flight Controllers

In my last multirotor themed entry I gave an insight into the magical world of flying cameras. I also gave a bit of a promise to write about the open source flight controllers that are out there. Here’s a few that I had the luck laying my hands on. We’ll start with some acro FCs, with a very differt purpose to the proprietary NAZA I started on. These are meant for fast and acrobatic flying, not for flying your expensive cameras on a stabilized gimbal. Keep in mind, I’m still fairly inexperienced so I don’t want to go into specifics and provide my settings just yet.

<iframe frameborder="0" height="500" src="" width="100%"> Blackout: Potsdam from jimmac on Vimeo. </iframe>


The best thing to be said about CC3D is that while being aimed at acro pilots, it’s relatively newbie friendly. The software is fairly straight forward. Getting the QT app built, set up the radio, tune motors and tweak gains is not going to make your eyes roll in the same way APM’s ground station would (more on that in a future post, maybe). The defaults are reasonable and help you achieve a maiden flight rather than a maiden crash. Updating to the latest firmware over the air is seamless.

Large number of receivers and connection methods is supported. Not only the classic PWM, or the more reasonable “one cable” CPPM method, but even Futaba proprietary SBUS can be used with CC3D. I’ve flown it with Futaba 8J, 14SG and even the Phantom radio (I actually quite like the compact receiver and the sticks on the TX feel good. Maybe it’s just that it’s something I’ve started on). As you’re gonna be flying proximity mostly, the range is not an issue, unless you’re dealing with external interference where a more robust frequency hopping radio would be safer. Without a GPS “break” or even a barometer, losing signal for even a second is fatal. It’s extremely nasty to get a perfect 5.8 video of your unresponsive quad plumetting to the ground :)

Overall a great board and software, and with so much competition, the board price has come down considerably recently. You can get non-genuine boards for around EUR20-25 on ebay. You can learn more about CC3D on openpilot website


Sounding very similar to the popular DJI flight controller, this open board is built around the 32-bit STM32 processor. Theoretically it could be used to fly a bit larger kites with features like GPS hold. You’re not limited to the popular quad or hexa setups with it either, you can go really custom with defining your own motor mix. But you’d be stepping in the realm of only a few and I don’t think I’d trust my camera equipment to a platform that hasn’t been so extensively tested.

Initially I didn’t manage to get the cheap acro variant ideal for the minis, so I got the ‘bells & whistles’ edition, only missing the GPS module. The mag compass and air pressure barometer is already on the board, even though I found no use for altitude hold (BARO). You’ll still going to worry about momentum and wind so reaching for those goggles mid flight is still not going to be any less difficult than just having it stabilized.

If you don’t count some youtube videos, there’s not a lot of handholding for the naze32. People assume you have prior experience with similar FCs. There are multiple choices of configuration tools, but I went for the most straight forward one — a Google Chrome/Chromium Baseflight app. No compiling necessary. It’s quite bare bones, which I liked a lot. Reasonably styled few aligned boxes and CLI is way easier to navigate than the non-searchable table with bubblegum styling than what APM provides for example.

One advanced technique that caught my eye, as the typical process is super flimsy and tedious, is ESC calibration. To set the full range of speeds based on your radio, you usually need to make sure to provide power to the RX, and setting the top and bottom throttle leves to each esc. With this FC, you can actually set the throttle levels from the CLI, calibrating all ESCs at the same time. Very clever and super useful.

Another great feature is that you can have up to three setting profiles, depending on the load, wind conditions and the style you’re going for. Typically when flying proximity, between trees and under park benches, you want very responsive controls at the expense of fluid movement. On the other hand if you plan on going up and fast and pretend to be a plane (or a bird), you really need to have that fluid non-jittery movement. It’s not a setting you change mid-flight, using up a channel, but rather something you choose before arming.

To do it, you hold throttle down and yaw to the left and with the elevator/aileron stick you choose the mode. Left is for preset1, up is for preset 2 and right is for preset 3. Going down with the pitch will recalibrate the IMU. It’s good to solder on a buzzer that will help you find a lost craft when you trigger it with a spare channel (it can beep on low voltage too). The same buzzer will beep for selecting profiles as well.

As for actual flying characteristics, the raw rate mode, which is a little tricky to master (and I still have trouble flying 3rd person with it), is very solid. It feels like a lot larger craft, very stable. There’s also quite a feat in the form of HORI mode, where you get a stabilized flight (kite levels itself when you don’t provide controls), but no limit on the angle, so you’re still free to do flips. I can’t say I’ve masted PID tuning to really get the kind of control over the aircraft I would want. Regardless of tweaking the control characteristics, you won’t get a nice fluid video flying HORI or ANGLE mode, as the self leveling will always do a little jitter to compensate for wind or inaccurate gyro readings which seems to not be there when flying rate. Stabilizing the footage in post gets rid of it mostly, but not perfectly:

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="500" src="" width="100%"> Minihquad in Deutschland</iframe>

You can get the plain acro version for about EUR30 which is an incredible value for a solid FC like this. I have a lot of practice ahead to truly get to that fluid fast plane-like flight that drew me into these miniquads. Check some of these masters below:

APM and Sparky next time. Or perhaps you’d be more interested in the video link instead first? Let me know in the comments.

Update: Turns out NAZE32 supports many serial protocols apart form CPPM, such as Futaba SBUS and Graupner SUMD.

CraftingType workshopsClassic video of CT instructor Thomas Phinney discussing the...

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="299" src="" width="400"></iframe>

Classic video of CT instructor Thomas Phinney discussing the design of pan-european OpenType Fonts

CraftingType workshops[link[ Bruno Maag Interviewed

[link[ Bruno Maag Interviewed:

CraftingType workshopsVideo! Cooper-Hewitt: Wicked Problems in Type Design

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="225" src="" width="400"></iframe>

Video! Cooper-Hewitt: Wicked Problems in Type Design

Pravin Satpute#flocktofedora 7th and 8th August AT Prague, Czech Republic and me !!

   If you missed my earlier blog, read it here

    First talk of the 7th morning for me was "From Schedule to (awesome)". The important thing we should note is EOL bug closing. Almost 4 to 5 thousands bugs get auto closed during EOL. Yes, Reporter'ss do get notifications regarding closing of bugs but i think developers should take active involvement and make sure any relevant bug should not get closed without fix.

    Next talk from "Tuan Anh Truong" on "Improving Ambassadors Mentor Program", he mentioned number of issues from Ambassadors program including he does not get replys from some of his ideas and again APAC budget was not used fully and this time it get reduced. He specifically said almost 30 Ambassadors from India but no one is active. I had discussion with him later on and promised that at least i will do some contribution.

    Keynote was nice, it is recorded and available on [1]

    During break i had nice conversation with Mattias and Christian about improving language support in Fedora and happy with there positive response, if time permits will definitely start drafting plan for this.

    After that we had some offline meeting on planning for Fedora 22.

    Attended last session of the day that is " Planning for Fedora 22". This session where we had open house type discussion and taken mostly inputs from most of the attendees. We noted down positive, negative things in Fedora. what we can do for Fedora 22. It was long session but very fruitful session.

    Later we had boat party. It was nice party, i specifically loved the food :)

    3rd day we had talk from Jens on "Fedora i18n: Past, Present and Future". I really liked the way he covered i18n changes over the last almost 10 years. One of the most informative talk on i18n after long time. Video for it available on [2]

    After this session we had big discussion with Carlos of glibc. We specifically talked glibc Unicode support, Sorting issues and synchronising data with CLDR. We did some rough planning for future development. Most probably it will be proposed as a feature for next releases of glibc. Me, Mike, Anish and Jens were involved in this discussion.

    Lunch was very good on 3rd day, it was bit spicy. I liked it :) Not even used spices, i specifically brought from India.

    Fedmsg workshop was very informative for people interesting in building app on Fedora messaging stuff. Ralph Bead given nice tips for doing it. If you still not there join #fedora-fedmsg on Freenode and see how it tracks each change in Fedora.

    Last workshop i attended was from Parag and Haikel. The workshop is specifically memorable since 2 FPC, 9 package sponsors were present there. !!

    Third day we got some time in the evening and done some shopping. Its awesome to walk on Prague's road. Did not attended Dance party planned on 3rd day.

    As i written in earlier blog as well, so many things happen so do check #flocktofedora for more information.

    Ohh i missed to write, we took GROUP PHOTO on 3rd day. Jared Smith Rocks !!!  Original photo available AT [3]

    My earlier blog on First day is available AT [4]

    Will add photos in my FB and tagged it with Fedora


Pravin SatputeMy first day of FLOCK 2014 at Prague, Czech Republic

    Actually i dont like international travel due to involvement of troublesome VISA process, long travel time and all immigration kind of stuff. This time i decided to attend Fedora conference since it almost 7+ years with Fedora and only one conference that was FudCon in Pune 2011. On the other hand number of things are changing in Fedora specifically with Fedora.Next and wanted to meet most of Fedora star contributor face to face. :)

    Arrived on 5th morning to Prague so it gave me good time to get rest and get ready for the first day of flock.

    This flock is organized very nicely with the understanding of number of contributors those are not able to make to conference and we have provided live stream facility and also recording off all the talks. Live stream is available on youtube at [1]

    Keynote was excellent, it was very motivating for contributors with the information about how EU government understand the importance of open source and using it in most of the government places and also contributing to open source. Its recording available at [2]

    After keynote immediately my presentation was scheduled [3], got a nice audience. Recording for my presentation is available at [4].

    Basically i talked on four things, why fons are important, not much happening in Fedora for fonts. I proposed one fonts portal named open source fonts world for gathering all opensource fonts available in different distros. Presenting fonts in better way, more categorized way and prepare some analysis of what is present and what is not. I have done some work earlier and alpha is available at [5]. Feel free to ping me if you are interested in contributing to it. Or if any more ideas..

    I must say there are lots of interesting talk in flock and some are happening parallel, so missed some good talks.

    I attended "Where's Wayland" from Matthias Clasen and yes wayland in Gnome 3.12 :)

    Lunch was nice, though place is 5min walk from conference venue but that is good, Prague is best city for walking. !! Lunch time was bit more than what i expected that is 2 hrs but i think it is good from contributors networking consideration.

    After lunch i attended "Fedora workstation" talk from Christian F.K Schaller and really impressed with the plans for Fedora workstation. One of the point which he mentioned which i hope i understood correctly is taking good input from Fedora marketing team and proceeding as per strategy. With my marketing specialization i am sure this is right strategy as far as we do not understand our target market properly adding new feature will not help much to us. Though its always difficult to get open source community work as per marketing strategy ;)

    Workstation talk recorded available at [6], must watch !!

    Then next was Anish and Mike talked on Predictive text input method (ibus-typing-booster), one nice point came up during question and answer is how can we have prediction during anaconda processing. Yeah that is important for speedy installation. Most of the information for ibus-typing-booster is available AT [7]

    for 4pm to 4.45pm session i took break since i was very tired and had some offline conversations with attendees.

    I attended "Fedora Ambassadors: State of the Union" [8] session from Jiří Eischmann. Understood two topic regarding number of Ambassadors are inactive from long time. APAC did not able to use there whole budget so budget got less in current FY. I do not remember any Fedora 20 release party in India this time. So yeah, people interested in Fedora and want to celebrate Fedora success, want to spread word do come up, we need you. I will definitely do some contribution to Ambassador program this year. We have only one mentor from India that is Kushal. I really like Fedora student University representative program idea, hoping that plan will get into production soon.

    Last talk from Christoph Wickert on "Advocating" was one of the excellent talk and it was housefull. If anyone still not understood Fedora.Next and want some more food for Advocating must watch this talk at [9]

    So had nice and fruitful first day @ flock 2014.

    We had pub party at the end of day and contributors enjoyed lot in it. Competition of tables for consuming highest beer was interesting and Praha-1 rockes with over 56ltr of beer. :-o

    I am sure there are many more things happened than my blog, so do go through other blogs and tweets tagged with #flocktofedora for getting glimpse of it. 

       Cheers !!   

    Note: I started writing this blog on first day but due to packed day, not able to complete it and publishing it on Day 3 :)


Jakub SteinerGUADEC

This blog post is mostly about showing some photos I took, but I may as well give a brief summary from my point of view.

Had a good time in Strasbourg this week. Hacked a bit on Adwaita with Lapo, who has fearlessly been sanding the rough parts after the major refactoring. Jim Hall uncovered the details of his recent usability testing of GNOME, so while we video chatted before, it was nice to meet him in person. Watched Christian uncover his bold plans to focus on Builder full time which is both awesome and sad. Watched Jasper come out with the truth about his love for Windows and Federico’s secret to getting around fast. Uncovered how Benjamin is not getting more aerodynamic (ie fat) like me. Enjoyed a lot of great food (surprisingly had crêpes only once).

In a classic move I ran out of time in my lightning talk on multirotors, so I’ll have to cover the topic of free software flight controllers in a future blog post. I managed to miss a good number of talks I intended to see, which is quite a feat, considering the average price of beer in the old town. Had a good time hanging out with folks which is so rare to me.

During the BOFs on Wednesday I sat down with the Boxes folks, discussing some new designs. Sad that it was only few brief moments I managed to talk to Bastian about our Blender workflows. Unfortunately the Brno folks from whom I stole a spot in the car had to get back on Thursday so I missed the Thursday and Friday BOFs as well.

Despite the weather I enjoyed the second last GUADEC. Thanks for making it awesome again. See you in the next last one in Gothenburg.

Pravin SatputeAll is set for attending Flock 2014 conference !!

    Almost 2 months, when i started planning to attend flock-2014 [1] conference. Had number of hurdle including talk selection, sponsorship for Travel, then VISA issues. Now just 3 days to go for flock and happy that everything is perfectly set for attending conference. I will start my journey tomorrow from India.

    Thanks to Fedora for providing sponsorship for Travel and Accommodation. Specially thanks to Ruth for helping in booking flight tickets. I am going to talk on "Better presentation of Fonts in Fedora". [2] Excited to talk on this interesting topic and have get together with numerous Fedora contributors.

    Schedule of Flock is excellent with added some Fun items.

    Looking forward to meet all attendees in Prague :)


CraftingType workshopsPython for Typographic Designers: Berlin

Ben MartinHookup wires can connect themselves...

A test of precision movement of the Lynxmotion AL5D robot arm, seeing if it could pluck a hookup wire from a whiteboard and insert it into an Arduino Uno. The result: yes it certainly can! To be able to go from Fritzing layout file to automatic real world jumper setup wires would have to be inserted in a specific ordering so that the gripper could overhang the unwired part of the header as it went along.

<iframe allowfullscreen="" frameborder="0" height="281" mozallowfullscreen="" src="" webkitallowfullscreen="" width="500"></iframe>
Lynxmotion AL5D moving a jumper to an Arduino. from Ben Martin on Vimeo.

Ben MartinEnding up Small

It's easy to get swept up in trying to build a robot that has autonomy and the proximity, environment detection and inference, and feedback mechanisms that go along with that. There's something to be said about the fun of a direct drive robot with just power control and no feedback. So Tiny Tim was born! For reference, his wheels are 4 inches in diameter.

A Uno is used with an analog joystick shield to drive Tim. He is not intended and probably never will be able to move autonomously. Direct command only. Packets are sent over a wireless link from the controller (5v) to Tim (3v3). Onboard Tim is an 8Mhz/3v3 Pro Micro which I got back on Arduino day :) The motors are driven by a 1A Dual TB6612FNG Motor Driver which is operated very much like an L298 dual hbridge (2 direction pins and a PWM). Tim's Pro Micro also talks to an OLED screen and his wireless board is put out behind the battery to try to isolate it a little from the metal. The OLED screen needed 3v3 signals, so Tim became a 3v3 logic robot.

He is missing a hub mount, so the wheel on the left is just sitting on the mini gearmotor's shaft. At the other end of the channel is a Tamiya Omni Wheel which tilts the body slightly forward. I've put the battery at the back to try to make sure he doesn't flip over during hard break.

A custom PCB would remove most of the wires on Tim and be more robust. But most of Tim is currently put together from random bits that were available. The channel and beams should have a warning letting you know what can happen once you bolt a few of them together ;)

CraftingType workshopstypedesignersatwork: Carol Twombly checking stuff


Carol Twombly checking stuff

CraftingType workshopsWhole-Brain Typography Class, Seattle USA

Whole-Brain Typography Class, Seattle USA:

CT alumni and typography expert Jeff Barlow is holding a 1-day typography workshop in Seattle in a couple of week, on Thursday 10th July:

Check it out!

Ben MartinThe long road to an Autonomous Vehicle.

Some people play tennis, some try to build autonomous wheeled robots. I do the later and the result has come to be known as “Terry”. In the long road toward that goal what started as a direct drive, “give the motor a PWM of X% of the total power”, lead to having encoder feedback so that the wheel could be turned an exact amount over a given time.  This has meant that the control interface no longer uses a direct power and direction slider but has buttons to perform specific motion tasks. The button with the road icon and a 1 will move the wheels forward a single rotation to advance Terry 6π inches forwards (6 inch wheels).

The red tinted buttons use the wheel encoders to provide precision movement. Enc left and Enc right turn Terry in place (one wheel forward, one wheel backwards). The Circus and Oval perform patrol like maneuvers. Circus moves forward, turns in place, returns back, and turns around again. It's like a strafing patrol. On the other hand, the Oval turns move like a regular car, with both wheels going forward but one wheel moving slower than the other to create the turning effect. The pan and tilt control the on board camera for a good Terry eye view of the world.

I added two way web socket communications to Terry this week. So now the main battery voltage is updated and the current, err, current for each motor is shown at the bottom of the page. The two white boxes there give version information so you can see if the data is stale or not. I suspect a little async javascript on some model value will be coming so that items on the page will darken as they become stale due to lag on Terry or communications loss.

I've been researching proximity detection and will be integrating a Kinect for longer distance measures soon. Having good reliable distance measurements from Terry to objects is the first step in getting him to create maps of the environment for autonomous navigation.

CraftingType workshopsNew tumblr, typedesignersatwork, is very good. Franck Jalleau...

New tumblr, typedesignersatwork, is very good.

Franck Jalleau checking stuff

Ben MartinAtmel Atmega1284

I started tinkering with the Atmega1284. Among other things it gives you an expansive 16kb of SRAM, 2 uarts and of course looking at the chip a bunch more IO. A huge plus is that you can get a nice small SMD version and this 40 pin DIP monster with the same 1284. Yay for breadboard prototypers who don't oven bake each board configuration! The angle of photo seems to include the interesting bits. Just ignore the two opamps on the far right :)

I had trouble getting this to work with a ceramic resonator. The two xtal lines are right next to each other with ground just above but the 3 pins on the resonator were always a bit hard to get into the right configuration for these lines. Switching over to a real crystal and 22pF caps I got things to work. The symptoms I was having with the resonator included non reproducibility, sometimes things seemed to upload sometimes not.  Also, make sure the DTR line is going though a cap to the reset pullup resistor. See the wiring just to the right of the 1284.

I haven't adapted the Arudino makefile to work on this yet, so unfortunately I still have to upload programs using the official IDE. I have the makefile compiling for the 1284 but das blinken doesn't work when I "make upload".

Ben Martin3d printed part repo for attaching to Actobotics structure

I started a github repo for 3d print source files to attach things to Actobotics structure. First up is a mount to secure a rotary encoder directly to some channel as shown below.

As noted in the readme, I found a few issues post print, so had to switch to subtractive modelling (dremel time) to complete it. I leant a few things from this though so the issues are less likely to bite me in the future. There are some comments in the scad file so hopefully it will be useful to others and maybe one day I'll get a PR to update it. The README file in the repo will probably be the one true source for update info and standing issues with each scad file.

You can just see the bolt in below the rotary encoder. That has a little inset in the 3d part to stop it from free spinning when you screw in the 6-32 nut from below the channel.

Pooja SaxenaGoa street lettering

Street lettering images from a walk near Our Lady of Immaculate Conception Church and Archbishop’s House in Panjim, Goa. See all at Flickr.

Telephone KendraWaxMerchants_small

Ben MartinArduino and wireless networking

The nRF24L01 module allows cheap networking for Arduinos. Other than VCC which it wants at 3v3 it uses SPI (4 wires) and a few auxiliary wires, one for an interrupt line. One of the libraries to drive these chips is the RF24. Packets can be up to 32 bytes in length, and by default attempts to send less than 32 bytes result in sending a whole 32 byte block. Attempts to send more than 32 bytes seem to result in only the first 32 being sent. There is a CRC which is a 2 byte and is on by default.

For doing some IoT things using a HMAC might be much better choice than just CRC. The major advantage being that one can tell that something coming over a wireless link was from the expected source. Of course, if somebody has physical access to the arduinos then they can clone the HMAC key, but one has to define what they want from the system. The HMAC provides a fairly good assurance that sensor data is coming from the arduino you think it is coming from rather than somebody trying to send fake data. Another rather cute benefit is that the system doesn't accept junk data attacks. If your HMAC doesn't match the packet doesn't get evaluated by the higher level software.

Using a Sha256 HMAC the return ping times go from 50 to 150ms. The doubling can be explained by the network traffic, as the HMAC is 32 bytes and will double the amount of traffic. I think perhaps the extra 50ms goes into hashing but I'll have to measure that more specifically to find out.

Once I clean up the code a little I'll probably push it to github. A new RF24HMAC class delegates to the existing RF24 class and sends a HMAC packet right after the user data packet for you. The interface is similar, I'm adding some writenum() calls which I might make more like nodejs buffer. Once you have added the user data packet call done() to send everything including the HMAC packet.

RF24 radio(9,10);
RF24HMAC radiomac( radio, "wonderful key" );
radiomac.writeu32( time );
bool ok = radiomac.done();

The receiving end boils down to getting a "packet" which is really just the 32 bytes of user data that was sent. The one readAuthenticatedPacket() call actually gets 2 packets off the wire, the user data packet and the HMAC packet. If the hmac calculated locally for the user data packet does not match the HMAC that was received from the other end then you get a null pointer back from readAuthenticatedPacket(). The data is either authenticated or you don't get to see any of it.

RF24HMAC radiomac( radio, "wonderful key" );
uint8_t* packetData = 0;
if( packetData = radiomac.readAuthenticatedPacket() )
     int di = 0;
     uint32_t v = readu32( packetData, di );
     got_time = v;
     printf("Got payload %lu...\n\r",got_time);

Oh yeah, I also found this rather cute code to output hex while sniffing around.