Archive for september, 2020

Konspirationsteoretikerna hade rätt? ESTONIA

28/09/2020

SWEBBTV hade idag ett mycket intressant inlägg gällande Estoniakatastrofen och det intressanta spel som från speciellt svenskt regeringshåll spelades. Sverige var i en nyckelposition eftersom majoriteten av offren i olyckan var svenskar.

Sveriges och Estlands statsministrar träffades nyligen tydligen för att diskutera hur man skall hantera situationen då man har fått bevis för att Estonia har ett stort hål i skrovet, ett hål (1.2×4 m) som sannolikt förklarar varför fartyget kunde sjunka så snabbt. Normalt kommer ett modern fartyg med skrovet intakt att ligga och flyta på ytan eventuellt i veckor.

Man försökte från början mörka katastrofen genom att förhindra dykningar och man tänkte t.o.m. i ett skede täcka över fartyget med sten … varför? Dykare som inspekterade fartyget genast efter katastrofen talade om ett hål i fartyget men saken tystades och sopades under mattan och all diskussion om bakomliggande orsaker brunsmetades genom att kalla människor som ville ha mera information för konspirationsteoretiker. Måste vi igen konstatera att den gamla sanningen (Bismarck?) att man inte skall tro på något innan myndigheterna har förnekat saken åtminstone tre gånger? Om det nu visar sig att de Estniska uppgifterna håller streck så gäller tydligen att personer som utpekas som konspirationsteoretiker kan vara värda att lyssna på.

Ett stort hål i fartygssidan kan ha uppkommit genom

  • att fartyget enligt uppgift transporterade sovjetiskt krigsmaterial från Estland till något Natoland via Sverige. Explosion eller sabotage är en möjlighet för att förhindra trafiken. Skadans utseende ger information om huruvida orsaken var en explosion inne i skrovet eller en utifrån kommen skada.
  • att det fortfarande regelbundet hittas krigstida minor i området. Minorna kan trots att de är gamla fortfarande vara farliga. Om detta är fallet så är det fråga om en ren olycka.
  • kollision med ett annat fartyg. I SWEBBTV:s program talas det om att en Nato-ubåt skulle ha tagits upp på varv några dagar efter olyckan med skador i fören.

Det blir mycket intressant att se hur politikerna tänker hantera saken om det visar sig att de Estniska uppgifterna och TV-serien om katastrofen håller streck.

SWEBBTV var först ute, redan för en vecka sedan, med uppgifterna om kontakter mellan Sverige, Estland och eventuellt Finland och att det som diskuterades var avslöjanden kopplade till Estoniakatastrofen.

Intressant att bli sannspådd

27/09/2020

År 2002 skrev jag artikeln Vår framtida energiförsörjning som publicerades i Ekonomiska samfundets tidskrift. I artikeln diskuteras olika alternativ för hur vår framtida energiförsörjning kan säkras.

Artikeln diskuterar fossil energi, vindkraft och modulär fjärde generationens kärnkraft i form av små industriellt producerade modulära kärnreaktorer. Det var en stor glädja att för några dagar sedan se att min forna arbetsgivare VTT (Valtion Teknillinen Tutkimuskeskus/Statens tekniska forskningscentral) nu planerar små modulära kärnreaktorer avsedda för värmeproduktion i t.ex. städer. I likhet med de av mig beskrivna (dock inte min idé utan teknik som i sakkunnigkretsar aktivt diskuterades 2002) reaktorerna är små modulära reaktorer helt skyddade mot härdsmälta genom att de är små. En tillräckligt liten reaktor med en termisk effekt på t.ex. 150 MW kan stoppas totalt utan tillgång till kylning eftersom reaktorn har en tillräcklig yta för att passivt kunna kylas.

Då man skalar upp effekten på en reaktor så stiger effekten i princip med kuben på reaktorstorleken medan den passiva kyleffekten stiger med kvadraten på effekten. Om vi tar ovanstående 150 MW termiska reaktor som exempel och tänker oss att vi fördubblar radien på reaktorkärnan så kommer effekten att öka med 2*2*2 ggr (8x) medan ytan ökar med 2*2 ggr (4x). Efter förändringen har den nya reaktorn en effekt på ca. 1200 MW termisk effekt vilket ger ca. 550 MW eleffekt d.v.s. något mellan en Lovisa- och en Olkiluotoreaktor. Effekten är så hög att aktiv kylning behövs under lång tid, d.v.s. några veckor, efter att reaktorn stoppats för att reaktorkärnan inte skall skadas av eftervärmen från radioaktiva sönderfallsprodukter i bränslet. Om kylningen bryts kommer reaktorn att förstöras vilket man såg i Fukushima. Reaktorerna klarade jordbävningen men tsunamin slog ut nödkylningen vilket ledde till härdsmälta till följd av reaktorbränslets eftervärme i de stoppade reaktorerna.

En liten modulär reaktor konstrueras så att den inte skadas om man tvingas stoppa den plötsligt till följd av kylproblem. Då bränslet efter några år har förbrukats så byts inte endast bränslet utan den centrala kraftverksmodulen inklusive bränsle byts mot en ny modul och den gamla modulen returneras till fabriken för kontroll, service och bränslepåfyllnad.

Nya myndighetsdirektiv behövs

För att små modulära reaktorer skall kunna konkurrera med stora reaktorer behövs ny lagstiftning där en typgodkänd reaktor skall kunna installeras i princip helt utan byrokrati om en likadan reaktor har godkänts tidigare av strålskyddsmyndigheterna. Det är självklart absurt att en liten reaktor som serietillverkas skulle kräva år av underhandlingar mellan energiproducenten och strålskyddsmyndigheterna.

Man kan jämföra situationen med försäljning av bilar. Man typgodkänner normalt inte varja bil för sig utan en viss bilmodell godkänns och samma godkännande används på alla bilar av denna modell då de säljs till kund.

Vindkraft, berg av avfall

Jag konstaterade i artikeln ”Vår framtida energiförsörjning” att om man går in för en storskalig utbyggnad av vindkraften så kommer man att stå inför ett ofantligt berg av problemavfall. Kraftverksvingarna är svåra att återvinna och lösningen i t.ex. USA är att kapa vingarna i sådana bitar att de kan transporteras och därefter grävs skrotet ner i marken …

Bloggen Watts Up With That WUWT hade nyligen ett inlägg om det skrotberg de ”gröna” energikällorna windkraft och solkraft ger upphov till. Notera att ett blad till ett stort vindkraftverk motsvarar vingen på en jumbojet dock så att vindkraftverkets vinge väger betydligt mer.

Wind turbines generate mountains of waste

Finska länkar till modulära reaktorer:

Pienet modulaariset ydinvoimalat.

Pienet modulaariset lämpövoimalat.

VTT ja pienet ydinlämpövoimalat.

Vikingasjukan (Dupuytrens kontraktur)

13/09/2020

Vikingasjukan eller Dupuytrens kontraktur är en intressant sjukdom som fått sitt namn Vikingasjukan eftersom den är vanligare i Norden än på andra områden i världen. Det är fråga om en bindvävssjukdom där förändringar i handens bindväv (kollagenförändring) med tiden leder till att ett eller flera fingrar dras ihop och böjs. Orsaken till att jag började titta på denna sjukdom är att jag har två goda vänner med denna sjukdom.

Precis som vid många andra sjukdomar med okänd orsak så konstaterar man att det antagligen är en genetisk sjukdom som då eventuellt ärvs inom vissa släkter, men är det faktisk så?

En sjukdom som går i en släkt kan naturligtvis vara genetisk men den kan också bero på att ett specifikt levnadssätt inklusive kost ärvs över flera generationer. Vi kan här tänka på Gamla Testamentets konstaterande att vissa fenomen kan ärvas upp till sjunde led … jag antar att det antikens skribent då tänkte på var kost, livsinställning och andra saker man lyckades belasta sina barn med som i sin tur förde förbannelsen vidare . Exakt samma fenomen kan antagligen ses i vissa släkters framgång där en vettig livsinställning, intresse för att lära sig etc. också kan leva kvar i många generationer, denna gång dock i positiv bemärkelse.

Kan det finnas fysiska orsaker till Vikingasjukan

Som mina läsare vet så har jag skrivit många artiklar om olika bristsjukdomar. Typiska allvarliga bristsjukdomar man känner till från historien är brist på C-vitamin som ger skörbjugg. Brist på vitamin B3 som ger Pellagra. Det verkar rätt klart att brist på D-vitamin ger störningar i immunsystemet med kraftigt ökad risk för komplikationer vid COVID-19 om patienten har D-vitaminbrtist.

Ett naturligt sett att titta på Vikingasjukan vore då att betrakta norden och områden med kraftig nordisk påverkan t.ex. Vitrysslan och Ukraina och ställa sig frågan om det finns några gemensamma tänkbara brister som kunde ge upphov till en bristsjukdom som vi kallar Vikingasjukan.

Vi vet att norden är fattigt på Jod som vi oftast får från haven. Istiderna har antagligen spolat bort den Jod vi hade i marken. Man har noterat jodbristen som kan ge upphov till struma och myndigheterna har åtgärdat problemet genom att lagstifta om att jod måste tillföras i koksalt. Jodiserat koksalt har i praktiken helt eliminerat jodbristen. Åren efter Tjernobylolyckan i Ukraina, där bl.a. radioaktiv jod kom ut i omgivningen, gjorde man stora undersökningar av befolkningens sköldkörtel eftersom radioaktiv jod samlas i sköldkörteln som kan skadas eller förstöras. Man konstaterade vid dessa undersökningar att det är svårt att skilja på skador från kärnkraftsolyckan och den jodbrist som också förekommer i området vilket pekar på att åtminstone ”Vikingaområdet” Ukraina också har jodbrist.

Diskussionen om Jod ovan betyder inte att jag skulle misstänka att Vikingasjukan skulle bero på jodbrist men antag att det finns andra spårämnen som har sitt ursprung i havet som inte ger lika direkta och synliga effekter som Jod och eventuellt effekter som kräver årtionden för att bli synliga. Jag har från tidigare artiklar sett att det i norden finns områden som är extremt fattiga på grundämnet Bor … så fattiga att man noterat tillväxtskador på bl.a. Gran till följd av borbrist.

Borbrist kan ge upphov till intressanta skador.  Akut borbrist ger synliga skador på vissa växter vilket växtfysiologen Dr Newnham lade märke till. Han lade också märke till att olika typer av ledskador verkade förekomma på områden som vara så fattiga på Bor att växterna tog skada. Artrit d.v.s. ledskador är ofta en följd av att ledernas slitytor inte återbildas korrekt utan det blir slitageskador något vi ser överallt här hemma i norden. Ledskadorna kan alltså åtminstone delvis vara en följd av rubbad kollagenproduktion. Var och varannan människa verkar få ledskador som kräver byte av leder d.v.s. man lägger in konstgjorda leder i stället för skadade leder.

Är Vikingasjukan i grunden borbrist?

Jag började nu söka allmänt kring Dupuytrens kontraktur, vikingasjukan och spårämnesbrister. Sökning ”Dupuytrens contracture boron”. Jag hittade då (naturligtvis bland mycket annat) en väldigt intressant länk:

Dupuytrens contracture (bent finger) treated by boron and DMSO. Behandlingen går ut på att gnida in en blandning av borsyra, DMSO och Aloe Vera i huden. Personen tog också tillskott av bor via munnen dagligen motsvarande 10 mg bor. Själv brukar jag ibland ta extra bor i form av borax men jag har inte åtminstone ännu vikingasjukan.

Personen rapporterar att han själv lyckades eliminera problemet på ca. två år. Hustrun hade samma problem men behandlingen var i detta fall endast delvis effektiv.

Vad är DMSO

DMSO är ett intressant ämne Dimetyl Sulfoxid som uppfanns på 1800-talet inom pappersindustrin. Ämnet har den intressanta egenskapen att det ökar hudens genomsläpplighet för olika ämnen. I ovanstående fall så kan DMSO fungera via två olika spår. Det första spåret är att DMSO lokalt ökar tillgången till Bor vilket i sig gör att Vikingasjukan eventuellt börjar gå tillbaka. Det andra spåret är att bindvävnadsskadan som vi kallar Vikingasjukan i sig delvis förhindrar diffusion av nödvändiga ämnen till den skadade bindväven. DMSO kan då i sig, då DMSO tränger genom huden, öka intag av spårämnen till bindvävnaden helt oberoende av att vi använde DMSO tillsammans med bor. DMSO används i begränsad omfattning inom medicinen bl.a. för att behandla bl.a. sjukdomar i urinblåsan men i östeuropa används DMSO också i salva för att behandla bl.a. inflammationer i senor.

Notera!

Jag har inte själv testat ovanstående (ännu). Jag förväntar mig mera information inom den närmaste tiden. Tanken är att i praktiken undersöka hur Bor + DMSO fungerar.

Var hittar jag Bor och DMSO

Jag känner inte till någon firma som över disk skulle sälja DMSO. Ämnet är en normal bulk-kemikalie som är välkänd inom kemi och forskning.  DMSO hittar man bl.a. på ebay, jag hittade en leverantör i Polen vilket bör leda till snabb leverans. Själv har jag hittat Bor på ebay både i form av borsyra och borax. EU försöker sätta käppar i hjulen men åtminstone idag hittade jag både borax och borsyra via Polen.

DMSO sök på DMSO.

Bor sök på Boric Acid eller Borax. Notera att borsyra och borax inte är samma sak men båda innehåller Bor.

Annat

Eftersom Dupuytrens kontraktion ”Vikingasjukan” är en bindvävnadssjukdom som åtminstone delvis beror på störd kollagenproduktion så skulle jag personligen se till att jag får i mig tillräckligt C-vitamin (1-2 g/dag minimum uppdelat över dagen … eller mera. Själv äter jag mellan fem och tio gram C-vitamin per dag). Jag skulle också ta D-vitamintillskott.

Jag konstaterade ovan att jag startade från Jodbrist. Som ett absolut minimum skulle jag kontreollera att det salt jag använder är jodberikat.

 

Intressanta länkar:

DMSO: https://en.wikipedia.org/wiki/Dimethyl_sulfoxide

Behandling av Vikingasjukan: https://vitamindwiki.com/Dupuytren%E2%80%99s+Contracture+%28bent+finger%29+treated+by+Boron+and+DMSO+-+2016

Klassisk Borbrist och ledskador: http://www.rexresearch.com/newnham/newnham.htm

Pellagra: https://en.wikipedia.org/wiki/Pellagra

Vikingasjukan: https://www.netdoktor.se/skelett/krokigt-finger/artiklar/vikingasjukan-dupuytrens-kontraktur-krokigt-finger-vanligare-bland-skandinaver-och-man/

COVID behöver vi faktiskt vaccin?

10/09/2020

Hela vårt samhälle har focus på hur COVID-epidemin skall kunna bekämpas. Det enda ”hållbara” verktyg man erbjuder för att slippa nedstängningar och samhällsförstörelse i framtiden är vaccin mot viruset. En intressant fråga blir då om det finns relevanta alternativ till vaccin.

Vaccin mot influensa har varierande effektivitet år från år eftersom virus muterar och vaccinutvecklarna tvingas gissa vilka varianter som kan tänkas dyka upp följande influensaperiod. Gissar man fel så blir skyddet inte speciellt bra. Det har visat sig att influensavacciners skyddseffekt varierar mellan ca. 10% (2004-5) och 60% (2010-11). Källan är webMD ”How effective is the flu vaccine”.

Då vi ser på när influensan grasserar som värst så ser vi att det främst är jan-mars på norra halvklotet. Skolmedicinen konstaterar att detta beror på att virus sprids bäst i kall torr luft. Det finns dock en annan faktor som sällan nämns och det är att kroppens D-vitaminnivå är som lägst vid den här tiden på året (på södra halvklotet juli – september). Förklaringen att orsaken skulle vara kall torr luft haltar betänkligt då vi vet att graden av uppvärmning och därav följande torr luft varierar kraftigt med latituden (hur långt norrut/söderut från ekvatorn man befinner sig).

Då vi ser på hur COVID drabbar mörkhyade personer (notera att detta inte är rasism) så är mortaliteten i  västvärlden ca. tre gånger högre än för vita. Skall man tolka detta som att svarta är tre gånger känsligare för kall torr luft (/sark) eller gäller den naturliga förklaringen att orsaken är att den kraftiga pigmenteringen gör att väldigt lite D-vitamin bildas på högre breddgrader. Mätningar visar att 82% av den svarta befolkningen, 70% av spanskättlingar och 42% av den övriga befolkningen har D-vitaminbrist. Vita har inte samma problem som mera mörkhyade eftersom evolutionen har gjort att vi kan producera D-vitamin i huden också då UV-strålningen är svag. De mörkhyade har en mortalitet i COVID som är flera gånger högre än för vita. Notera dock att även ljushyade kan ha D-vitaminbrist till följd av levnadssätt. T.ex. i Spanien undviker människor att i onödan röra sig i solen vilket kan leda till D-vitaminbrist trots mycket sol, mera om detta nedan.

D-vitaminets effekt på virus

Jag konstaterade ovan att det finns en klar korrelation mellan influensa och den period då D-vitaminivån är som lägst i befolkningen. På motsvarande sätt ser vi att influensaepidemier klingar av kraftigt under sommaren då D-vitaminnivån stiger till följd av mera sol och mindre kläder.

Vi vet, sedan början av COVID-epidemin d.v.s. från början av året, att patienter som varit så sjuka att de tagits in på sjukhus typiskt hade kraftig D- och C-vitaminbrist. Vi vet att båda vitaminerna spelar viktiga roller i immunsystemets funktion men klara kvantitativa mätningar för hur kraftig inverkan är på immunsystemet har saknats.

D-vitaminets inverkan på COVID-19 dödligheten

Melzer följde upp 489 patienter för vilka man hade mätningar av D-vitaminnivån från det gångna året. Undersökningen kunde inte ge någon klar orsak/verkan men det visade sig att patienter med obehandlad D-vitaminbrist (20 ng/ml) löpte en mer än 50% högre risk att smittas av COVID-19 än patienter med tillräckligt hög D-vitaminnivå. Notera att en höjning av D-vitaminnivån har ungeför samma effekt som ett influensavaccin (se ovan).

Blindförsök

I Spanien har man gjort mycket intressanta experiment. Reina Sofia University Hospital, Córdoba Spain, studerade 76 patienter som togs in på sjukhuset för COVID-19 infektion. Alla patienter gavs samma grundläggande behandling enligt bästa förståelse. Behandlingen var hydroclorokin, azitromycin.  

Patientgruppen delades slumpmässigt in i två grupper och den ena gruppen gavs utöver behandlingen ovan calcifediol d.v.s. aktiv D-vitamin (som levern inte behöver aktivera). Studien gjordes som ett blindförsök där alltså varken läkaren eller patienten visste till vilken grupp patienten hörde.

Resultatet var intressant. I patientgruppen som fick D-vitamin behövde två procent av patienterna intensivvård medan intensivvårdsbehovet i gruppen som inte fick D-vitamin var 50%. Av de 13 patienter som inte fick D-vitamin (calcifediol) dog två personer.

Konklusion

Den senare studien visar att D-vitamintillskott kraftigt påverkar utfallet i positiv riktning för patienter som är så sjuka att de måste behandlas på sjukhus. Risken att få allvarliga komplikationer minskar kraftigt om D-vitaminnivån i kroppen höjs även för patienter som är svårt sjuka då behandlingen inleds.

Den första studien visar att risken att överhuvudtaget få sjukdomen minskar kraftigt om D-vitaminnivån är tillräckligt hög.

Kombinationen av ovanstående tyder på att en påbjudan om D-vitamintillskott för hela befolkningen sannolikt skulle ha en betydligt bättre effekt än ett oprövat vaccin. D-vitaminet har också andra positiva effekter. D-vitamin i kombination med C-vitamin bör ha en positiv effekt på osteoporos, på ledskador etc.

För personer som förstår engelska så berättar Dr John Campbell om ovanstående rapporter.

Notera!

D-vitamin är fettlösligt och man vet att en kraftiv överdosering kan ge skador, även allvarliga sådana. Ett längre tids intag av över 400 ug D-vitamin är sannolikt farligt. Det torde vara ofarligt att på våra breddgrader ta 50-100ug D-vitamin per dag. Säkrast är naturligtvis att mäta D-vitaminnivån. En önskad nivå ligger på ca. 120 ng/ml.

Jag anklagar

Ovanstående är inte ”raketvetenskap” d.v.s. varje person med ens begränsad tankeförmåga kan sluta sig till ovanstående utgående från tidpunkten för influensaepidemierna. Redan i början av COVID-19 epidemin fick vi rapporter från Kina om att patienterna tenderade att ha mycket låga D- och C-vitaminnivåer. Jag har själv skrivit flera artiklar om C- och D-vitamin under året utgående från självklara observationer. Då jag själv i början av sommaren sannolikt hade en släng av COVID så behandlade jag mig själv med Kinin (TonicWater), D-vitamin, Zink och stora doser C-vitamin. Symptomen försvann på några dagar men jag reagerade på att luktsystemet var utslaget en tid efter detta (jag kunde inte med hjälp av näsan avgöra om en vätska var dieselbränsle eller vatten, det var diesel). Notera att jag inte är läkare och att jag inte testade mig, jag isolerade mig på stugan i två veckor för att undvika att smitta familjen.

Jag anklagar landets myndigheter för att mörka denna information. Jag känner flera läkare som synbarligen på egen hand har dragit sina slutsatser och tar D-vitamintillskott. Mängderna ligger på 50-100ug/dag. Vilka är orsakerna till att D-vitaminets extrema effekt på virusinfektioner inte meddelas över alla media? Notera att effekten är känd inte bara på COVID-19 utan också på i princip alla vanliga ”flunssor”.En bred rekommendation om tillräckliga vitamintillskott av D- och C-vitamin skulle sannolikt på kort tid ge mätbara inbesparingar i sjukvårdskostnaderna genom att de normala årliga influensaepidemierna skulle kunna begränsas betydligt. Notera också att det verkar finnas en klar koppling mellan metabola sjukdomar och dödligheten i COVID-19. Lars Bern har många intressanta artiklar om detta på bloggen anthropocene.live .

  • Minskade komplikationer under vinterns influensaperiod.
  • Minskad depression (C-vitamin) och andra relaterade psykiska problem som är vanliga i samhället.

Har vi igen en koppling mellan politiker, tjänstemän och det medicinindustriella komplexet där billiga verksamma behandlingsmetoder inte är önskvärda medan dyra och oprövade men patenterade mediciner föredras eftersom detta ger klirr i kassan.

 

Miniprojekt: Metronom i klockan

02/09/2020

Jag har köpt en del småsaker, främst elektronik, från Banggood som är ett kinesiskt företag. Hittills har beställningarna kommit ungefär enligt beräknad tid men COVID-19 ställer till med problem. Tidigare beställningar

 
  • Visningar
  • Besökare

leder till att Banggood via facebook synbarligen aktiverar reklam aktuell för mig.

Jag råkade stöta på reklam för en ny aktivitetsklocka Lilygo T-Watch-2020. Klockan är baserad på en ESP32 mikroprocessor med två kärnor. Klockan innehåller WiFi funktionalitet med bl.a. en webbserver och också Bluetooth funktionalitet. Det speciella med den här klockan är att den från början är avsedd att hackas d.v.s. källkoden finns på github och den programmeras direkt över USB-anslutningen.

Då man får en ny programmeringsleksak så uppstår naturligtvis genast problemet med vad man skall göra med apparaten.  Färdiga funktioner är bl. a.

  • Väderapp
  • Stoppklocka
  • Kryptovaluta
  • Navigering via kart-API

Då jag sysslar med folkmusik som hobby så slog det mig att det kunde vara praktiskt att ha en enkel metronom i klockan som innan jag börjar spela ett stycke slår t.ex. tio slag med hjälp av klockans vibrationsmotor. Tanken är alltså inte att jag skulle spela hela stycken med klockan som metronom utan klockan skulle endast upplysa mig om ungefär vilket tempot är, att mentalt tänka sig ett tempo kan ibland leda fel rejält eftersom hjärnan inte i alla sammanhang går i realtid …

Operativsystem

Klockan kör ett kompakt realtidsoperativsystem FreeRTOS som stöder multitasking d.v.s. jag kan köra flera applikationer parallellt. Det är också i princip möjligt att ladda in nya program medan klockan är i gång eller stänga av obehövliga program. Den senare funktionaliteten används inte utan gör jag förändringar så kompilerar jag om rubbet och laddar upp allt som ett paket till klockan.

Man hittar FreeRTOS dokumentation på nätet.

Metronom

Jag plockade hem en klockversion från Github. Då jag ögnade igenom applikationerna som fanns färdigt så såg jag att det fanns en exempel app som inte gjorde någonting men som visade vilken struktur en app har.

Jag beslöt att försöka göra en extremt enkel applikation där användaren använder sig av en slider d.v.s. en funktion där man drar en indikator i sidled för att ställa in tempot. Jag tänkte mig att tempot kan ställas mellan 50 och 200 slag per minut. Det finns inga tekniska problem med att använda lägre tempon men jag uppfattar 50 slg/minut som väldigt långsamt. Då klockan startar är det förinställda värdet 100 slag/minut och klockan kommer ihåg det senast valda värdet mellan olika körningar av appen.

I princip borde applikationen ha varit väldigt enkel att realisera men det visade sig att indikatorhuvudet som samtidigt användes för att visa valt tempo var alltför litet d.v.s. det var svårt att se det valda tempot. Jag försökte kringgå problemet genom att lägga till ett separat textfält som skulle innehålla det valda värdet. Det nya textfältet förorsakade en omedelbar crasch.

Efter att jag två dagar hade slagit huvudet i väggen beslöt jag att byta ut slidern mot en spinbox där man i mitten har ett textfält och på vardera sidan tryckknappar som sänker/höjer det valda värdet. Det var tydligen något problem med slidern för nu fungerade val av tempo som det skulle.

Jag modifierade setupdelen i exempelapplikationen så att man väljer tempot med spinboxen och då man går ur tempofunktionen så gör klockan tio slag i det valda tempot varefter det sker retur till appens huvudnivå.

Call back funktioner

static void exit_example_app_setup_event_cb( lv_obj_t * obj, lv_event_t event );
static void example_app_metr_spinbox_event_cb(lv_obj_t * obj, lv_event_t event );
static void lv_spinbox_increment_event_cb(lv_obj_t * obj, lv_event_t event );
static void lv_spinbox_decrement_event_cb(lv_obj_t * obj, lv_event_t event );

Då användaren trycker på olika funktioner måste användargränssnittet kunna ”skicka signaler” till användarens kod så att den kan köras. För detta ändamål behöver vi såkallade callback funktioner. Om jag t.ex. trycker på knappen ”-” så stegas det valda tempot ner med ett steg (systemet anropar lv_spinbox_decrement_event_cb). Trycker jag på ”+” så stegas värdet upp med ett steg( lv_spinbox_increment_event_cb anropas).

Då jag trycker på återgång till appens huvudnivå så anropas exit_example_app_setup_event_cb. Denna funktion anropar funktionen execute_taps() som vibrerar telefonen tio gånger i önskat tempo.

// Let the metronome do ten taps
static void execute_taps(int taps, int tempo){
  int i;
  int taplen=0;
  int fixed = 100;
  float ms=60000;
  taplen = ms/tempo; 
  // Buzzer pin output BUZZER=4
  for(i=0; i< taps; i++){ 
    pinMode(BUZZER,OUTPUT);
    digitalWrite(BUZZER,ON);
    delay(fixed);
    digitalWrite(BUZZER,OFF);
    delay(taplen-fixed);
  }
}

Spinnboxen

Då klockan programmeras så har man tillgång till ett enkelt grafiskt användargränssnitt lvgl vilket i ytterst hög grad förenklar programmeringen. Problemet är dock att det finns rätt många olika grafiska gränssnitt och det kräver alltid en del läsande att börja använda ett nytt gränssnitt … så även denna gång.

Koden för att sätta upp en spinbox är:

// Create a spinbox center box with value
lv_obj_t *example_app_metr_spinbox_cont = lv_obj_create(example_app_setup_tile,NULL);
lv_obj_set_pos(example_app_metr_spinbox_cont,90,100);
example_app_metr_spinbox = lv_spinbox_create(example_app_metr_spinbox_cont, NULL ); 
lv_spinbox_set_range(example_app_metr_spinbox,50,200);
lv_spinbox_set_digit_format(example_app_metr_spinbox,3,0);
lv_spinbox_set_value(example_app_metr_spinbox,100);
lv_obj_set_event_cb(example_app_metr_spinbox,example_app_metr_spinbox_event_cb);
// Create increment button
lv_coord_t h = lv_obj_get_height(example_app_metr_spinbox);
lv_obj_t * btn = lv_btn_create(example_app_setup_tile, NULL);
lv_obj_set_size(btn, h, h);
lv_theme_apply(btn, LV_THEME_SPINBOX_BTN);
lv_obj_set_style_local_value_str(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_SYMBOL_PLUS);
lv_obj_align(btn, example_app_metr_spinbox, LV_ALIGN_OUT_RIGHT_MID, -20, 0);
lv_theme_apply(btn, LV_THEME_SPINBOX_BTN);
lv_obj_set_style_local_value_str(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_SYMBOL_PLUS);
lv_obj_set_event_cb(btn, lv_spinbox_increment_event_cb);
// Create decrement button
btn = lv_btn_create(example_app_setup_tile, btn);
lv_obj_align(btn, example_app_metr_spinbox, LV_ALIGN_OUT_LEFT_MID, -30, 0);
lv_obj_set_event_cb(btn, lv_spinbox_decrement_event_cb);
lv_obj_set_style_local_value_str(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_SYMBOL_MINUS);

Klockans skärm har upplösningen 240×240 pixlar. Först skapas ett kontext för spinboxen i filen example_app_setup.cpp utgående från specifikationer i appens huvudfönster. Därefter placeras spinnboxen på önskat ställe och programmet ställer in hurudant värdeområde (50-200 slag/minut) som är tillåtna. Programmet ställer också in vilket standardvärde (100 slag/minut) jag vill ha. Därefter skapar jag två tangenter/knappar som stegar spinboxens varde uppåt respektive nedåt.

Grafiska änvändargränssnitt fungerar så att skapade vidgetar själv detekterar om det händer något. I ovanstående fall så kommer tangenterna upp/ner att skicka en ”signal” som säger att en knapptryckning har detekterats. För att programmet skall kunna reagera på knapptryckningen så måste vi definiera såkallade callback funktioner d.v.s. funktioner som användargränssnittet anropar då aktivitet detekteras. I vårt fall är funktionen enkel:

static void lv_spinbox_increment_event_cb(lv_obj_t * obj, lv_event_t event ){
  if(event == LV_EVENT_SHORT_CLICKED || event == LV_EVENT_LONG_PRESSED_REPEAT) {
    lv_spinbox_increment(example_app_metr_spinbox);
  }
}

static void lv_spinbox_decrement_event_cb(lv_obj_t * obj, lv_event_t event ){
  if(event == LV_EVENT_SHORT_CLICKED || event == LV_EVENT_LONG_PRESSED_REPEAT) {
    lv_spinbox_decrement(example_app_metr_spinbox);
  }
}

När spinnboxens kontrollknappar detekterar aktivitet så anropas ifrågavarande funktioner ovan som i sin tur stegar upp spinboxens värde eller stegar ner det.

Aktivera metronomen

Jag valde att aktivera metronomen då man går ut ur inställningen av tempo tillbaka till appens huvudsida. Alternativet skulle ha varit att definiera en separat knapp för att aktivera metronomen. Jag har valt att begränsa antalet slag till tio helt enkelt för att jag uppfattar att jag då har hunnit uppfatta tempot tillräckligt bra.

static void exit_example_app_setup_event_cb( lv_obj_t * obj, lv_event_t event ) {
  switch( event ) {
    case( LV_EVENT_CLICKED ): 
      delay(2000);
      execute_taps(10,lv_spinbox_get_value(example_app_metr_spinbox));
      mainbar_jump_to_tilenumber( example_app_get_app_main_tile_num(), LV_ANIM_ON );
      break;
  }
}

Koden för execute_taps() finns litad tidigare i texten.

Att använda appen

IMGP7532

Fig. 1  Metronomappen syns till höger om väderappen nedanför tiden 20:57.

IMGP7533

Fig. 2  Applikationen metronom (Metr) huvudsida efter att man har valt applikationen genom att trycka på Metr i föregående bild. Kugghjulet leder till val av tempo. I framtiden lägger jag antagligen till t.ex. fyra knappar med fördefinierade tempon på denna sida.

IMGP7534

Fig. 3  Inställning av tempot med en spinbox. Det valda tempot stannar i minnet. Då man väljer retur (trycker på symbolen överst till vänster) så vibrerar telefonen tio gånger i det angivna tempot.

 


Pointman's

A lagrange point in life

THE HOCKEY SCHTICK

Lars Silén: Reflex och Spegling

NoTricksZone

Lars Silén: Reflex och Spegling

Big Picture News, Informed Analysis

This blog is written by Canadian journalist Donna Laframboise. Posts appear Monday & Wednesday.

JoNova

Lars Silén: Reflex och Spegling

Climate Audit

by Steve McIntyre

Musings from the Chiefio

Techno bits and mind pleasers

Bishop Hill

Lars Silén: Reflex och Spegling

Watts Up With That?

The world's most viewed site on global warming and climate change

TED Blog

The TED Blog shares news about TED Talks and TED Conferences.

Larsil2009's Blog

Lars Silén: Reflex och Spegling

%d bloggare gillar detta: