Next Page: 10000

          маяк WSPR-2      Cache   Translate Page      

На данный момент у меня работает маяк в режиме WSPR-2 на основе
ARDUINO .Мощность поднял до P=1VAT ANTENA -длинный провод с крыши 5 этажа вниз на дерево длиной 65 метров.


          Het grote 'show je race-rig' topic      Cache   Translate Page      
Replies: 4781 Last poster: Henkus at 09-02-2019 22:58 Topic is Open Alexxxxxxxxxx schreef op zaterdag 9 februari 2019 @ 16:30: @Henkus Heb je toevallig een linkje welke je gekocht hebt? En sluit je ze rechtstreeks op de motor shield aan of ook op een externe voeding? Werkt simtools beter dan simhub?Geen link, wel een foto van het model Weet niet of simtools beter werkt dan simhub, het werkt bij mij in iedergeval perfect bij alle sims. De seaflows zijn via een motoshield aangesloten op een 12v 20ampere voeding. Gebruik de windsim al meer dan 2 jaar, weet niet of simhub er toen al was Link naar het topic op xsimulator https://www.xsimulator.ne...nd-arduinouno.6876/page-4
          Bluetooth midi controller like iRig Blueboard      Cache   Translate Page      
I need a midi controller similar to an irig BlueBoard Just with 8 buttons. Preferably u can build and code then post to Australia Otherwise if u plan and code, I can build the device (Budget: $30 - $250 USD, Jobs: Arduino, C Programming, Electrical Engineering, Electronics, Microcontroller)
          More than 2 sensors on PX4 ArduCopter      Cache   Translate Page      

@Viktor_Zafirovski wrote:

Is it possible to chain 6 rangefinders (Say, the Benewake TF Mini), straight into PX4 ports and have ArduCopter recognize them for 6 way flow control?

I’m working on a drone that will hopefully avoid crashing into things in an enclosed space and I noticed that even though I can add a rangefinder in any direction, I can only add up to 2 hard coded sensors (As read in mission planner and the official documentation).

I don’t mind reading the sensors on an Arduino Teensy and then feeding that into the single i2c port on the drone, but I need to know whether there is a native way to feed my ArduCopter with 6 sensors worth of data simultaneously for 6 way evasion.

Thank you.

Posts: 3

Participants: 3

Read full topic


          Obstacle avoiding robot      Cache   Translate Page      
I need you to develop some software for me. I would like this software to be developed. (Budget: $750 - $1500 USD, Jobs: Arduino, Software Architecture)
          Electrical Engineer/Systems Engineer - Kroenke Sports Enterprises - Fort Worth, TX      Cache   Translate Page      
Computer languages, supporting several microcontroller languages including (machine code, Arduino, .NET, ATMEL, Python, PASCAL, C++, Ladder, Function Block)....
From Kroenke Sports Enterprises - Sat, 13 Oct 2018 18:16:18 GMT - View all Fort Worth, TX jobs
          Obstacle avoiding robot      Cache   Translate Page      
I need you to develop some software for me. I would like this software to be developed. (Budget: $750 - $1500 USD, Jobs: Arduino, Software Architecture)
          Edit and finish HTML CSS Javascript Site and Photoshop images.      Cache   Translate Page      
Website framework has been built and all texts and images are present. Tasks to be done: Edit the website to allow for 2-3 more scroll-able sections (1 page) duplicate site features in multiple sections... (Budget: $30 - $250 USD, Jobs: Arduino, C Programming, Electrical Engineering, Electronics, Microcontroller)
          Sauguino - die vollautomatische Plattenwaschmaschine      Cache   Translate Page      

Zwischen den Jahren hatte ich endlich mal ein bisschen Zeit und hab mich an ein lange wartendes Bastelprojekt gemacht... eine Plattenwaschmaschine. Die Threads hier zu den Bastelprojekten haben mich ungemein inspiriert, allein ich wollte es so komfortabel wie nur irgend möglich, denn mir verging bei den manuellen Methoden meist nach drei oder vier Platten die Lust am Waschen.

Sauguino PWM - the comfortable automatic record washer from Friedemann Wachsmuth on Vimeo.

Als Basis diente ein alter Dual 1226, den ich extra dafür angeschafft hatte (5,- EUR in der Amateurbucht). Sein Reibradantrieb hat mächtig Drehmoment. :) Ansonsten gab's als Anschaffung nur noch die Pollin-Vakuumpumpe (9,95) und einen Arduino Micro für die Steuerung (20,-). Nahezu alle anderen Teile flogen in Bastelkisten rum oder kosteten nur Cents (wie die mir ausgegangenen 2k2 Widerstände...)

Mein Ziel war es, den Plattenwaschprozess so weit wie möglich zu automatisieren, damit man nicht ständig daneben sitzen muss. Dazu brauchts folgende Aktoren:
- Natürlich den Plattenspielermotor zum Drehen
- Elektromagnet, um die Bürste (ich nehm dieses Clearaudio Samt-Teil) hochzuklappen
- Vakuupumpe für Punktabsaugung
- Elektromagnet, um den Tonarm anheben zu können (ungedämpft reicht...)
- Servo, um den Tonarm einigermaßen genau steuern zu können

Dazu hab ich den Dual erstmal kräftig zerlegt -- leider hatte ich während der Bastelei keine Lust auf Fotos.
Auf diesem Nachher-Bild kann man die Umbauten aber ganz gut erkennen:

1: Als erstes habe ich Platinenfedern rausgerissen. Eine PWM muss schliesslich nicht entkoppelt sein. Das Chassis liegt jetzt einfach auf einem Streifen Tesa Moll, so läuft auch kein Wasser unten ins Gehäuse.

2: Die Hebel und Teile für Antiskating, Lift und Start/Stop habe ich alle entfernt. Den Tonarm steuere ich jetzt selber, den Plattentellermotor ebenso. Ausserdem lieferte das mir einige praktische Teile, die ich zweckentfremden konnte :)
Der 33/45-Wähler ist geblieben. Schadet nicht. Im Moment wasche ich mit 45 upm.

3: Diese Wippe wird an sich durch die Steuerscheibe (gelb) bewegt und gedrückt und bewegt dadurch den Tonarm. Da ich die Steuerscheibe nicht ausgebaut bekommen habe, habe ich den Wippendrehpunkt ein Stück nach aussen versetzt, das Ding ein bisschen zurecht gehobelt und einen kleinen Elektromagnet (5) drunter geklebt. Zieht der an, hebt sich der Tonarm. Das Silikonöl musste ich allerdings fluten, damit dessen Kraft reicht. Der Magnet stammt aus irgendeinem alten Kassettenrekorder...

4: Der Dremel und die Trennscheibe haben Platz für einen Mini-Servo geschnitten, der jetzt oben unterm Tonarm rausguckt (s.u.). Ein Stück vom alten Automatikgestänge war nahezu perfekt geformt, um den Tonarm mittels Servo über die ganze Platte hin und her zu bewegen. Die Wippe (3) musste ich ein bisschen zurecht sägen, damit sie nicht mit dem Steuerarm ins Gehege kommt. Beachtlich, wie viel Kraft so ein Servo hat und wie oft er einem die schönsten Basteleien flugs wieder zerlegt...

6: Hier drin sitzt der Schalter für den Motor. Ich hab mich einfach auf dessen Kontakte gelötet, das Kabel zugentlastet durchgeführt und die Kappe wieder drauf geschraubt. Das Schalten übernimmt jetzt ein Relais -- das einzige mit 230V drauf.

7: Der silberne Hebel wird an sich von der Steuerscheibe bewegt und tut Zweierlei: Reibrad an den Teller legen und den Motor an- und ausschalten. Ich hab die kleine Feder einfach so umgehängt, dass das Reibrad jetzt immer anliegt.

Der keine Billigservo, der den Tonarm hin und her bewegt. Genutzt werden ca. 160° seines Weges.

Der Bürstenhalter war etwas Frickelei in Buche. Nut gefräst für die Clearaudio-Bürste, mittig aufgehängt, um gleichmässigen Andruck zu gewährleisten. Der E-Magnet (auch Pollin) hat mächtig Wumms. An sich zieht er auch noch gegen eine straffe Feder an, mit der hätte die Bürste dann ordentlichen Andruck auf der Platte gehabt. Zum einen war das aber zu viel, zum anderen zieht er unter Last mehr als 3A bei 12V und das schafft mein Netzteil nicht auf Dauer. Daher habe ich die Feder entfernt und sorge für den Andruck mit ein paar Pfundmünzen. :) Wenn er einmal angezogen hat, ist die Bürste durch eine gewisse Verkantung stabil hochgeklappt. Schiebt man die Scheibe mit dem Griff hoch, liegt die Bürste wieder auf. Nachdem ich das Holz schön gewachst habe, quillt es auch nicht mehr auf und sorgt für Verkantungen...

Die Absaugdüse hat sich auch mit der Zeit ergeben -- funktioniert jetzt aber so gut, dass ich sie so lasse. Basis ist ein Chupachup-Lollystil (leicht angekaut). Unten dran ist ein Stück ganz weicher Silikonschlauch, der perfekt über die Platte rutscht, auch wenn gut dran gesaugt wird. Zusammen mit der Reinigungsflüssigkeit flutscht das so glatt, dass ich mir den üblichen Faden gespart habe. Löcher und Führung für einen Faden sind vorhanden, das Trockenergebnis ist aber ohne Faden viel besser und ich ziehe keinen Schmodder im Faden durch die frisch gereinigten Rillen. War mir so sympathischer.

Rechts die Bedieneinheit... 4 Taster durch ein Stück Sperrholz gesteckt. Die Plastikwanne des Dual ist über 1 cm dick, da bekam ich keine Schalter drin montiert. Das Sperrholzbrettchen ist einfach mit schwarzem Tesaband überzogen (Lack trocknet immer so lange). Die 7-Segment-Anzeige für die gewünschte Waschdauer ist so hell, dass die magisch durch das Tesaband durchscheint. Sieht ungewollt ziemlich cool aus und man sieht meine Sägekunst nicht so. :)

Nochmal das Bedien-Panel:

Blick in die Zarge. Mit etwas Trickserei habe ich alles in der Zarge direkt unterbringen können, nur das Abscheiderglas nicht. Aber das will man ja auch sehen. :) Praktisch ist, dass die PWM so echt kompakt geworden ist und prima auf dem Geraffelschrank stehen kann. Links hinten die Pollin-Saugpumpe. (Wenn man beide Ventile anzieht, saugt sie auch. Doh.) Rechts vorne sieht man den Rand eines alten Notebook-Netzteils... 12V und ca. 3.5A -- bis auf den Plattentellermotor wird damit alles angetrieben und versorgt. Rechts auf der Lochrasterplatine die Intelligenz des ganzen:

Links in blau der Arduino Micro. Das ist ein ganz einfacher, praktischer Atmel-Mikrocontroller, den man sehr simpel mit C programmieren kann und so einfach auch komplexe Steuer- und Regelvorgänge abbilden kann. Er steuert vor allem die vier Relais (jeweils über einen BC548 und Freilaufdiode), zum anderen aber auch das 7-Segment-Display. Dessen "Treiber" ist links oben ein CMOS 4511, das für BCD-Codes die richtigen LEDs ansteuert. Hätte der Arduino auch direkt gekonnt, aber so spart man ein paar Leitungen und ich hatte noch ein 4511. :) Eingangsseitig sind nur die 4 Taster angeschlossen. Ach ja, und den Servo steuert der Arduino auch direkt an (sehr komfortabel).

So sieht der Sauguino komplett aus. Die Saugdüse habe ich abgenommen, damit der Schlauch nicht verknickt. Im Regal kommt das Joghurtglas natürlich noch ab. Den zentralen An/Ausschalter muss man etwas suchen, aber nur hier war die Zarge dünn genug. :)


          Edit and finish HTML CSS Javascript Site and Photoshop images.      Cache   Translate Page      
Website framework has been built and all texts and images are present. Tasks to be done: Edit the website to allow for 2-3 more scroll-able sections (1 page) duplicate site features in multiple sections... (Budget: $30 - $250 USD, Jobs: Arduino, C Programming, Electrical Engineering, Electronics, Microcontroller)
          Raspberry Pi, Jukebox project: Magstripes beschrijven?      Cache   Translate Page      
Replies: 2 Last poster: kitao at 10-02-2019 01:46 Topic is Open Ben een paar jaar terug ook bezig geweest met RF-kaarten, staat ergens in Arduino topic dus vind wel leuk om zoiets weer tegen te komen. Maar ben sinds ruim een maand met C++ bezig en niet meer met micro's behalve dan soms virtueel op Thinkercad om te kijken of ik de programma's daarvan al iets beter snap. Kwam wel deze tegen via smart card en dan afbeeldingen : https://www.cooking-hacks...-nfc-rfid-13-56mhz/#step1 Maar ik geef toe, de kaartlezer ziet er compleet anders uit als bij jou op de foto. Toch mss best handige website, is ook toepasbaar op Raspberry en de code staat er ook bij zo te zien. Ik kwam meteen ook deze tegen en die gaat over hetzelfde project als van jou maar daarin staat "Each card came with a pre-set ID code'' https://www.theverge.com/...ipeable-cards-chris-patty Deze lijkt meer op jouw kaartlezer en is een read/write model zoals SA007 al aangaf. Zit ook documentatie bij maar valt alleen te bezien na downloaden en dat heb ik niet gedaan. https://www.cooking-hacks.com/magnetic-card-reader-writer Via trefwoord 'swipe card reader raspberry' + afbeeldingen geeft het nog diverse andere suggesties, zoals adafruit, hoewel je die waarschijnlijk zelf al tegengekomen was, maar meer als dit advies heb ik momenteel niet. https://www.adafruit.com/product/854
          Play Chess Like Harry Potter      Cache   Translate Page      

If you are a Harry Potter fan, you might remember that one of the movies showed an Isle of Lewis chess set whose pieces moved in response to a player’s voice commands. This feat has been oft replicated by hackers and [amoyag00] has a version that brings together a Raspberry Pi, Arduino, Android, and the Stockfish chess engine in case you want to play by yourself. You can see a video of the game, below.

Interestingly, the system uses Marlin — the 3D printing software — to handle motion using the Arduino. We suppose moving chess pieces over a path …read more


          Electrical Engineer/Systems Engineer - Kroenke Sports Enterprises - Fort Worth, TX      Cache   Translate Page      
Computer languages, supporting several microcontroller languages including (machine code, Arduino, .NET, ATMEL, Python, PASCAL, C++, Ladder, Function Block)....
From Kroenke Sports Enterprises - Sat, 13 Oct 2018 18:16:18 GMT - View all Fort Worth, TX jobs
          Raspberry pi to ESP8266 communication      Cache   Translate Page      
I need someone who can make a stable communication between Raspberry Pi and ESP8266 (2 way communication). (Budget: ₹600 - ₹1500 INR, Jobs: Arduino, MQTT, Raspberry Pi)
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
PariuriSportive model Admin.class package model; public class Admin extends User { private String parola; public Admin() { } public Admin(String nume, int id, String rank, String parola) { super(nume, id, rank); this.parola = parola; } public String getParola() { return this.parola; } public void setParola(String parola) { this.parola = parola; } public String toString() { return "Admin{" + super.toString() + "parola='" + this.parola + '\'' + '}'; } } Pariu.class package model; public class Pariu implements Comparable { private double cota; private int id; private String detalii; public Pariu() { } public Pariu(double cota, int id, String detalii) { this.cota = cota; this.id = id; this.detalii = detalii; } public double getCota() { return this.cota; } public void setCota(double cota) { this.cota = cota; } public int getId() { return this.id; } public void setId(int id) { this.id = id; } public String getDetalii() { return this.detalii; } public void setDetalii(String detalii) { this.detalii = detalii; } public String toString() { return "Pariu{cota=" + this.cota + ", id=" + this.id + ", detalii='" + this.detalii + '\'' + '}'; } public int compareTo(Pariu o) { if (this.cota o.cota ? 1 : 0; } } public boolean equals(Object o) { if (this == o) { return true; } else if (o != null && this.getClass() == o.getClass()) { Pariu pariu = (Pariu)o; return this.id == pariu.id; } else { return false; } } } User.class package model; public class User { private String nume; private int id; private String rank; public User() { } public User(String nume, int id, String rank) { this.nume = nume; this.id = id; this.rank = rank; } public String getNume() { return this.nume; } public void setNume(String nume) { this.nume = nume; } public int getId() { return this.id; } public void setId(int id) { this.id = id; } public String getRank() { return this.rank; } public void setRank(String rank) { this.rank = rank; } public String toString() { return "User{nume='" + this.nume + '\'' + ", id=" + this.id + ", rank=" + this.rank + '}'; } public boolean equals(Object o) { if (this == o) { return true; } else if (o != null && this.getClass() == o.getClass()) { User user = (User)o; return this.id == user.id; } else { return false; } } } repository IRepo.class package repository; import java.util.List; public interface IRepo { void adauga(T var1) throws Exception; void sterge(T var1) throws Exception; boolean cauta(T var1); void modifica(T var1) throws Exception; T getPozitie(int var1) throws Exception; List getAll(); } Repository.class package repository; import java.util.ArrayList; import java.util.List; public class Repository implements IRepo { private List pariuri = new ArrayList(); public Repository() { } public void adauga(T pariu) throws Exception { if (this.pariuri.contains(pariu)) { throw new Exception("Element existent!"); } else { this.pariuri.add(pariu); } } public void sterge(T pariu) throws Exception { if (!this.pariuri.contains(pariu)) { throw new Exception("Element inexistent"); } else { this.pariuri.remove(pariu); } } public boolean cauta(T pariu) { return this.pariuri.contains(pariu); } public void modifica(T pariu) throws Exception { if (!this.pariuri.contains(pariu)) { throw new Exception("Element inexistent"); } else { int poz = this.pariuri.indexOf(pariu); this.pariuri.set(poz, pariu); } } public T getPozitie(int poz) throws Exception { if (poz >= 0 && poz < this.pariuri.size()) { return this.pariuri.get(poz); } else { throw new Exception("pozit ie invalida"); } } public List getAll() { return new ArrayList(this.pariuri); } } RepositoryAdmin.class package repository; import model.Admin; public class RepositoryAdmin extends Repository { private static RepositoryAdmin instance; private RepositoryAdmin() { } public static RepositoryAdmin getInstance() { if (instance == null) { instance = new RepositoryAdmin(); } return instance; } } RepositoryPariu.class package repository; import model.Pariu; public class RepositoryPariu extends Repository { private static RepositoryPariu instance; private RepositoryPariu() { } public static RepositoryPariu getInstance() { if (instance == null) { instance = new RepositoryPariu(); } return instance; } } RepositoryUser.class package repository; import model.User; public class RepositoryUser extends Repository { private static RepositoryUser instance; private RepositoryUser() { } public static RepositoryUser getInstance() { if (instance == null) { instance = new RepositoryUser(); } return instance; } } service PariuController.class package service; import java.util.List; import model.User; import repository.RepositoryAdmin; import repository.RepositoryPariu; import repository.RepositoryUser; import validare.ValidatorUser; public class PariuController { private RepositoryAdmin repositoryAdmin; private RepositoryUser repositoryUser; private RepositoryPariu repositoryPariu; private ValidatorUser validatorUser; public PariuController(RepositoryAdmin repositoryAdmin, RepositoryUser repositoryUser, RepositoryPariu repositoryPariu) { this.repositoryAdmin = repositoryAdmin; this.repositoryUser = repositoryUser; this.repositoryPariu = repositoryPariu; this.validatorUser = new ValidatorUser(); } public void addUser(String nume, int id, String rank) throws Exception { User user = new User(nume, id, rank); this.validatorUser.valideaza(user); this.repositoryUser.adauga(user); } public List getAllUser() { return this.repositoryUser.getAll(); } } UI Console.class package UI; import java.util.Iterator; import java.util.List; import java.util.Scanner; import model.User; import service.PariuController; public class Console { private PariuController pariuController; public Console(PariuController pariuController) { this.pariuController = pariuController; } private void showOptions() { System.out.println("1.Adauga user"); System.out.println("2.Afiseaza users"); System.out.println("x.exit"); } public void run() { Scanner scanner = new Scanner(System.in); while(true) { this.showOptions(); System.out.println("Alege o optiune! "); String opt = scanner.next(); if (opt.equals("x")) { return; } if (opt.equals("1")) { this.UIadd(scanner); } if (opt.equals("2")) { this.UIprint(); } } } private void UIprint() { List users = this.pariuController.getAllUser(); Iterator var2 = users.iterator(); while(var2.hasNext()) { User user = (User)var2.next(); System.out.println(user); } } private void UIadd(Scanner scanner) { System.out.println("dati nume: "); String nume = scanner.next(); System.out.println("dati id: "); int id = scanner.nextInt(); System.out.println("dati rank: "); String rank = scanner.next(); try { this.pariuController.addUser(nume, id, rank); } catch (Exception var6) { System.out.println(var6.getMessage()); } } } validare IValidator.class package validare; public interface IValidator { void valideaza(T var1) throws Exception; } ValidatorUser.class package validare; import java.util.ArrayList; import java.util.List; import model.User; public class ValidatorUser implements IValidator { private List ranks = new ArrayList() { { this.add("novice"); this.add("experimentat"); this.add("veteran"); } }; public ValidatorUser() { } public void valideaza(User user) throws Exception { String exceptii = ""; if (user.getNume().equals("")) { exceptii = exceptii + "nume invalid!\n"; } if (user.getId() < 1) { exceptii = exceptii + "id invalid!\n"; } if (!this.ranks.contains(user.getRank())) { exceptii = exceptii + "rank invalid!\n"; } if (exceptii.length() != 0) { throw new Exception(exceptii); } } } Main.class \\trebuie sa fie direct sub model import UI.Console; import model.Pariu; import repository.RepositoryAdmin; import repository.RepositoryPariu; import repository.RepositoryUser; import service.PariuController; public class Main { public Main() { } public static void main(String[] args) throws Exception { Pariu[] pariuri = new Pariu[]{new Pariu(1.25D, 1, "primul pariu"), new Pariu(0.75D, 2, "al 2-lea pariu"), new Pariu(1.55D, 3, "al 3-lea pariu"), new Pariu(1.25D, 4, "al 4-lea pariu"), new Pariu(0.25D, 5, "al 5-lea pariu")}; RepositoryUser repositoryUser = RepositoryUser.getInstance(); RepositoryAdmin repositoryAdmin = RepositoryAdmin.getInstance(); RepositoryPariu repositoryPariu = RepositoryPariu.getInstance(); PariuController pariuController = new PariuController(repositoryAdmin, repositoryUser, repositoryPariu); Console console = new Console(pariuController); console.run(); } }
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
prima incercare model Caine.class public class Caine { private String rasa; private int varsta; private double greutate; public Caine() { rasa = null; varsta = -1; greutate =0; } public Caine(String rasa, int varsta, double greutate) { this.rasa = rasa; this.varsta = varsta; this.greutate = greutate; } public String getRasa() { return rasa; } public void setRasa(String rasa) { this.rasa = rasa; } public int getVarsta() { return varsta; } public void setVarsta(int varsta) { this.varsta = varsta; } public double getGreutate() { return greutate; } public void setGreutate(double greutate) { this.greutate = greutate; } @Override public String toString() { return rasa+" "+varsta+" "+greutate; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null || getClass() != obj.getClass()) return false; Caine c = (Caine)obj; return this.rasa == c.rasa; } } CainePedigree.class public class CainePedigree extends Caine{ private double pedigree; public double getPedigree() { return pedigree; } public void setPedigree(double pedigree) { this.pedigree = pedigree; } public CainePedigree(double pedigree) { super(); this.pedigree = pedigree; } public CainePedigree(String rasa, int varsta, double greutate, double pedigree) { super(rasa, varsta, greutate); this.pedigree = pedigree; } @Override public String toString() { return super.toString()+ " " + pedigree; } } repository Main.class public class Main { public static void main(String [ ] args) { Caine c = new Caine("zolly",23,34.56); Caine v = new Caine("zolly",23,34.56); System.out.println(c.equals(v)); System.out.println(c.equals(3)); List l = new ArrayList(); List ints = new ArrayList(); IRepo ir = new Repository(); // Caine cp = new CainePedigree("Pitbul", 12, 20, 1); CainePedigree cp = new CainePedigree("Pitbul", 12, 20, 1); l.add(cp); for (Caine ccc: l) { if (ccc instanceof CainePedigree){ CainePedigree cop = (CainePedigree)ccc; System.out.println(cop.getPedigree()); }else{ System.out.println(ccc); } } CainePedigree cpd = (CainePedigree) cp; IRepo iir = new Repository(); System.out.println("Hello"); System.out.println(c); IRepo repo = new Repository(); try { repo.add(new Integer(3)); repo.add(new Caine()); repo.add(new Object()); } catch (Exception e) { System.out.println(e.getMessage());; } } }
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
filme Film.class import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Main { public Main() { } public static void main(String[] args) { Film gigi = new Film("Titan", " Ciprianov", 2000); FilmPremiat fp = new FilmPremiat("JJJJ", "efefef", 12234, 0); List lst = new ArrayList(); lst.add(gigi); lst.add(fp); for(int i = 0; i < lst.size(); ++i) { System.out.println(lst.get(i)); } Iterator var6 = lst.iterator(); while(var6.hasNext()) { Film f = (Film)var6.next(); System.out.println(f); } } } FilmPremiat.class public class FilmPremiat extends Film { private int nrPremii; public FilmPremiat(String titlu, String regizor, int anul, int nrPremii) { super(titlu, regizor, anul); this.nrPremii = nrPremii; } public FilmPremiat(int nrPremii) { this.nrPremii = nrPremii; } public int getNrPremii() { return this.nrPremii; } public void setNrPremii(int nrPremii) { this.nrPremii = nrPremii; } public String toString() { return super.toString() + " " + this.nrPremii; } } Main.class import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Main { public Main() { } public static void main(String[] args) { Film gigi = new Film("Titan", " Ciprianov", 2000); FilmPremiat fp = new FilmPremiat("JJJJ", "efefef", 12234, 0); List lst = new ArrayList(); lst.add(gigi); lst.add(fp); for(int i = 0; i < lst.size(); ++i) { System.out.println(lst.get(i)); } Iterator var6 = lst.iterator(); while(var6.hasNext()) { Film f = (Film)var6.next(); System.out.println(f); } } }
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
catalog_l2 model BaseEntity.Class package ro.ntt.catalog.model; public class BaseEntity { private ID id; public BaseEntity(ID id) { this.id = id; } public ID getId() { return this.id; } public void setId(ID id) { this.id = id; } public String toString() { return "BaseEntity{id=" + this.id + '}'; } } Student.Class package ro.ntt.catalog.model; public class Student extends BaseEntity { private String serialNumber; private String name; private int group; public Student(Long id, String serialNumber, String name, int group) { super(id); this.serialNumber = serialNumber; this.name = name; this.group = group; } public String getSerialNumber() { return this.serialNumber; } public void setSerialNumber(String serialNumber) { this.serialNumber = serialNumber; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public int getGroup() { return this.group; } public void setGroup(int group) { this.group = group; } public boolean equals(Object o) { if (this == o) { return true; } else if (o != null && this.getClass() == o.getClass()) { Student student = (Student)o; if (this.group != student.group) { return false; } else { return !this.serialNumber.equals(student.serialNumber) ? false : this.name.equals(student.name); } } else { return false; } } public int hashCode() { int result = this.serialNumber.hashCode(); result = 31 * result + this.name.hashCode(); result = 31 * result + this.group; return result; } public String toString() { return "Student{serialNumber='" + this.serialNumber + '\'' + ", name='" + this.name + '\'' + ", group=" + this.group + "} " + super.toString(); } } repository InMemoryRepository.Class package ro.ntt.catalog.repository; import java.util.HashMap; import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.Map.Entry; import java.util.function.BiFunction; import java.util.function.Function; import java.util.stream.Collectors; import ro.ntt.catalog.model.BaseEntity; public class InMemoryRepository<ID, T extends BaseEntity> implements Repository { private Map entities = new HashMap(); public InMemoryRepository() { } public Optional findOne(ID id) { if (id == null) { throw new IllegalArgumentException("id must not be null"); } else { return Optional.ofNullable(this.entities.get(id)); } } public Iterable findAll() { Set allEntities = (Set)this.entities.entrySet().stream().map(Entry::getValue).collect(Collectors.toSet()); return allEntities; } public Optional save(T entity) { if (entity == null) { throw new IllegalArgumentException("id must not be null"); } else { return Optional.ofNullable(this.entities.putIfAbsent(entity.getId(), entity)); } } public Optional delete(ID id) { if (id == null) { throw new IllegalArgumentException("id must not be null"); } else { return Optional.ofNullable(this.entities.remove(id)); } } public Optional update(T entity) { if (entity == null) { throw new IllegalArgumentException("entity must not be null"); } else { return Optional.ofNullable(this.entities.computeIfPresent(entity.getId(), (k, v) -> { return entity; })); } } } Repository.Class package ro.ntt.catalog.repository; import java.util.Optional; import ro.ntt.catalog.model.BaseEntity; public interface Repository<ID, T extends BaseEntity> { Optional findOne(ID var1); Iterable findAll(); Optional save(T var1); Optional delete(ID var1); Optional update(T var1); } StudentXmlRepository.class package ro.ntt.catalog.repository; import java.util.Iterator; import java.util.List; import java.util.Optional; import ro.ntt.catalog.model.Student; public class StudentXmlRepository extends InMemoryRepository { private String fileName; public StudentXmlRepository(String fileName) { this.fileName = fileName; this.loadData(); } private void loadData() { List students = null; Iterator var2 = ((List)students).iterator(); while(var2.hasNext()) { Student student = (Student)var2.next(); super.save(student); } } public Optional save(Student entity) { Optional optional = super.save(entity); return optional.isPresent() ? optional : Optional.empty(); } } service StudentService.class package ro.ntt.catalog.service; import java.util.HashSet; import java.util.Set; import java.util.function.Consumer; import ro.ntt.catalog.model.Student; import ro.ntt.catalog.repository.Repository; public class StudentService { private Repository studentRepository; public StudentService(Repository studentRepository) { this.studentRepository = studentRepository; } public void addStudent(Student student) { this.studentRepository.save(student); } public Set getAllStudents() { Set students = new HashSet(); this.studentRepository.findAll().forEach((student) -> { students.add(student); }); return students; } } ui package ro.ntt.catalog; import ro.ntt.catalog.model.Student; import ro.ntt.catalog.repository.InMemoryRepository; import ro.ntt.catalog.repository.Repository; import ro.ntt.catalog.service.StudentService; import ro.ntt.catalog.ui.Console; public class Main { public Main() { } public static void main(String[] args) { Repository studentRepository = new InMemoryRepository(); StudentService studentService = new StudentService(studentRepository); Console console = new Console(studentService); console.runMenu(); System.out.println("bye"); } }
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
model
          Comentariu la Arduino – platformă gratuită pentru pasionații de electronică de către mihai      Cache   Translate Page      
model
          Ardunio and mpu 6050 for gait analysis      Cache   Translate Page      
It is gait analysis based project. I want to be able to read data using mpu 6050 sensor and to convert them to more understandable graphs to see the gait cycle. (Budget: $250 - $750 USD, Jobs: Arduino, Electrical Engineering, Electronics, Microcontroller)
          Ardunio and mpu 6050 for gait analysis      Cache   Translate Page      
It is gait analysis based project. I want to be able to read data using mpu 6050 sensor and to convert them to more understandable graphs to see the gait cycle. (Budget: $250 - $750 USD, Jobs: Arduino, Electrical Engineering, Electronics, Microcontroller)
          Ardunio and mpu 6050 for gait analysis      Cache   Translate Page      
It is gait analysis based project. I want to be able to read data using mpu 6050 sensor and to convert them to more understandable graphs to see the gait cycle. (Budget: $250 - $750 USD, Jobs: Arduino, Electrical Engineering, Electronics, Microcontroller)
          Play Chess Like Harry Potter      Cache   Translate Page      

If you are a Harry Potter fan, you might remember that one of the movies showed an Isle of Lewis chess set whose pieces moved in response to a player’s voice commands. This feat has been oft replicated by hackers and [amoyag00] has a version that brings together a Raspberry Pi, Arduino, Android, and the Stockfish chess engine in case you want to play by yourself. You can see a video of the game, below.

Interestingly, the system uses Marlin — the 3D printing software — to handle motion using the Arduino. We suppose moving chess pieces over a path …read more


          code for line following robot      Cache   Translate Page      
I have a robot with the following components: -2 motors (wheels) -arduino uno -line following array sensor -motor driver i want a code that will be able to follow a line with 90 degrees turns and dashes with good speed... (Budget: $8 - $15 USD, Jobs: Arduino, Robotics)
          Черно-белое (1 выпуск) [14/09/2014] / 2014 / SATRip      Cache   Translate Page      
Категория: Текстовые книги
Размер: 689.94 MB
Статус: 0 раздающий(их) и 0 качающих(ий)
Добавлен: 2014-10-05 09:57:12
Описание:
Название: 25 крутых проектов с Arduino
Автор: Марк Геддес
Год: 2019

Жанр: Электроника

Описание: Автор книги, Марк Геддес, – энтузиаст Arduino и преподаватель с десятилетним стажем. В своем самоучителе он собрал 25 уникальных проектов, собирая которые можно освоить азы работы с популярным конструктором. В книгу вошли инструкции по созданию таких проектов, как: детектор призраков, монитор полива цветов, дискотечный стробоскоп, световой диммер, ракетная пусковая установка, детектор привидений, предсказатель судьбы и многие другие.

          Electrical Engineer/Systems Engineer - Kroenke Sports Enterprises - Fort Worth, TX      Cache   Translate Page      
Computer languages, supporting several microcontroller languages including (machine code, Arduino, .NET, ATMEL, Python, PASCAL, C++, Ladder, Function Block)....
From Kroenke Sports Enterprises - Sat, 13 Oct 2018 18:16:18 GMT - View all Fort Worth, TX jobs
          Electrical Engineer/Systems Engineer - Kroenke Sports Enterprises - Fort Worth, TX      Cache   Translate Page      
Computer languages, supporting several microcontroller languages including (machine code, Arduino, .NET, ATMEL, Python, PASCAL, C++, Ladder, Function Block)....
From Kroenke Sports Enterprises - Sat, 13 Oct 2018 18:16:18 GMT - View all Fort Worth, TX jobs
          Elegoo UNO Project Super Starter Kit with Tutorial for Arduino only $28.00      Cache   Translate Page      
Elegoo UNO Project Super Starter Kit with Tutorial for Arduino
Get Elegoo UNO Project Super Starter Kit with Tutorial for Arduino for only $28.00.

Compare: eBay.com ($46.94)

Tagged as: EL-KIT-003 | ELKIT003 | 746591610623 | Computer Accessories

Click here for complete deal detail and steps on how to get it.

Share this deal with your friend/family by sending them this URL: https://www.edealinfo.com/d/00746591610623/Elegoo-UNO-Project-Super-Starter-Kit-with-Tutorial-for-Arduino

Checkout eDealPC.com to find best deals on Laptop, Desktop, All-in-One & Sever configurations that YOU select directly from Dell, Lenovo, Acer and Apple. Click here to check it out.
          read data with Arduino ESP8266 from a device over ModbusTCP      Cache   Translate Page      
I need an esp8266 to read data form a device having following parameters: ip address - 10.10.11.24 (or any IP I need) modbus tcp port - 502 (or any port..) ID 01 (or chose other) start address 1 Type... (Budget: €8 - €30 EUR, Jobs: Arduino, Electronics, Microcontroller, Software Architecture, Web Hosting)
          Atmel Studio 7.0.1645 190210      Cache   Translate Page      

Atmel Studio 7.0.1645 190210
[center]
http://www.hostpic.org/images/1712042146180093.jpg

Atmel Studio 7.0.1645 | 913.8 mb

Atmel Corporation, a worldwide leader in the design and manufacture of microcontrollers, capacitive touch solutions, advanced logic, mixed-signal, nonvolatile memory and radio frequency (RF) components, has released an updated version of integrated development platform (IDP) for developing and debugging Atmel SMART ARM-based and Atmel AVR microcontroller (MCU) - Atmel Studio 7.0.
[/center]

[center]
Atmel Studio 7.0.1645 contains:

* Atmel Software Framework 3.35.1.898
* Support for devices:
- ATmega4808, ATmega4809
- ATtiny1614, ATtiny3214, ATtiny3216, ATtiny3217
- ATSAMC[20|21][J|N][15|17|18]A
- ATSAMD20[E|G|J][14|15|16]B
- ATSAMD51[G|J|N|P][18|19|20]A
- ATSAME[51|53|54][J|N][18|19|20]
- ATSAME70[N|Q][19|20|21]B
- ATSAMS70[J|N|Q][19|20|21]B

* AVR 8-bit GCC Toolchain 3.6.1
* ARM GCC Toolchain 6.3.1 with upstream versions:o gcc (ARM/embedded-6-branch revision 249437), GNU ARM Embedded Toolchain: 6-2017-q2-update
* Atmel Studio 7.0.1645 contains fixes for the following issues that were present in 7.0.1417:
- AVRSV-7798: Tiny817 fuse programming from ELF issue.
- AVRSV-7742: Compiling an imported Arduino sketch for Arduino zero shows error.
- AVRSV-7903: Studio automatically sets GPNVM bits [7:8] thereby enabling TCM
- AVRSV-7892: Writing SAML22 RWW flash fails.
- AVRSV-7889: Skewed debug info for AVR8 in AS 7.0.1417.
- AVRSV-7883: Incorrect warning message for KB2978092 during installation of AS 7.0.1417.
- AVRSV-7106: Hex parser fails on unix lineendings.
- AVRSV-4914: Add support for new avr-gcc __int24 and __uint24 types.
- AVRSV-7877: Devices with external SRAM fails to calculate available SRAM.
- AVRSV-7845: Crash in _ReallyTerminateAfterLaunchFinished.
- AVRSV-7834: Pack manager fails to download CMSIS DFPs.
- AVRSV-7876: Add checksum fields to http header for KitsDatabase.xml.
- AVRSV-7854: NaN values not handled by atprogram.
- AVRSV-7911: Problems reading device ID on ATmega4809.
- AVRSV-7202: Arduino Library Grouping can have better representation.
- AVRSV-7927: Security Bit Window in Device Programming should not always be available depending on the MCUs.
- AVRSV-7973: Chip erase outside prog session fails on SAM4L.
- AVRSV-7961: FUSE configuration warning for BOD( BODCFG.LVL) is incorrect in Atmel Studio.
Note:? QTouch Composer extension must be updated to version 5.9.122 or later to work with Atmel
Studio 7.0.1645

About Atmel Studio. Atmel Studio is a integrated development platform from Microchip. It provides a modern and powerful environment for doing AVR and ARM development. Get started by exploring the included example projects. Run your solution on a starter or evaluation kit. Program and debug your project with the included simulator, or use one of the powerful on-chip debugging and programming tools from Microchip. Get productive with the various navigate, refactor and intellisense features in the included editor.

With strong extension possibilities and online gallery, it is possible for both designers and 3rd party to provide plug-ins and customize the environment for best use and productivity.

Atmel Studio carries and integrates Atmel Start, the GCC toolchains for both AVR and ARM, Atmel Software Framework, AVR Assembler and Simulator. All newest Atmel tools are supported including Power Debugger, Atmel-ICE, Embedded Debugger, AVR ONE!, JTAGICE mkII, JTAGICE3, STK500, STK600, AVRISP mkII, AVR Dragon, and SAM-ICE.

About Microchip Technology Inc. Microchip Technology Inc. is a leading provider of microcontroller and analog semiconductors, providing low-risk product development, lower total system cost and faster time to market for thousands of diverse customer applications worldwide. Headquartered in Chandler, Arizona, Microchip offers outstanding technical support along with dependable delivery and quality.

About Atmel Corporation. Atmel Corporation is a worldwide leader in the design and manufacture of microcontrollers, capacitive touch solutions, advanced logic, mixed-signal, nonvolatile memory and radio frequency (RF) components. Leveraging one of the industry's broadest intellectual property (IP) technology portfolios, Atmel provides the electronics industry with complete system solutions focused on industrial, consumer, security, communications, computing and automotive markets.

Product: Atmel Studio
Version: 7.0.1645
Supported Architectures: 32bit / 64bit
Website Home Page :
http://www.atmel.com

Language: english
System Requirements: PC
Supported Operating Systems: Windows 7even SP1 or newer / Server 2008 R2 SP1 or higher / Server 2012 / Server 2012 R2
Size: 913.8 mb

Buy a premium  to download file with fast speed
thanks
Rapidgator.net
https://rapidgator.net/file/a0e4a1a217f … 5.rar.html
alfafile.net
http://alfafile.net/file/ym2K/fkc6y.Atm … 0.1645.rar
[/center]


          How to Make Jumanji Game      Cache   Translate Page      
Jumanji game is a game that got idea from movie Jumanji. There is a scene in Jumanji where I can avoid traps and knives in a breathtaking way, and I wanted to make this scene a game. material is as follows. 1. Arduino2. Stepping motor and motor driver for blade rotation 3. Trap block 4. Frightened...
By: rabbit maker

Continue Reading »
          Standalone ATmega328p (using Internal 8 MHz Clock)      Cache   Translate Page      
The ATmega328p is a single-chip microcontroller created by Atmel in the megaAVR family (later Microchip Technology acquired Atmel in 2016). It has a modified Harvard architecture 8-bit RISCprocessor core.This microcontroller is the brains of Arduino development board as well as many other developmen...
By: Hardik Khurana

Continue Reading »
          Wine and Games Leftovers      Cache   Translate Page      
  • Wine Could Use Student Developers For VKD3D, Other Direct3D Enhancements

    Like GCC, Debian, and other leading free software projects, Wine is hoping to have a few interested students take on some interesting summer projects this year thanks to the annual Google Summer of Code.

    The Wine project has been assembling and updating their summer project list to try to garner student interest in taking on one of these high profile tasks. Among the ideas being tossed around in the Wine camp are implementing more test cases for VKD3D / Direct3D 12, implementing Direct3D 10 Effects or more Direct3D Retained Mode functionality, improving the usefulness of Explorer.exe, enhancing the WineHQ AppDB website, porting WineLib to a new architecture like POWER or RISC-V, and others.

  • There's a new release candidate of OBS Studio out with a VAAPI video encoder on Linux

    Eyes up livestreamers and video content creators, as there's a new release candidate out for OBS Studio with some huge new features.

    There's quite a lot new and improved like a limiter audio filter, an expander audio filter, multi-track audio support with FFmpeg available in advanced output settings, a fourth mic/auxiliary audio option in audio settings, stereo balancing (panning) available in the advanced audio properties section, an option to automatically remux recordings to MP4 and loads more.

    Multiple parts of the interface were also improved like a new optional stats dock, an option to change the OBS base/output resolution to the size of a source in the right-click context menu, a light rectangle will show up when hovering your mouse over a source in the preview to show it can be selected, a simplified and improved user experience for the "Stream" page and so on.

  • Pyxa Lets You Build and Program Your Own Games

    On the software side, Pyxa is based on Arduino coding platform and compatible with Windows, Mac OS and Linux.

read more


          Elegoo UNO Project Super Starter Kit with Tutorial for Arduino only $28.00      Cache   Translate Page      
Most Clicked
Elegoo UNO Project Super Starter Kit with Tutorial for Arduino

Get Elegoo UNO Project Super Starter Kit with Tutorial for Arduino for only $28.00.

Compare: eBay.com ($46.94)

Tagged as: EL-KIT-003 | ELKIT003 | 746591610623 | Computer Accessories

Click here for complete deal detail and steps on how to get it.

Share this deal with your friend/family by sending them this URL: https://www.edealinfo.com/d/00746591610623/Elegoo-UNO-Project-Super-Starter-Kit-with-Tutorial-for-Arduino

Checkout eDealPC.com to find best deals on Laptop, Desktop, All-in-One & Sever configurations that YOU select directly from Dell, Lenovo, Acer and Apple. Click here to check it out.
          416wp eeprom firmware for samsung ltn156ht01 lcd screen      Cache   Translate Page      
I am looking for 416wp eeprom firmware for samsung ltn156ht01 lcd screen, If someone have the same screen can they connect the eeprom to a programmer and get me the firmware? I needed to fix my laptop... (Budget: $10 USD, Jobs: Arduino, C Programming, Electrical Engineering, Electronics, Microcontroller)
          induction cooktop heater with Arduino      Cache   Translate Page      
Induction cooktop with Arduino 1) quasi resonant inverter 2) Need to run continuously, need proper cooling for board and coil 3) For heating mild steel, stainless steel and alloys 4) Need Arduino program... (Budget: ₹12500 - ₹37500 INR, Jobs: Circuit Design, Electrical Engineering, Electronics, Microcontroller, PCB Layout)
          induction cooktop heater with Arduino      Cache   Translate Page      
Induction cooktop with Arduino 1) quasi resonant inverter 2) Need to run continuously, need proper cooling for board and coil 3) For heating mild steel, stainless steel and alloys 4) Need Arduino program... (Budget: ₹12500 - ₹37500 INR, Jobs: Circuit Design, Electrical Engineering, Electronics, Microcontroller, PCB Layout)
          Arduino проекты      Cache   Translate Page      
WR пишет:

робот на гусеницах с шипами

[br] [br] [Youtube]BPRU_IEBgow[/Youtube]


          Arduino Graphic TFT LCD with Touch Screen Master Class      Cache   Translate Page      

Arduino Graphic TFT LCD with Touch Screen Master Class
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz, 2 Ch
Genre: eLearning | Language: English + .VTT | Duration: 3 hours | Size: 1.95 GB
add graphic and beauty to your project with any graphical lcd with touch screen you want


          Lighting up my DasKeyboard with Blood Sugar changes using my body's REST API      Cache   Translate Page      

imageI've long blogged about the intersection of diabetes and technology. From the sad state of diabetes tech in 2012 to its recent promising resurgence, it's clear that we are not waiting.

If you're a Type 1 Diabetic using a CGM - a continuous glucose meter - you'll want to set up Nightscout so you can have a REST API for your sugar. The CGM checks my blood sugar every 5 minutes, it hops via BLE over to my phone and then to the cloud. You'll want your sugars stored in cloud storage that YOU control. CGM vendors have their own cloud, but we can easily bridge over to a MongoDB database.

I run Nightscout in Azure and my body has a REST API. I can do an HTTP GET like this:

/api/v1/entries.json?count=3

and get this

[
{
_id: "5c6066d477b2a69a0a7810e5",
sgv: 143,
date: 1549821626000,
dateString: "2019-02-10T18:00:26.000Z",
trend: 4,
direction: "Flat",
device: "share2",
type: "sgv"
},
{
_id: "5c6065a877b2a69a0a7801ce",
sgv: 134,
date: 1549821326000,
dateString: "2019-02-10T17:55:26.000Z",
trend: 4,
direction: "Flat",
device: "share2",
type: "sgv"
},
{
_id: "5c60647b77b2a69a0a77f381",
sgv: 130,
date: 1549821026000,
dateString: "2019-02-10T17:50:26.000Z",
trend: 4,
direction: "Flat",
device: "share2",
type: "sgv"
}
]

I can change the URL from a .json to a .txt and get this

2019-02-10T18:00:26.000Z    1549821626000    143    Flat    
2019-02-10T17:55:26.000Z 1549821326000 134 Flat
2019-02-10T17:50:26.000Z 1549821026000 130 Flat

The "flat" value at the end is part of an enum that can give me a generalized trend value. Diabetics need to manage our sugars at the least hour by house and sometimes minute by minute. As such it's super important that we have "glanceable displays." That means anything at all that gives me a sense (a sixth sense, if you will) of how I'm doing.

That might be:

I got a Das Keyboard 5Q recently - I first blogged about Das Keyboard in 2006! and noted that it's got it's own local REST API. I'm working on using their Das Keyboard Q software's Applet API to light up just the top row of keys in response to my blood sugar changing. It'll use their Node packages and JavaScript and run in the context of their software.

However, since the keyboard has a localhost REST API and so does my blood sugar, I busted out this silly little shell script. Add a cron job and my keyboard can turn from orange (low), to green, yellow, red (high) as my sugar changes. That provides a nice ambient notifier of how my sugars are doing. Someone on Twitter said "who looks at their keyboard?" I mean, OK, that's just silly. If my entire keyboard turns run I will notice it. Again, ambient. I could certainly add an alert and make a klaxon go off if you'd like.

#!/bin/sh
# This script colorize all LEDs of a 5Q keyboard
# by sending JSON signals to the Q desktop public API.
# based on Blood Sugar values from Nightscout
set -e # quit on first error.
PORT=27301

# Colorize the 5Q keyboard
PID="DK5QPID" # product ID

# Zone are LED groups. There are less than 166 zones on a 5Q.
# This should cover the whole device.
MAX_ZONE_ID=166

# Get blood sugar from Nightscout as TEXT
red=#f00
green=#0f0
yellow=#ff0
#deep orange is LOW sugar
COLOR=#f50
bgvalue=$(curl -s https://MYSITE/api/v1/entries.txt?count=1 | grep -Eo '000\s([0-9]{1,3})+\s' | cut -f 2)
if [ $bgvalue -gt 80 ]
then
COLOR=$green
if [ $bgvalue -gt 140 ]
then
COLOR=$yellow
if [ $bgvalue -gt 200 ]
then
COLOR=$red
fi
fi
fi

echo "Sugar is $bgvalue and color is $COLOR!"

for i in `seq $MAX_ZONE_ID`
do
#echo "Sending signal to zoneId: $i"
# important NOTE: if field "name" and "message" are empty then the signal is
# only displayed on the devices LEDs, not in the signal center
curl -s -S --output /dev/null -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{
"name": "Nightscout",
"id": "'$i'",
"message": "Blood sugar is '$bgvalue'",
"pid": "'$PID'",
"zoneId": "'"$i"'",
"color": "'$COLOR'",
"effect": "SET_COLOR"

}' "http://localhost:$PORT/api/1.0/signals"

done
echo "\nDone.\n\"

This local keyboard API is meant to send a signal to a single zone or key, so it's hacky of me (and them, really) to make 100+ REST calls to color the whole keyboard. But, it's a localhost call and it's not that spendy. This will go away when I move to their new API. Here's a video of it working.

You can also hit the volume button on the keyboard an any "signaled" (lit up) key and get a popup with the actual blood sugar value (that's 'message' in the second curl command above). Again, this is a hack but I'm going to make it a formal applet you can just install from the store. If you want to help (I'm slow) head to the code here https://github.com/shanselman/DasKeyboard-Q-NightScout

What are some other good ideas for ambient sugar alerts? An LCD strip around the monitor (bias lighting)? A Phillips Hue smart light?

Consider also that you could use the glanceable display idea for pulse, anxiety, blood pressure - anything in your body you could hook up to in real- or near-realtime.


Sponsor: Get the latest JetBrains Rider with Code Vision, Rename Project refactoring, and the Assembly Explorer. Improved support for C#, VB.NET, F#, TypeScript, and Angular is all included.



© 2018 Scott Hanselman. All rights reserved.
     

          [آموزش] دانلود Serge Ramelli - Photography Business Masterclass - آموزش تسلط بر عکاسی تجاری      Cache   Translate Page      

دانلود Serge Ramelli - Photography Business Masterclass - آموزش تسلط بر عکاسی تجاری#source%3Dgooglier%2Ecom#https%3A%2F%2Fgooglier%2Ecom%2Fpage%2F%2F10000

عکاسی تجاری-تبلیغاتی (E-Commerce) یکی از انواع عکاسی است که این روز ها با توجه به اهمیت تبلیغات بسیار رونق یافته است. بدون شک تنها یک عکاس تجاری حرفه‌ای می‌تواند با نگاه ریزبین و خلاقیت قوی خود از طریق تصویر پیام مورد نظر یک شرکت را به مخاطب منتقل کند. استفاده از عکاسی تجاری شیوه‌های خلاقانه در معرفی یک نشان تجاری و محصولات آن باعث جلب توجه هرچه بیشتر افراد می‌شود.در دوره آموزشی Serge Ramelli Photography Business Masterclass شما با راهکارهای موردنیاز در عکاسی از کالاهای تجاری برای ساخت تیزرها، وب سایت های نمایشگاهی، پوستر ها، بروشورها و ... آشنا ...


https://p30download.com/84852

مطالب مرتبط:



دسته بندی: دانلود » آموزش » عکاسی
برچسب ها: , , , , , , ,
لینک های مفید: خرید کارت شارژ, شارژ مستقیم, پرداخت قبض, خرید آنتی ویروس, خرید لایسنس آنتی ویروس, تبلیغات در اینترنت, تبلیغات اینترنتی
© حق مطلب و تصویر برای پی سی دانلود محفوظ است همین حالا مشترک این پایگاه شوید!
لینک دانلود: https://p30download.com/fa/entry/84852


          Electrical Engineer/Systems Engineer - Kroenke Sports Enterprises - Fort Worth, TX      Cache   Translate Page      
Computer languages, supporting several microcontroller languages including (machine code, Arduino, .NET, ATMEL, Python, PASCAL, C++, Ladder, Function Block)....
From Kroenke Sports Enterprises - Sat, 13 Oct 2018 18:16:18 GMT - View all Fort Worth, TX jobs
          Ovládanie relé cez Arduino s webaplikáciou      Cache   Translate Page      
Článok o ovládaní relé odkiaľkoľvek na svete v prehľadnej webaplikácii. Ako riadiaci mikrokontróler Arduino s Ethernet shield alebo modul od Wiznetu z rodiny W5X00.
          [آموزش] دانلود Serge Ramelli – Photography Business Masterclass – آموزش تسلط بر عکاسی تجاری      Cache   Translate Page      

دانلود Serge Ramelli - Photography Business Masterclass - آموزش تسلط بر عکاسی تجاری#source%3Dgooglier%2Ecom#https%3A%2F%2Fgooglier%2Ecom%2Fpage%2F%2F10000

عکاسی تجاری-تبلیغاتی (E-Commerce) یکی از انواع عکاسی است که این روز ها با توجه به اهمیت تبلیغات بسیار رونق یافته است. بدون شک تنها یک عکاس تجاری حرفه‌ای می‌تواند با نگاه ریزبین و خلاقیت قوی خود از طریق تصویر پیام مورد نظر یک شرکت را به مخاطب منتقل کند. استفاده از عکاسی تجاری شیوه‌های خلاقانه در معرفی یک نشان تجاری و محصولات آن باعث جلب توجه هرچه بیشتر افراد می‌شود.در دوره آموزشی Serge Ramelli Photography Business Masterclass شما با راهکارهای موردنیاز در عکاسی از کالاهای تجاری برای ساخت تیزرها، وب سایت های نمایشگاهی، پوستر ها، بروشورها و ... آشنا ...


https://p30download.com/84852

مطالب مرتبط:



دسته بندی: دانلود » آموزش » عکاسی
برچسب ها: , , , , , , ,
لینک های مفید: خرید کارت شارژ, شارژ مستقیم, پرداخت قبض, خرید آنتی ویروس, خرید لایسنس آنتی ویروس, تبلیغات در اینترنت, تبلیغات اینترنتی
© حق مطلب و تصویر برای پی سی دانلود محفوظ است همین حالا مشترک این پایگاه شوید!
لینک دانلود: https://p30download.com/fa/entry/84852


          DC-DC Converter      Cache   Translate Page      
Schema or circuit. 1 pieces. I want to control 12V and 0-2A by 0-5V analog (pwm) output of Arduino. Arduino output 0V Circuit output 0V Arduino output 5V circuit output 12V and 2A Actually this is like lab adjustable power supply but there is no pot, I will control by arduino pwm (0-5V)... (Budget: $250 - $750 USD, Jobs: Arduino, Electrical Engineering, Electronics, Microcontroller, PCB Layout)
          DC-DC Converter      Cache   Translate Page      
Schema or circuit. 1 pieces. I want to control 12V and 0-2A by 0-5V analog (pwm) output of Arduino. Arduino output 0V Circuit output 0V Arduino output 5V circuit output 12V and 2A Actually this is like lab adjustable power supply but there is no pot, I will control by arduino pwm (0-5V)... (Budget: $250 - $750 USD, Jobs: Arduino, Electrical Engineering, Electronics, Microcontroller, PCB Layout)


Next Page: 10000

Site Map 2018_01_14
Site Map 2018_01_15
Site Map 2018_01_16
Site Map 2018_01_17
Site Map 2018_01_18
Site Map 2018_01_19
Site Map 2018_01_20
Site Map 2018_01_21
Site Map 2018_01_22
Site Map 2018_01_23
Site Map 2018_01_24
Site Map 2018_01_25
Site Map 2018_01_26
Site Map 2018_01_27
Site Map 2018_01_28
Site Map 2018_01_29
Site Map 2018_01_30
Site Map 2018_01_31
Site Map 2018_02_01
Site Map 2018_02_02
Site Map 2018_02_03
Site Map 2018_02_04
Site Map 2018_02_05
Site Map 2018_02_06
Site Map 2018_02_07
Site Map 2018_02_08
Site Map 2018_02_09
Site Map 2018_02_10
Site Map 2018_02_11
Site Map 2018_02_12
Site Map 2018_02_13
Site Map 2018_02_14
Site Map 2018_02_15
Site Map 2018_02_15
Site Map 2018_02_16
Site Map 2018_02_17
Site Map 2018_02_18
Site Map 2018_02_19
Site Map 2018_02_20
Site Map 2018_02_21
Site Map 2018_02_22
Site Map 2018_02_23
Site Map 2018_02_24
Site Map 2018_02_25
Site Map 2018_02_26
Site Map 2018_02_27
Site Map 2018_02_28
Site Map 2018_03_01
Site Map 2018_03_02
Site Map 2018_03_03
Site Map 2018_03_04
Site Map 2018_03_05
Site Map 2018_03_06
Site Map 2018_03_07
Site Map 2018_03_08
Site Map 2018_03_09
Site Map 2018_03_10
Site Map 2018_03_11
Site Map 2018_03_12
Site Map 2018_03_13
Site Map 2018_03_14
Site Map 2018_03_15
Site Map 2018_03_16
Site Map 2018_03_17
Site Map 2018_03_18
Site Map 2018_03_19
Site Map 2018_03_20
Site Map 2018_03_21
Site Map 2018_03_22
Site Map 2018_03_23
Site Map 2018_03_24
Site Map 2018_03_25
Site Map 2018_03_26
Site Map 2018_03_27
Site Map 2018_03_28
Site Map 2018_03_29
Site Map 2018_03_30
Site Map 2018_03_31
Site Map 2018_04_01
Site Map 2018_04_02
Site Map 2018_04_03
Site Map 2018_04_04
Site Map 2018_04_05
Site Map 2018_04_06
Site Map 2018_04_07
Site Map 2018_04_08
Site Map 2018_04_09
Site Map 2018_04_10
Site Map 2018_04_11
Site Map 2018_04_12
Site Map 2018_04_13
Site Map 2018_04_14
Site Map 2018_04_15
Site Map 2018_04_16
Site Map 2018_04_17
Site Map 2018_04_18
Site Map 2018_04_19
Site Map 2018_04_20
Site Map 2018_04_21
Site Map 2018_04_22
Site Map 2018_04_23
Site Map 2018_04_24
Site Map 2018_04_25
Site Map 2018_04_26
Site Map 2018_04_27
Site Map 2018_04_28
Site Map 2018_04_29
Site Map 2018_04_30
Site Map 2018_05_01
Site Map 2018_05_02
Site Map 2018_05_03
Site Map 2018_05_04
Site Map 2018_05_05
Site Map 2018_05_06
Site Map 2018_05_07
Site Map 2018_05_08
Site Map 2018_05_09
Site Map 2018_05_15
Site Map 2018_05_16
Site Map 2018_05_17
Site Map 2018_05_18
Site Map 2018_05_19
Site Map 2018_05_20
Site Map 2018_05_21
Site Map 2018_05_22
Site Map 2018_05_23
Site Map 2018_05_24
Site Map 2018_05_25
Site Map 2018_05_26
Site Map 2018_05_27
Site Map 2018_05_28
Site Map 2018_05_29
Site Map 2018_05_30
Site Map 2018_05_31
Site Map 2018_06_01
Site Map 2018_06_02
Site Map 2018_06_03
Site Map 2018_06_04
Site Map 2018_06_05
Site Map 2018_06_06
Site Map 2018_06_07
Site Map 2018_06_08
Site Map 2018_06_09
Site Map 2018_06_10
Site Map 2018_06_11
Site Map 2018_06_12
Site Map 2018_06_13
Site Map 2018_06_14
Site Map 2018_06_15
Site Map 2018_06_16
Site Map 2018_06_17
Site Map 2018_06_18
Site Map 2018_06_19
Site Map 2018_06_20
Site Map 2018_06_21
Site Map 2018_06_22
Site Map 2018_06_23
Site Map 2018_06_24
Site Map 2018_06_25
Site Map 2018_06_26
Site Map 2018_06_27
Site Map 2018_06_28
Site Map 2018_06_29
Site Map 2018_06_30
Site Map 2018_07_01
Site Map 2018_07_02
Site Map 2018_07_03
Site Map 2018_07_04
Site Map 2018_07_05
Site Map 2018_07_06
Site Map 2018_07_07
Site Map 2018_07_08
Site Map 2018_07_09
Site Map 2018_07_10
Site Map 2018_07_11
Site Map 2018_07_12
Site Map 2018_07_13
Site Map 2018_07_14
Site Map 2018_07_15
Site Map 2018_07_16
Site Map 2018_07_17
Site Map 2018_07_18
Site Map 2018_07_19
Site Map 2018_07_20
Site Map 2018_07_21
Site Map 2018_07_22
Site Map 2018_07_23
Site Map 2018_07_24
Site Map 2018_07_25
Site Map 2018_07_26
Site Map 2018_07_27
Site Map 2018_07_28
Site Map 2018_07_29
Site Map 2018_07_30
Site Map 2018_07_31
Site Map 2018_08_01
Site Map 2018_08_02
Site Map 2018_08_03
Site Map 2018_08_04
Site Map 2018_08_05
Site Map 2018_08_06
Site Map 2018_08_07
Site Map 2018_08_08
Site Map 2018_08_09
Site Map 2018_08_10
Site Map 2018_08_11
Site Map 2018_08_12
Site Map 2018_08_13
Site Map 2018_08_15
Site Map 2018_08_16
Site Map 2018_08_17
Site Map 2018_08_18
Site Map 2018_08_19
Site Map 2018_08_20
Site Map 2018_08_21
Site Map 2018_08_22
Site Map 2018_08_23
Site Map 2018_08_24
Site Map 2018_08_25
Site Map 2018_08_26
Site Map 2018_08_27
Site Map 2018_08_28
Site Map 2018_08_29
Site Map 2018_08_30
Site Map 2018_08_31
Site Map 2018_09_01
Site Map 2018_09_02
Site Map 2018_09_03
Site Map 2018_09_04
Site Map 2018_09_05
Site Map 2018_09_06
Site Map 2018_09_07
Site Map 2018_09_08
Site Map 2018_09_09
Site Map 2018_09_10
Site Map 2018_09_11
Site Map 2018_09_12
Site Map 2018_09_13
Site Map 2018_09_14
Site Map 2018_09_15
Site Map 2018_09_16
Site Map 2018_09_17
Site Map 2018_09_18
Site Map 2018_09_19
Site Map 2018_09_20
Site Map 2018_09_21
Site Map 2018_09_23
Site Map 2018_09_24
Site Map 2018_09_25
Site Map 2018_09_26
Site Map 2018_09_27
Site Map 2018_09_28
Site Map 2018_09_29
Site Map 2018_09_30
Site Map 2018_10_01
Site Map 2018_10_02
Site Map 2018_10_03
Site Map 2018_10_04
Site Map 2018_10_05
Site Map 2018_10_06
Site Map 2018_10_07
Site Map 2018_10_08
Site Map 2018_10_09
Site Map 2018_10_10
Site Map 2018_10_11
Site Map 2018_10_12
Site Map 2018_10_13
Site Map 2018_10_14
Site Map 2018_10_15
Site Map 2018_10_16
Site Map 2018_10_17
Site Map 2018_10_18
Site Map 2018_10_19
Site Map 2018_10_20
Site Map 2018_10_21
Site Map 2018_10_22
Site Map 2018_10_23
Site Map 2018_10_24
Site Map 2018_10_25
Site Map 2018_10_26
Site Map 2018_10_27
Site Map 2018_10_28
Site Map 2018_10_29
Site Map 2018_10_30
Site Map 2018_10_31
Site Map 2018_11_01
Site Map 2018_11_02
Site Map 2018_11_03
Site Map 2018_11_04
Site Map 2018_11_05
Site Map 2018_11_06
Site Map 2018_11_07
Site Map 2018_11_08
Site Map 2018_11_09
Site Map 2018_11_10
Site Map 2018_11_11
Site Map 2018_11_12
Site Map 2018_11_13
Site Map 2018_11_14
Site Map 2018_11_15
Site Map 2018_11_16
Site Map 2018_11_17
Site Map 2018_11_18
Site Map 2018_11_19
Site Map 2018_11_20
Site Map 2018_11_21
Site Map 2018_11_22
Site Map 2018_11_23
Site Map 2018_11_24
Site Map 2018_11_25
Site Map 2018_11_26
Site Map 2018_11_27
Site Map 2018_11_28
Site Map 2018_11_29
Site Map 2018_11_30
Site Map 2018_12_01
Site Map 2018_12_02
Site Map 2018_12_03
Site Map 2018_12_04
Site Map 2018_12_05
Site Map 2018_12_06
Site Map 2018_12_07
Site Map 2018_12_08
Site Map 2018_12_09
Site Map 2018_12_10
Site Map 2018_12_11
Site Map 2018_12_12
Site Map 2018_12_13
Site Map 2018_12_14
Site Map 2018_12_15
Site Map 2018_12_16
Site Map 2018_12_17
Site Map 2018_12_18
Site Map 2018_12_19
Site Map 2018_12_20
Site Map 2018_12_21
Site Map 2018_12_22
Site Map 2018_12_23
Site Map 2018_12_24
Site Map 2018_12_25
Site Map 2018_12_26
Site Map 2018_12_27
Site Map 2018_12_28
Site Map 2018_12_29
Site Map 2018_12_30
Site Map 2018_12_31
Site Map 2019_01_01
Site Map 2019_01_02
Site Map 2019_01_03
Site Map 2019_01_04
Site Map 2019_01_06
Site Map 2019_01_07
Site Map 2019_01_08
Site Map 2019_01_09
Site Map 2019_01_11
Site Map 2019_01_12
Site Map 2019_01_13
Site Map 2019_01_14
Site Map 2019_01_15
Site Map 2019_01_16
Site Map 2019_01_17
Site Map 2019_01_18
Site Map 2019_01_19
Site Map 2019_01_20
Site Map 2019_01_21
Site Map 2019_01_22
Site Map 2019_01_23
Site Map 2019_01_24
Site Map 2019_01_25
Site Map 2019_01_26
Site Map 2019_01_27
Site Map 2019_01_28
Site Map 2019_01_29
Site Map 2019_01_30
Site Map 2019_01_31
Site Map 2019_02_01
Site Map 2019_02_02
Site Map 2019_02_03
Site Map 2019_02_04
Site Map 2019_02_05
Site Map 2019_02_06
Site Map 2019_02_07
Site Map 2019_02_08
Site Map 2019_02_09
Site Map 2019_02_10