Debian jessie, Raspberry Pi, Arduino day
This would be a longish post on the various goings-on in the community of free software.
First up, apologies for not being as active as I wanted to be. There has been lot of things which have been happening and I’ve not been able to share partly due to the laziness on my part, partly being busy with work and life.
The first news which I felt is worth sharing is that a Jessie Alpha release got released this month. While the freeze is still few months away (7-8 months away) the alpha installer releases are shared/given so that people can find and report any bugs while installing Debian on various hardware targets which we support and minimize any regressions found.
Another aspect of these releases are to test the installer on hardware for which support might not have been before. There may be changes also in the UI or the underlying code as well as various translations so people could install debian in various languages. At this point 12 languages have complete translation as far as the d-i is concerned, rest are in various stages of completion. Please use the page and the links given therein if you do try the installer.
There has also been some traction last year on the UEFI side so debian can be installed on newer desktop and laptop machines (think post 2012) which have got the new UEFI boot interface instead of legacy BIOS. There has been some success reported by people without secure boot and even then some people had to resort to some hacks.
I do hope people do take the opportunity of the alpha releases and open bugs or query the debian-installer team so that we have more and more machines on which we can put Debian without any workarounds.
As shared before, the Armel and Armhf along-with the MIPS version seem to be gaining a bit in popularity at least locally (In India) as more and more people are interested to get free software on these single-board systems and routers. For people new to these ports, Armel is usually used for very constrained older ARM4 while Armhf is for the newer ARMv7 and later which means all the raspberry Pi’s, Beagleboard and Arduino’s are and can benefit from it.
While on the topic of the release, I do sometimes across blogs like these. Now I don’t know how to respond to that as it simplifies and is wrong on a few counts. For instance, all the people I have quoted AFAIK are DD’s (Debian Developer) rather than DM’s (Debian maintainer). DD’s have upload rights while DM’s have to ask somebody (a DD) to review their work and sponsor the upload to the archive.
Also the standardization of the kernel would probably be looked by the kernel team and there are and would be quite a few factors which the kernel team would be taking account as the freeze date. For instance :-
1. The biggest factor would probably be which kernel release GregKroah-Hartman (or GregKH) as he’s popularly known would support for long-term support. The trend in the 3.x series has been 3.2, 3.4, 3.6 and 3.10 so it would seem that 3.16 would probably be his choice for long-term support. Now if that version is published a month or so before the freeze and doesn’t have any major regression that would be probably be the candidate in jessie. 3.14 got released yesterday, so if 3.14 is used, the kernel team would have much more responsibility than probably 3.16 as GregKH and the rest of the upstream kernel sub-systems maintainers would have their loyalties divided between the long-term support kernel (which is decided by GregKH) and developing and integrating newer kernel versions.
2. I think something like the kernel would be probably be a consensus-based decision by dialog between the kernel-team, ftp-team and Theodore Tso to say at the very least. Most of the discussions would probably be had slightly before the freeze and based on people’s experimentation, understanding and opinions a call to which kernel version would be good for the release would probably be taken.
3. In case of the unlikely turn of events that the upstream Long-Term Support (LTS) release is not used by Debian, then people like Ben Hutchings (bwh) would have to take the mantle which probably is an easy way to burn out. Ben has done in the past, but it seems quite unlikely he would take the mantle again. At least no sane person would do that for a community distribution but then most debian users and DD’s are ‘insane’ 🙂
Personally, I’m looking forward for some hacks on UEFI 64-bit to happen so I can finally buy a lappy which has been hanging fire for last two years for the same reason. If I can’t get a nice, powerful machine on open firmware locally, the next best thing is to have one which has some sort of easy workaround.
As far as the time-line for the release, it should roughly go something like this :-
a. Have 2-3 alphas of the installer over the next few months fixing bugs and regressions while updating the installer as well as getting the translations done right so people can have better experience than before.
b.Then end-November the freeze would be in effect, which means no new shiny software in the testing archive (apart from any transitions via unstable/sid) and any CVE’s (security issues).
c. During the freeze we would have couple or more of beta releases with the freeze ending with a new stable release.
The last time the freeze went over 6 months, with new strategies in place and slightly better tools and knowledge, the idea would be to have a short freeze and release Jessie.
I am avidly following the release and do hope the freeze is for a short time. They have made some changes to how things work in the archive, for instance autopkg tests as well as ensuring that if packages have some RC bugs (Release-Candidate bugs) and those bugs are not looked at in a certain time-frame, they are removed from testing. Hopefully, these change motivate developers into fixing RC-bugs and making their packages RC-bug free and the archive would be in better shape than ever before. We would probably see the results of these changes in the freeze and release. If we enter 2015 with a new release, it would be the best gift we would have received.
Now, if people have followed this blog, then from last year me and some of my friends have been using single-board computers such as the raspberry pi to share and teach software to school-going children as well as do demos on the Pi at various places. BUT most of our efforts have been to use the Pi in place of a desktop computer, sort of disregarding the GPIO ports which are present on the Pi which could be used to control and change some sort of input or output in the external environment.
While we have done some experiments which has told us how it can be beneficial, as everything else it needs an ecosystem for ideas to grow or mutate,re-used and re-fined. Such an event happened in Pune last week and we were fortunate to be part of the event.
The most interesting aspect as far as the introduction is concerned was the sheer variety of Arduinos that were displayed. The only thing I thought which was missing was a URL which had all the Arduinos displayed along with their specs and prices in Indian rupees. If anybody knows of such a link please share.
It was particularly interesting to see the Induino boards which are/can be thought of as forks of Arduino boards. To see an indigenous manufacturer forking the Arduino and making it cheaper yet spacier for people to fix their components on board and start playing with Arduino looked pretty interesting not to mention a tinge of pride that our own countrymen made this.
As is the case with any workshop, apart from the product which is being displayed, there was also discussions of alternatives like the Raspberry Pi and Beagleboard Black. While I have always been a supporter of Pi (and would continue to be) it was an education in seeing how freeing the hardware designs lead to so many forks and trying out different things by different manufacturers. Arduino might not be selling millions of devices as the Pi has been able to generate sales, but being able to fork means more and more can get a chance to explore it at perhaps a more intimate level then the Pi simply because it’s cheaper and chances could and would be taken which otherwise might deter people from hacking ‘too much’.
One of the more interesting Arduino boards they shared is the upcoming Arduino Tre. This is supposed to be online soon.
After the introduction, they asked as to how many people had laptops and made groups of 4-5 people who would work on one laptop which was connected to the board via a USB-serial wire with appropriate connectors at both ends.
The second thing they did was ask people to download the Arduino SDK. This I *think* was something that could have been improved upon drastically by either having the software in the archive for two-three GNU/Linux distros, the Mac and MS-Windows. I did see some Macs and some lappies running GNU/Linux but none running MS-Windows which probably was a good thing.
As we had two lappies, both running Debian, we tried but couldn’t get access to the serial port. We tried various things but it was a no-go. Finally, one of the team shared that running the SDK with super-user privileges gives access to the serial port. We found that he was right. This I felt was a bug and bugged a friend to report the bug to the maintainer of the software. As too many things were happening before us, didn’t give any more thought to the matter then.
Coming back home, after a short nap, I realized that what one of the members had shared was a crude hack and did remember that exposing software with super-user privileges is a security risk, so there had to be a better way. So started investigating and found that was a command-line command called :-
which puts the user in the dialout group. I remembered from my experiences of 15-20 odd years ago, when we used to have the analog serial modems. If you used any of the older 14.4 Kbps or even 56 Kbps modems which made those strange stirring noises. To be able to access these modems, the user had to be a member of the ‘dialout’ group. As hadn’t used the command over at least 10 years or so had forgotten about it. The arduino wiki shared the following :-
$sudo usermod -a -G tty yourUserName
$sudo usermod -a -G dialout yourUserName
On the bug-discussion, it was revealed that none of the above are needed. What the user needs to do, at least in debian is to install the software, run the software once :-
quit the software, log out and log back in. You should have access to the serial port.
We would probably try it out in a few days.
There were lot of interesting ideas and projects that people are and were working on, which they shared with us.One of the more interesting ones was shared by a certain Mr. Singh. Mr. Singh is 10 years old and the project was done by him and the senior Mr. Singh. What was truly inspiring was that the young Mr. Singh shared how the both of them went about doing it. The project was a talking clock. There is a pressure pad, the user is supposed to punch or put pressure on the pressure pad and the clock will read out the time. As the project was very much a work-in-progress, a demo was not there :(.
The most interesting aspect was that the junior Mr. Singh drew the schematic diagram correctly, and when he was sharing the road-ahead for the project, he did a small mistake and rectified it immediately. His understanding and correction of the mistake drew a lot of applause from people who were present therein.
Overall, it was a good day as we learnt quite a bit, and hopefully most of us can use the knowledge gained in one way or the other.
Lastly, it was interesting to see the Arduino being used as a prototyping tool as well as being used in products.
It’s a pity I don’t remember the names of the people, otherwise there were lot of interesting projects which were worth sharing about, for e.g. use of Arduino Lilypad in some fashion clothes, use of Arduino for smart home automation and various other ideas.
What was really interesting, people just didn’t showcase, but also shared a bit about how things were laid out in hopes of getting queries and responses to people. It was truly in the ‘maker’ mode community spirit rather than trying to do a corporate presentation.
All in all, it was a good day. Till l8er.