Sobre bluey

Ah e tal, qualquer diferença entre isto e a realidade não é pura coincidência.

get lucky

Estou curioso com o que parece vir aí dos Daft Punk. Quanto à ‘hype’ que eles pretendem e conseguem criar, se conseguir tirar atenção a coisas como o PSY, é sempre bem vinda. :-)

Com a atenção que a sonoridade funk tem tido ultimamente (li que abriu um bar dedicado à época do funk na LX Factory, com pretensão de estúdio no futuro e tudo, muito fixe! Funky: Site | Facebook/Funky.LxFactory), diria que este single ‘get lucky’ encaixará perfeitamente em muitas orelhas d’hoje. A minha diria que já está tomada pela minhoca musical, que neste caso deve ser mecânica. :-P

Também achei engraçado o facto de alguém ter notado que acelerando a música, esta fica muito próxima de algo que o Michael Jackson poderia ter criado. Estão alguns exemplos no YT.

Fico à espera de poder ouvir o álbum: Random Access Memories

construir sobre o simplenZAR, um step sequencer para arduino

Depois de usar vários programas diferentes para criar música, desde uma conjugação de programas diferentes ligados pelo jack, a alguns DAW mais ou menos complexos (neil modular tracker foi o que usei mais tempo), queria montar um sistema baseado em hardware totalmente focado na improvisação.

Para começar a juntar o material para este projeto, queria começar por montar um sintetizador, e foi o que fiz há algumas semanas com um kit meeblip micro. A montagem foi pacífica, e como não tinha ainda forma de tocá-lo, andei à procura ou de um interface para usar com algum software, ou de uma forma de o tocar com outra solução de hardware. Encontrei nessa altura o simplenZAR, e decidi tornar o projeto seguinte a montagem de um clone do simplenZAR.

Não correu como esperava, dado que o código era para uma versão anterior do IDE do arduino, e precisou de alguns retoques. Depois parecia que nunca conseguia comunicar com o meeblip por MIDI, ou não havia comunicação, ou o som que saía não era o que esperava. Aprendi que carregar o sketch no arduino com o pin 1 ligado ao MIDI do meeblip era uma má ideia, e causava com que o meeblip ficasse com os parâmetros errados, e daí o som sair diferente do esperado! :-P

Depois deste processo todo e de ter o simplenZAR montado e a funcionar (e de ter que fazer o flash do meeblip algumas vezes), comecei a modificá-lo para o tornar mais próximo do que procurava.

Atualmente mantém os modos de 8 passos, 16 passos, ou 8 passos mais 8 passos de slide para as notas todas. Adicionei-lhe mais 2 botões para poder ligar e desligar nota a nota sem entrar no menu, e definir o pitch da nota também sem entrar no menu, e o tempo de espera (ou a velocidade com que avança para o passo seguinte) também é definido sem entrar em nenhum menu.
Mudei o modo de espera do delay original para a utilização da função millis(), que deixa mais espaço para fazer mais coisas.

Algumas coisas que quero implementar de seguida:

  1. mudar a direcção do sequenciador
  2. tempo variável (alguns modos de tempo variável para os passos)
  3. arpeggios

Outras possibilidades:

  1. tap tempo e/ou
  2. midi sync
  3. passar os leds para o shift register e passar para 16 passos
  4. outras coisas que me lembre entretanto :)

Assim que tenha possibilidade coloco o código num repositório qualquer para ser mais fácil manter atualizado com o que for alterando.

O meu avançando centro de controlo num pedaço de cartão ;-) :

Depois tiro mais fotografias decentes ao que tenho feito até agora.

O código que tenho até ao momento blueSTEP.

O nome deve mudar um destes dias. Assim que chegue a uma versão do código mais estável, ou assim que faça um shield para o arduino com o circuito final (espero já ter atualizado o circuito para usar shift registers nessa altura).

Thunderbird Lightning + Provider for Google Calendar

Depois de perder moooontes de tempo a tentar perceber porque razão a extensão que que devia permitir a sincronização nos dois sentidos do calendário Lightning no Thunderbird não funcionava, lembrei-me que tinha ativado a autenticação em 2 passos do Google! :-P

O problema de usar a autenticação em 2 passos é a sincronização dos calendários falhar de forma silenciosa! :x

A solução foi a mesma que para outras aplicações, criar uma password dedicada para esta aplicação na definições de conta do Google:
https://accounts.google.com/b/0/IssuedAuthSubTokens

GPT + MBR c/ rEFIt

Estava a usar no MacBook uma tabela de partições híbrida GPT/MBR para poder correr Linux. Para facilitar instalei o rEFIt que permite colocar o boot directo para o SO não Mac OS (legacy), e mostra o menu por omissão sem precisar estar a carregar no Option.

Tinha preparado para montar um disco maior e tinha-lhe instalado o mesmo esquema, com o Ubuntu Karmic Koala. Ora quando tive oportunidade de trocar os discos, actualizei o Ubuntu desse disco maior para o Lucid Lynx que trouxe com ele o grub2. Ao reiniciar, o grub dava um erro que tornava impossível arrancar o sistema, a shell do grub era a de rescue, e não conseguia carregar o módulo com a shell normal. Como o rEFIt não arranca o Linux directamente de uma pen usb (dá um erro qualquer que me parece ser limitação dos Macs, que só arrancam o Mac OS dessa forma), fiquei bloqueado até ter um CD/DVD do Ubuntu à mão. :(

Quando arranjei o CD, pensava que o problema era do grub estar mal instalado. Voltei a instalá-lo na partição onde tinha a root e continuava a ter erro. Como esta partição era a 5ª e o MBR só mostra as 4 primeiras, deduzi que talvez o problema estivesse relacionado. Decidi remover uma partição genérica que estava antes mais a swap (2GB de RAM com desenhos grandes no Inkscape por vezes precisam da swap) e mover a root para trás. Como não apaguei a root, ficou com o mesmo número. O problema do grub manteve-se, embora não saiba ao certo se exactamente por isso. Como o MBR é independente da GPT, acabei por resolver o problema instalando o grub no MBR. Não afectou o boot principal e ficou reconhecido pelo rEFIt, carregando o Linux correctamente.

Como tinha instalado o grub primeiro para a partição, acabei com 2 entradas no menu do rEFIt, uma do MBR (que ficou a funcionar) e outra da partição que também tinha o grub e não funcionava. Como no rEFIt ele não indicava qual era qual, seria interessante remover o grub da partição para eliminar a opção de boot que não interessava.
Procurei se alguém tinha tido esta necessidade, mas a maioria dos resultados da pesquisa era alguém a procurar uma solução para remover o grub do MBR, e as soluções indicadas para remover de uma partição passavam por apagá-la, que não era de todo uma solução que me servisse, dado que a partição já tinha o sistema instalado.

Acabei por decidir experimentar fazer o mesmo procedimento usado para limpar o MBR, mas com a partição, usar o dd e limpar o sector inicial da partição em causa: dd if=/dev/zero of=/dev/sda5 bs=512 count=1 e funcionou. :-) No MBR apenas os primeiros 446B são usados para guardar o boot loader, por isso limpar o sector todo implica apagar também a tabela de partições (daí 446B em vez de 512B), assumi que esse não era o caso com o sector da partição independente, dado que este não necessita guarda essa informação.

Entretanto enquanto estava pesquisar alguma informação para escrever este post, encontrei uma página que explica uma situação semelhante, de instalar o stage1 do grub numa partição por engano.

Será possível usar o grub2 na vez do rEFIt (dado que já suporta GPT) e deixar de ter este esquema do MBR no GPT :?: