Schlagwort-Archive: java

nodemcu and arduino

having such small device, with wifi and many analog and digital i/o ports by hand, is somehow nice. that general purpose input output connectors are known as GPIO….. the loveley mr. wang from hongkong, tower 4, building c had send me that esp8266 v3 (340) board within the second week, directly from china, by airmail.

nodemcu/esp8266
device ports with addresses

that device ( nowerdays called „iot device“ ) can be used as serial bridge, for incomming / outgoing signals. a little more sophisticated is the idea, to send all the data by http with tcp/ip or as udp paket. a lot of traffic can be estimated, beside failure correction , missing paket and other crapy errors, that are common.

pushing a json string that way, triggered, when the value changes, could be more gentle to the chip. the unknown state of the receiver is the pitfall there. using websockets on the nodemcu will work with some message client, like mqtt, is the next climbing. the client subscribes to a master ( tomcat / rabbit mq or pure servlet with extras )  and  delivers the information straight there. the server will handshake the  request with a response, directly to a open port, on the client ip.

should be all, will see, when the code is working as expected. 20 sensors with 50 samples/second could mean 1000 requests per second – commonly. if nodemcu/raspberrypi3 is able to feature all that, is the question for the comming days. the arduino is something one have to learn, how to use  that efficiently is the first step. the next is, to have some java ide, like eclipse ready with java, then tomcat and a dbms or storage engine, like mariadb installed within a virtual machine, with the same debian, that is used for raspberrypi, that is called raspian. then the code delivery or the binaries should work on both enviroments, even if the architecture will differ between amd and arm.

a related story was some years ago, the teensy to get into the mac

kurz pause, drop, stop;

jvm settings, for partly tuning of garbace collection and memory allocation in general

<code>

-Xms384m  // headroom for memory to be free
 -Xmx768m  // all in all memory, to be recycled
 -Xmn2m  // stacksize for heap to 2mb
 -XX:+UseG1GC  // specific gc
 -XX:MaxGCPauseMillis=75  // max timeout in ms.
 -XX:NewRatio=2  // ratio between new and recycled obj
 -XX:SurvivorRatio=4  // ratio for memory to reused
 -XX:MaxNewSize=256m  // max size for new objects
 -XX:MaxPermSize=256m  // permanent max. heap space
 -XX:+UseStringCache  // stringbuilder at its best
 -Xloggc:..\eclipse.logfile.dump.txt  // to external

</code>

errorCodes

while iam trying to reach a cloud instance as db-tier, called dashDB, some side effect of the toolset here, is excentrical and need to be named…i tried with aqua data studio, but that failed as well, while java-8 is working under the hood and that 8 versions from times ago and now, wont play together :/

JAVA RUNTIME ERROR
datastudio with half set home path for that vendor … crashed … oracle – make my day again …
agenity, some proposed query workbench wont work with the current cloud instance…? tells me something about a version, i want dasdb, he means db2v9.0.0.2 – but where to put that driverclass then ?

meanwhile, i have found some equivalent to such tools, called „aginity workbench for dasndb„, also a eclipse based tool.

ext-gwt one page diagram

one is using ext-gwt for the creation of graphical user interfaces, a couple of things are needed, that such construct is maintainable and configurable, from the backend. all sources are written in java and then compiled to javascript. websockets, ajax, all the fancy stuf will be conducted in „object manner“ on that level.

architecture diagram
gui architecture for static content blocks and dynamic inlays

i noticed, that the dynamic part of a page is the minor part, that matters. the static part, with css, js and so on, needs a lot of attention, while coding. so i tryed some 3rd party stuff, with jquery for success.  with“bootstrap“ the div-container are prepared, configured and accesible from the dom-tree and the context in general. the page can be separated with ease and little effort, on version changes. some diagram might help to prepare the page design over all elements.

cubieboard

ich bin jetzt doch n bisschen fickrig geworden auf son kleines scheißboard. da ich ohne rootserver und ohne linux kaum an der eisenbahnplatte ( cloud ) weiter schrauben kann, begeb ich mich auf der suche im netz zu einem versand in de_DE.

entweder ich bin zu aufgeregt, zu unkondensiert oder warum auch immer, ich übersehe, dass die erste generation nur single-core ist, 1 gb ram hat und die netzwerkkarte nur 10/100 mbit/s schafft.  egal, für 50€ bin ich ja im budget des raspberry, aber mit doppelt so viel ram UND einem s-ata anschluss. das genügt mir als entschädigung. als ich das cubieboard in betrieb nehme.

cubie connected
cubieboard connected with sata hdd

auf der suche nach dokumentation, manuals, handbüchern – überhaupt irgendwelchen nützlichen informationen finde ich dann nach einigem suchen auch ein paar images, sie sich für sd-card eignen. ausserdem noch ein passendes „brenn-programm“ was die images da drauf tut. dabei fällt mir auch das ein oder andere image für den onboard-nand in die hände. ich saug erstmal was ich finde und probiere die verschiedenen ubuntu/debian/android versionen sukzessiv aus. einige booten garnicht, andere sind in zig versionen vorhanden – welche nehmen?

also bleibt mir wohl nichts übrig, als die verschiedenen konfigurationen zu checken. im wesentlichen schaue ich auf den treiber für die grafik einheit, also die gpu. dort ist eine mali-gpu verbaut, die direkt von arm stammt. das passenste triebwerk heißt „sunxi“ und ist direkt vom hersteller. die cpu, also der system-on-a-chip ( soc ) ist von allwinner und heißt a10. der schafft wohl 1080p, wie da im datenblatt steht – fragt sich nur mit wieviel frames pro sekunde :p

toll, warum hab ich die letzten monate bei den fights der x-server/clients nicht aufgepasst. mir, wayland, mesa, x11 … man was es da nun alles für zeug gibt. und wie zum henker wuppt man den treiber jetzt in den kernel :/ ich glaub, die frage krieg ich so schnell nicht beantwortet, daher krampf ich nicht weiter rum und mach mit config und install weiter.

einige versuche später bin ich noch nicht klüger, ich weiß zwar jetzt welche pakete so halbwegs laufen und wie man mit dem speicher haushaltet, frisch gebootet verbraucht das ding 80 mb mit xfce dann 180. ist der browser offen, sinds so um die 280 gb. tomcat läuft schon im hintergrund, oracles java ist auch drauf, nur die grafik ruckelt wie sau. von dem gigabyte ram sind 808 mb verfügbar, da bleibt noch ein bisschen luft für arbeitsdaten. jedoch noch kein open.gl, kein videostreaming, kein garnix in der richtung. die cpu auf vollanschlag kotzt, doch der treiber ist wohl noch immer nicht im kernel. muss ich mich jetzt wohl direkt mehr mit beschäftigen…..

cubie housed
cubieboard 1 in plexiglas behausung

tolle wurst, auf der einen seite lockt das ding mit kapazitäten, die eigentlich als settop-box ausreichen sollten und mir das video auf den fernseher streamt, auf der anderen seite könnte ich mir ein mini-nas bauen, da die sata-schnittstelle sowie drei usb anschlüsse platz für erweiterung lassen. aber ohne anständigen grafik-treiber, wirds wohl erstmal nix mit dem streaming-client. nuja, als load-balancer sollte der dampf wohl ausreichen, um die 100 mbit/s zu sätigen. übliche einstiegs-firewall-systeme haben auch nicht mehr und dsl oder vdsl ist derzeit auch nicht wesentlich schneller.