Apple event op dinsdag 12 september 19.00 (NL tijd)

Aan de uitnodiging vallen een aantal zaken op:

  • Gebruik van heldere tinten, in de kleuren blauw, rood en wit. Amerikaanse vlag? Productie van Apple producten of diensten vanuit de VS in plaats van China? Of viering van het 10-jarige bestaan van de iPhone?
  • Heldere kleuren, nieuwe beeldtechnologie? OLED?
  • Rechthoekige, afgeronden vormen met verhoudingen die lijken op een iPhone. Nieuw model iPhone? Ik zie er overigens drie (het rode vlak heeft rechtsonder een onverwachte afbuiging, hetgeen suggereert dat er twee iPhones op elkaar liggen, de bovenste kleiner dan de onderste).
  • In het nieuwe Steve Jobs Theater. Da’s mooi, een ruimte vernoemd naar de overleden baas van Apple. Zeker als bij introductie van de oorspronkelijke iPhone in 2007 wordt stilgestaan. Ik weet dat me dat in 2007 wel maanden heeft beziggehouden.

Het evenement is om 19.00 en normaliter is het live te volgen vanaf een Apple TV, iPad, iPhone of Mac. Apple heeft hiervoor deze placeholder gereserveerd. Uiteraard hebben de blogs ook de nodige berichtgeving:

Het gevalletje bedrijfsspionage waar Apple afgelopen week mee te maken heeft gekregen is toch een beetje alsof je stukken van het script van Jochem Meyjers nieuwe theatershow te zien krijgt. Gelukkig is de media overwegend terughoudend om al te veel ‘clues’ te lekken, zodat ik nog steeds uitkijk naar het live event. Ik ben ook erg benieuwd welk verhaal er achter de bedrijfsspionage vandaan komt. Niemand wordt er beter van, zeker de betreffende medewerker van Apple niet.

WS2812 displays als samengesteld display gebruiken met NodeMCU

Met de komst van de WS2812 individueel-adresseerbare RGB leds ontstaat de mogelijkheid om displays te maken in elk gewenst formaat. Op dit moment zijn displaymodules te koop met afmetingen 2×2, 4×4 en 8×8 WS2812 leds met afmetingen van 15x15mm, 30x30mm en 71x71mm die onderling kunnen worden doorgelust om een groter geheel te maken. De leds hebben een individueel volgnummer, genummerd 1 tot aantal modules x aantal leds per module.

In de afbeelding hierboven zijn 8 WS2812-ledmodules van 8×8 leds aaneengeschakeld tot een groter display. De led linksboven in de eerste module heeft nummer 1, de led linksboven in de tweede module heeft 65, enzovoorts. Het omrekenen van een  coördinatenpaar (x, y) naar een led-volgnummer gaat als volgt:

function toLineair(x, y)
  boardNumber = math.floor((y - 1) / boardHeight) * boardsWide + math.floor((x - 1) /   boardWidth)
  boardX = x - math.floor((x - 1) / boardWidth) * boardWidth
  boardY = y - math.floor((y - 1) / boardHeight) * boardHeight
  linPos = boardNumber * ledsPerBoard + (boardY - 1) * boardHeight + boardX
  return linPos
end

De programma’s en documentatie zijn te vinden op GitHub: https://github.com/rudiniemeijer/NodeMCU-Lua-WS2812-matrix-displays

Test PIR sensor

ledpen = 0 -- D0/GPIO16

gpio.mode(ledpen, gpio.OUTPUT)
gpio.write(ledpen, gpio.HIGH) -- led uitzetten
pirsensorpen = 2 -- D2/GPIO4
gpio.mode(pirsensorpen, gpio.INT, gpio.PULLUP)

function beweging()
 print("PIR sensor detecteerde beweging")
 gpio.write(ledpen, gpio.LOW) -- led AAN
 tmr.alarm(0,2000, tmr.ALARM_SINGLE, function()
 gpio.write(ledpen, gpio.HIGH) -- led UIT na 2s
 end)
end

-- Roep de functie aan als het signaal begint ("up")
gpio.trig(pirsensorpen, "up", beweging)