2014-02-13

TEMPer v1.4 USB teploměr drivers

Jako náhradu za každodenní zapisování teploty se v jedné firmě zkouší USB teploměr, který plní funkci datového loggeru. 



A protože je to opět produkt čínské tvořivosti, je to s ovladači trošku zajímavé.

Na Windows 7 nedošlo k automatickému rozpoznání, nicméně Windows 8.1 poznaly, že jde o obecné zařízení HID, které bez odmlouvání připojilo. 


Samotný sběr dat probíhá přes ovládací software TEMPer V24.3, kdy pokročilejší ovladače vlastně nejsou potřeba.


Driver USB WiFi Adapter 8319 802.11N/G/B

Pro použití na testování jsem zakoupil čínskou USB WiFi kartu. Plným jménem zní:
Mini 150Mbps 802.11N/G/B USB 2.0 WiFi Wireless Network LAN Card Adapter 8319

Ovladač pro toto čínské heblo přikládají na CD. To však bohužel nebylo čitelné a tak musím shánět drivery ručně.
Oficiální ovladač pro 8319 lze stahovat z čínské stránky, bohužel jen pro Linux případně Raspberry PI. Tyto jsem nezkoušel.

Předně se mi karta nechytí na Windows 7, což není úplně ideální. Na Windows 8 však již ano. Použije se soubor ovladače netr28ux.inf a jako výrobce adaptéru se zobrazí Ralink.
Ve výsledku se mi podařilo kartu rozchodit s ovladači DWA-160_v2.00.



 

2014-02-12

Atola HDD Capacity Restore Tool

Dostal se mi do rukou externí disk Verbatim 53071 1TB ve kterém dříme 2,5" SATA disk výrobce HGST. Problém byl v rozbitých oddílech, které USB 3.0 mechanismus asi nedokázal skousnout. Připojil jsem tedy disk přes jiný konvertor na USB 2.0, zrušil oddíly a vytvořil jeden nový velký oddíl.

Poté jsem se rozhodl otestovat povrch. Připojil jsem disk SATA kabelem k PC a od té doby jsem jej stabilně viděl jako disk s kapacitou 32 MB. Naštestí existuje na internetu dostatek návodů, které všechny vedou na jeden článek Atoly. Popisuje, jak odemknout / opravit velikost disku.

V mém případě došlo k nějaké variantě "HPA" zamčení. Nepomáhalo nic (jiné PC, jiné připojení), včetně software HDD Capacity Restore. K tomu se ještě dostanu. Nakonec se podařilo velikost obnovit opětovným připojením k desce, která problém způsobila. Zajímavé...

Co jsem chtěl dodat k programu HDD Capacity Restore:
  • permanentně jsem se potýkal s hláškou "error opening driver", jak na železe Windows 7 i 8.1, tak ve virtuálních strojích XP. Pomohlo až připojení k Windows XP běžící na železe (tedy přímo na počítači)
  • program mi nefungoval s USB náhražkami pro připojení 2,5" disků. Korektně byl vidět až když byl připojen SATA kabelem k základní desce stolního počítače.
  • jak jsem zmínil výše, vlastně mi nepomohl.
Tento článek-nečlánek asi váš problém nerozsekne, nicméně možná vás navede správným směrem.

2014-02-10

MAGICSIM 9.0: Error occurs when system read phonebook data from sim card

Příležitostně používám USB SIM reader HL55 čínského původu. Jeho obslužný software MAGICSIM v9.0 nepatří k těm nejodladěnějším. A při čtení kontaktů ze SIMkarty vyskakuje chybová hláška:
Error occurs when system read phonebook data from sim card
Naštěstí už tento problém někdo vyřešil:
  • spusťte SIMeditor
  • spusťte také "Správce úloh systému Windows" záložka "Procesy" (zkratka Ctrl + Shift + Esc)
  • najděte proces SIMeditor.exe
  • vyberte jej pravým tlačítkem a zvolte "Nastavit spřažení"
  • vyskočí okénko ve kterém odškrtněte všechny položky a nechte zatržené pouze jedno jádro (např. Procesor 0)
  • zvolte OK a nyní již čtečka komunikuje bez problému.
Jak jste jistě pochopili, problém způsobují vlákna a pokročilejší zpracování na CPU, které tento starší software nezvládá.

2014-02-07

C/C++ melodie na PC speaker

Při procházení svých starších souborů jsem narazil na nejednu blbinu v jazyce C ze střední školy. Tahle se mi ovšem líbí, tak ji posílám do světa, odkud také pochází.

Je to melodia Crazy frog pro PC speaker počítače. Na novém stroji už mi to sice hraje z reproduktorů, nicméně byly doby, kdy jsem v učebně s pípajícími počítači navozovali dojem pokladem z Tesca.

#include<stdio.h>
#include<conio.h>
#include<windows.h>


void stupnice()
{
    //FREKVENCE - DELKA
    Beep(262,1000); //C
    Beep(294,1000); //D
    Beep(330,1000); //E
    Beep(349,1000); //F
    Beep(392,1000); //G
    Beep(440,1000); //A
    Beep(494,1000); //H
    Beep(523,1000); //C
}
int k = 200;
int main()
{

    Beep(262, 2*k);
    Beep(18311, k/10);
    Beep(311, 2*k);
    Beep(18311, k/10); 
    Beep(262, k/2);
    Beep(18311, k/20);
    Beep(262, k/2);
    Beep(18311, k/10);
    Beep(349, k+30);
    Beep(18311, k/10);
    Beep(262, k);
    Beep(18311, k/10);
    Beep(233, k);
    Beep(18311, k/10);
 
    Beep(262, 2*k);
    Beep(18311, k/10); 
    Beep(392, 2*k);
    Beep(18311, k/10); 
    Beep(262, k/2);
    Beep(18311, k/20);
    Beep(262, k/2);
    Beep(18311, k/10);
    Beep(415, k+30);
    Beep(18311, k/10);
    Beep(392, k);
    Beep(18311, k/10);
    Beep(311, k);
    Beep(18311, k/10);

    Beep(262, k);
    Beep(18311, k/10);
    Beep(392, k);
    Beep(18311, k/10);
    Beep(523, k);
    Beep(18311, k/10);
    Beep(262, k);
    Beep(18311, k/10);
    Beep(233, k);
    Beep(18311, k/10);
    Beep(196, k);
    Beep(18311, k/10);
    Beep(294, k);
    Beep(18311, k/10);
    Beep(262, 2*k);
     
getch();
return(0);
}