En als dat niet werkt: Zijn de output pinnen van de Pro Mini en de Uno wel hetzelfde?
Op zo'n fout zou hij toch al moeten failen met compilen?edjeed schreef op maandag 16 november 2015 @ 10:15:
[...]
kaKuTransmitter.sendSignal(A',serialData\[1],true);
Moet zijn:
kaKuTransmitter.sendSignal('A',serialData\[1],true);
Zoek de verschillen ;-)
All electric components run on smoke. If you let the smoke out, they won't work anymore.
de apastrof voor de Aedjeed schreef op maandag 16 november 2015 @ 10:15:
[...]
kaKuTransmitter.sendSignal(A',serialData\[1],true);
Moet zijn:
kaKuTransmitter.sendSignal('A',serialData\[1],true);
Zoek de verschillen ;-)
Klopt... dat heb ik ook staan ... (Kopieer foutje)
pin 11 is ook een PWM / MOSI pin zoals de uno ...Pizza_Boom schreef op maandag 16 november 2015 @ 10:15:
En als dat niet werkt: Zijn de output pinnen van de Pro Mini en de Uno wel hetzelfde?
hmm ik zie dat er verschillende versies zijn... bij de 1 is pin11 wel een PWM, bij de ander weer niet

bij die ander is het pin12 ... zal vanavond deze eens wijzigen
http://pighixxx.com/prominiv3_0.pdf volgens mij mijn versie
[ Voor 42% gewijzigd door Rusky op 16-11-2015 10:54 ]
Waarschijnlijk omdat de gewone serial sneller isDamic schreef op maandag 16 november 2015 @ 03:26:
Gaan zelf de AT commando's sturen over serial1. Blijkbaar hebben ze de pinnen hardcoded in verschillende bestanden staan.
He, de mega1280/2560 heeft 4 uarts aanboort http://www.atmel.com/Imag...281-2560-2561_Summary.pdf (de 1281/2561 maar 2)BoAC schreef op maandag 16 november 2015 @ 11:39:
[...]
Waarschijnlijk omdat de gewone serial sneller is
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Heb met de 11/11 aktie van Aliexpress ook maar mijn eerste Arduino nepper gekocht!
http://www.aliexpress.com...ml?orderId=70845281081914
http://www.aliexpress.com...ml?orderId=70845281061914
http://www.aliexpress.com...ml?orderId=70845281101914
zal dit een leuke combi worden? Mijn plan is gewoon om te beginnen met simpele lampen te bedienen met het relay, dus hier zal het toch wel mee moeten lukken?
http://www.aliexpress.com...ml?orderId=70845281081914
http://www.aliexpress.com...ml?orderId=70845281061914
http://www.aliexpress.com...ml?orderId=70845281101914
zal dit een leuke combi worden? Mijn plan is gewoon om te beginnen met simpele lampen te bedienen met het relay, dus hier zal het toch wel mee moeten lukken?
Dat moet wel lukken, mijn vraag alleen is HOE je je lamp gaat bedienen(Knopjes, wifi, etc...)arjan445 schreef op maandag 16 november 2015 @ 12:24:
Heb met de 11/11 aktie van Aliexpress ook maar mijn eerste Arduino nepper gekocht!
http://www.aliexpress.com...ml?orderId=70845281081914
http://www.aliexpress.com...ml?orderId=70845281061914
http://www.aliexpress.com...ml?orderId=70845281101914
zal dit een leuke combi worden? Mijn plan is gewoon om te beginnen met simpele lampen te bedienen met het relay, dus hier zal het toch wel mee moeten lukken?
Ja dat was ik ook nog aan het bedenken, ik had ook nog een esp8266 besteld kan ik die koppelen aan de arduino waardoor ik wifi heb?Vuikie schreef op maandag 16 november 2015 @ 13:23:
[...]
Dat moet wel lukken, mijn vraag alleen is HOE je je lamp gaat bedienen(Knopjes, wifi, etc...)
Je kan ook ineens voor de ESP programmeren
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
weet iemand of je via Matlab Simulink 2 Arduino's kunt aansturen in 1 model? hierbij is onderlinge datawisseling nodig die eerst via bv USB kan verlopen en in een later stadium via bijv. Wifi/Bluetooth kan?
R7-3700X/MSI B550 Tomahawk/32GB RAM/NZXT H440/Phanteks TC14PE/Asrock RX6600XT Challenger
Hallo allemaal,
Ik wil graag mijn gasmeter uitrusten met een reed contact en deze mbv een arduino laten loggen naar een server. Nou lukt het pulsen tellen wel alleen vroeg ik me af wat ik moet programmeren om te voorkomen dat het fout gaat als het reed contact gesloten blijft als de gasmeter stopt met draaien. En zo heel lang in gesloten positie blijft. Volgens mij gaat dan me millis functie de fout in? Iemand een idee?
Ik wil graag mijn gasmeter uitrusten met een reed contact en deze mbv een arduino laten loggen naar een server. Nou lukt het pulsen tellen wel alleen vroeg ik me af wat ik moet programmeren om te voorkomen dat het fout gaat als het reed contact gesloten blijft als de gasmeter stopt met draaien. En zo heel lang in gesloten positie blijft. Volgens mij gaat dan me millis functie de fout in? Iemand een idee?
ok ... dat is het dus ook niet... wie o wie heeft een oplossing voor mij? ben nu echt radeloosRusky schreef op maandag 16 november 2015 @ 10:39:
hmm ik zie dat er verschillende versies zijn... bij de 1 is pin11 wel een PWM, bij de ander weer niet![]()
bij die ander is het pin12 ... zal vanavond deze eens wijzigen
Mijn advies zou zijn om een 24h afstand te nemen en iets leuks te gaan doen. Meestal valt het kwartje uiteindelijk wel. Overigens ook WIJ hebben tijd nodig om er over na te denken
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
In Matlab zelf kan je gewoon meerdere com poorten openen, lijkt me dat het in Simulink nit anders is.NLBUURMAN schreef op maandag 16 november 2015 @ 16:47:
weet iemand of je via Matlab Simulink 2 Arduino's kunt aansturen in 1 model? hierbij is onderlinge datawisseling nodig die eerst via bv USB kan verlopen en in een later stadium via bijv. Wifi/Bluetooth kan?
ja sorryRobV schreef op maandag 16 november 2015 @ 18:48:
Mijn advies zou zijn om een 24h afstand te nemen en iets leuks te gaan doen. Meestal valt het kwartje uiteindelijk wel. Overigens ook WIJ hebben tijd nodig om er over na te denken
weet iemand een manier om te testen of me transmitter wel goed is???
Eentje extra kopen en omwisselen. Of een voorbeeldprogramma waarvan de werking gegarandeerd goed is, uploaden. Zo heb ik mijn nrf24jes ook getest.
Verwijderd

gesture sensor APDS-9960 & arduino
tutorial:
https://learn.sparkfun.co...sture-sensor-hookup-guide
kopen:
- https://www.antratek.nl/rgb-and-gesture-sensor-apds-9960
- http://www.dx.com/nl/p/ap...LzZ9-ewnckCFQQTwwod4lUDWQ
praktijkstuf:
- YouTube: APDS-9960 Gesten-Erkennung am Arduino
- YouTube: Robot eyes follow the movement of your hand APDS-9960
- YouTube: Hand Gesture Controlled Bluetooth Audio Link (Handi)
Misschien dat jullie mij hier kunnen helpen.
Ben op het moment bezig met een arduino project aan het opzetten en heb daarbij een display nodig.
Ik heb een display nodig waar eigenlijk maar 2 letter/cijfer combinatie op komt te staan.
Het gaat als volgt : 1L - 1H t/m 8L - 8H (is voor schakelsysteem van een spel)
Maar heb hiervoor dus een display nosig en mijn vraag is welke zou hiervoor geschikt kunnen zijn?
Ik zie vele displays maar heb er het liefst 1 die ik appart van de arduino kan aansluiten.
Enigste die ik dan een beetje kan vinden is deze: http://m.aliexpress.com/item/32312337963.html
Hebben jullie eventueel advies hiervoor? Wil hem graag zo snel mogelijk bestellen zodat ik verder kan met het project.
Ik kom op deze uit omdat ik dan eigenlijk de display niet op de arduino hoef vast te zetten zodat ik de rest van de pins (aansluitingen) nodig heb voor de rest van het project
Alvast bedankt
Ben op het moment bezig met een arduino project aan het opzetten en heb daarbij een display nodig.
Ik heb een display nodig waar eigenlijk maar 2 letter/cijfer combinatie op komt te staan.
Het gaat als volgt : 1L - 1H t/m 8L - 8H (is voor schakelsysteem van een spel)
Maar heb hiervoor dus een display nosig en mijn vraag is welke zou hiervoor geschikt kunnen zijn?
Ik zie vele displays maar heb er het liefst 1 die ik appart van de arduino kan aansluiten.
Enigste die ik dan een beetje kan vinden is deze: http://m.aliexpress.com/item/32312337963.html
Hebben jullie eventueel advies hiervoor? Wil hem graag zo snel mogelijk bestellen zodat ik verder kan met het project.
Ik kom op deze uit omdat ik dan eigenlijk de display niet op de arduino hoef vast te zetten zodat ik de rest van de pins (aansluitingen) nodig heb voor de rest van het project
Alvast bedankt
Heb je soms een normale link want de mobiele site houd geen rekening mee normale gebruikers 
Gevonden op ebay http://www.ebay.com/itm/1...For-Arduino-/271032247492
Dan zou ik niet twijfelen en gewoon doen.
Gevonden op ebay http://www.ebay.com/itm/1...For-Arduino-/271032247492
Dan zou ik niet twijfelen en gewoon doen.
[ Voor 50% gewijzigd door Damic op 22-11-2015 20:54 ]
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Ok, want de redt vind ik van grote formaten alleen maar dat hij een heleboel pinnen in gebruik heeft.
Sorry voor de link, ben op me werk en op het moment geen toegang tot een computer
Sorry voor de link, ben op me werk en op het moment geen toegang tot een computer
Je kan ook gaan voor een 0.96" oled maar dat zal wat te klein zijn
http://www.aliexpress.com...0&SearchText=0.96%22+oled
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Zou gewoon een 7 segment display niet wat zijn?
Ja dat kan ook 2 stuks dan
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Waarschijnlijk wel ja, ben bang dat die 1,8? Ook te klein zal zijn. Het liefst zoek ik iets in de range van 3 maar kom dus helaas dan uit op de schermen die bovenop de arduino moeten. 7 segment display? Even naar kijken. Bedankt voor de snelle reacties!
Edit: ik zoek echt iets van een tft scherm. Project waar ik mee bezig ben is een vrachtwagen mini cabine en probeer zo veel mogelijk "originele" details erin te houden. Maar toch bedankt nog steeds voor de adviezen!
Edit: ik zoek echt iets van een tft scherm. Project waar ik mee bezig ben is een vrachtwagen mini cabine en probeer zo veel mogelijk "originele" details erin te houden. Maar toch bedankt nog steeds voor de adviezen!
[ Voor 30% gewijzigd door kokkie20 op 22-11-2015 21:06 . Reden: Extra informatie. En typfouten ]
Wat bedoel je met "bovenop de arduino moeten"? Fysiek als in dat het een shield is?
Je begrijpt hopelijk dat je een shield ook gewoon met jumperkabeltjes aan kunt sluiten he? Zeker als het een spi display is.
Je begrijpt hopelijk dat je een shield ook gewoon met jumperkabeltjes aan kunt sluiten he? Zeker als het een spi display is.
Anders neem je zo iets, http://www.banggood.com/I...Module-Blue-p-908616.html ben je met 4 draadjes klaar. (iets kleinere versie hier: http://www.banggood.com/I...For-Arduino-p-950726.html)
Ik ga er even allemaal morgen naar kijken. Even bekijken wat de opties zijn en welke aansluitingen ik precies allemaal nodig heb (een heleboel in ieder geval
) en van daaruit een schets in elkaar ga zetten en kijken of ik dan alsnog een kleine variant nodig heb of toch eventueel voor een grotere kan gaan
Nogmaals bedankt voor de hulp! En de adviezen ook!
Naar aanleiding van het bericht met de spi scherm heb ik een 2.8 scherm kunnen vinden
Bedankt voor de snelle advies allemaal!
http://www.aliexpress.com...uino-UNO/32319840893.html
Nogmaals bedankt voor de hulp! En de adviezen ook!
Naar aanleiding van het bericht met de spi scherm heb ik een 2.8 scherm kunnen vinden
Bedankt voor de snelle advies allemaal!
http://www.aliexpress.com...uino-UNO/32319840893.html
[ Voor 28% gewijzigd door kokkie20 op 23-11-2015 05:26 ]
Met SRC bedoel je de raw poort ?BoAC schreef op vrijdag 06 november 2015 @ 22:18:
Spanning op src zetten en vcc meten?
Its'nice 2be important, but it's more important 2be nice
Wordt verschillend genoemd op bordjes, maar je hebt gelijk
Thnx , is inmiddels gelukt , en hetgeen ik eerder had "gegokt" aan de hand van de regulator (f43v) klopte gelukkig.BoAC schreef op woensdag 25 november 2015 @ 21:08:
[...]
Wordt verschillend genoemd op bordjes, maar je hebt gelijk
Nu even verder met het modden om zo lang mogelijk op 2 x AA
Its'nice 2be important, but it's more important 2be nice
Me bestelling is binnen... en inderdaad me transmitter is kaduuk. Hij doet het weer als vanoudsRusky schreef op maandag 16 november 2015 @ 20:09:
[...]
ja sorryzal niet zo haasten...
weet iemand een manier om te testen of me transmitter wel goed is???
Verwijderd

(klik voor groter plaatje)
Ik heb deze linear actuator op basis van een stepper met een leadscrew (en een hele berg lagers) gemaakt. Ik wil een voorwerp op en neer laten bewegen en input kunnen geven door er aan te duwen of trekken.
Nu de motoraansturing er is heb ik positiefeedback nodig, zowel van het bewegende plateau als van het plateau waarop de stepper is bevestigd. De eerste heeft een bewegingsruimte van 25cm en de stepper is opgehangen tussen veren, die hem ongeveer 1,5cm beide kanten op geven.
Het bewegende platform wil ik als ik hem aanzet kalibreren door hem naar beneden te laten lopen tot hij tegen een mechanische eindstop aan komt en dat dan als nulpunt voor Accelstepper te gebruiken. Als de driver goed ingesteld is en geen of weinig stappen mist zou dat genoeg moeten zijn, toch?
En ik neig er nu naar om de stepper displacement te meten met een TCRT5000 onder en boven de stepper. Dit voelt een beetje als een bodge job, dus als er betere alternatieven zijn hoor ik ze graag.
Vraagje: weten jullie wat er hier fout gaat, na een paar keer een power cylci te doen werkt ie wel 

Code vind je hier: Damic in "[Arduino] Knipperend Display i.c.m. GPS Snelheidsmeter"


Code vind je hier: Damic in "[Arduino] Knipperend Display i.c.m. GPS Snelheidsmeter"
[ Voor 15% gewijzigd door Damic op 28-11-2015 10:41 ]
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Je hebt verschillende opties:Verwijderd schreef op zaterdag 28 november 2015 @ 10:38:Het bewegende platform wil ik als ik hem aanzet kalibreren door hem naar beneden te laten lopen tot hij tegen een mechanische eindstop aan komt en dat dan als nulpunt voor Accelstepper te gebruiken. Als de driver goed ingesteld is en geen of weinig stappen mist zou dat genoeg moeten zijn, toch?
En ik neig er nu naar om de stepper displacement te meten met een TCRT5000 onder en boven de stepper. Dit voelt een beetje als een bodge job, dus als er betere alternatieven zijn hoor ik ze graag.
- Schakelaartje aan de onderkant en dan hopen dat je geen stappen verliest
- Magneetje op de as en omwentelingen meten
- Stikker op de as en omwentelingen meten
- Meetlineaal
Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.
Kent iemand deze al? http://r.ebay.com/zO0p4G
Een USB arduino, heb er maar vijf gekocht voor in de onderdelen la, altijd leuk om iets aan te sturen dacht ik
Zo heerlijk klein en ook geen USB kabel meer nodig - leuk om mee te spelen in de laptop op de bank oid.
* franssie vraagt zich af zoals bij vele van dit soort aankopen of ik er ooit een functie voor ga vinden
Een USB arduino, heb er maar vijf gekocht voor in de onderdelen la, altijd leuk om iets aan te sturen dacht ik
Zo heerlijk klein en ook geen USB kabel meer nodig - leuk om mee te spelen in de laptop op de bank oid.
* franssie vraagt zich af zoals bij vele van dit soort aankopen of ik er ooit een functie voor ga vinden
franssie.bsky.social | 🎸 Niets is zo permanent als een tijdelijke oplossing | Een goed probleem komt nooit alleen | Gibson guitar Fender Guitar God Damn Guitar
Het is een ATTiny, weinig IOs, weinig memory. Maar voor bijvoorbeeld een simpele led dimmer prima.franssie schreef op zaterdag 28 november 2015 @ 20:57:
Kent iemand deze al? http://r.ebay.com/zO0p4G
Een USB arduino, heb er maar vijf gekocht voor in de onderdelen la, altijd leuk om iets aan te sturen dacht ik
Zo heerlijk klein en ook geen USB kabel meer nodig - leuk om mee te spelen in de laptop op de bank oid.
* franssie vraagt zich af zoals bij vele van dit soort aankopen of ik er ooit een functie voor ga vinden
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Ik heb deze wel eens op hackerstore zien staan volgens mij.franssie schreef op zaterdag 28 november 2015 @ 20:57:
Kent iemand deze al? http://r.ebay.com/zO0p4G
Een USB arduino, heb er maar vijf gekocht voor in de onderdelen la, altijd leuk om iets aan te sturen dacht ik
Zo heerlijk klein en ook geen USB kabel meer nodig - leuk om mee te spelen in de laptop op de bank oid.
* franssie vraagt zich af zoals bij vele van dit soort aankopen of ik er ooit een functie voor ga vinden
Zijn inderdaad mooie dingen, het enige probleem waar ik tegenaan zou lopen is dat ik geen reden weet om dit te gaan gebruiken
Weet iemand trouwens er iets kleiners is dan de Arduino Due, Zero of dergelijke is dat ook kan worden gebruikt als native keyboard. Het probleem is dat ik het moet verwerken in een klein project, en de 32u4 microcontrollers zijn er net te prijzig voor zijn, het is namelijk een experiment.
Ik gebruik deze omdat ze zo goedkoop zijnBladeSlayer1000 schreef op zaterdag 28 november 2015 @ 21:06:
[...]
Weet iemand trouwens er iets kleiners is dan de Arduino Due, Zero of dergelijke
Heb je wel een aparte USB naar serial bordje voor nodig zoals deze.
franssie schreef op zaterdag 28 november 2015 @ 20:57:
Kent iemand deze al? http://r.ebay.com/zO0p4G
Een USB arduino, heb er maar vijf gekocht voor in de onderdelen la, altijd leuk om iets aan te sturen dacht ik
Zo heerlijk klein en ook geen USB kabel meer nodig - leuk om mee te spelen in de laptop op de bank oid.
* franssie vraagt zich af zoals bij vele van dit soort aankopen of ik er ooit een functie voor ga vinden
Ik heb een stel losse ATTiny's liggen, incl. een programmer voor op een Arduino van een of andere Griekse verkoper die eerder hier voorbij is gekomen. Wil er iig een gebruiken om op milliseconde-niveau te gaan tellen m.b.v. een met scope afgestelde 1kHz LM324-pulsgenerator. Daarna kan (bijv.) een Pi de verstreken tijd opvragen van de ATTiny. Dit is een beetje omslachtig maar zo kunnen er precieze metingen gedaan worden en heb ik er tenminste 1 met een functieBladeSlayer1000 schreef op zaterdag 28 november 2015 @ 21:06:
[...]
Ik heb deze wel eens op hackerstore zien staan volgens mij.
Zijn inderdaad mooie dingen, het enige probleem waar ik tegenaan zou lopen is dat ik geen reden weet om dit te gaan gebruiken
After the first glass you see things as you wish they were. After the second you see things as they are not. Finally you see things as they really are, and that is the most horrible thing in the world...
Oscar Wilde
Ha dank allen, er is mij weer veel meer duidelijk - als ik er iets voor bedenk zal ik het laten weten, las al wel dat er geen Ic2 en serial native in het chipje zit dus daar vallen misschien al wat dingen af maar dat lossen wel dan wel weer op.
franssie.bsky.social | 🎸 Niets is zo permanent als een tijdelijke oplossing | Een goed probleem komt nooit alleen | Gibson guitar Fender Guitar God Damn Guitar
Ik heb deze gebruikt voor mijn joystick project. AtMega32u4, ongeveer dezelfde footprint als een Pro Mini, €4/stuk. Met de juiste firmware doen ze zich voor als USB HID device. Of je dat ook nodig hebt voor de basic keyboard weet ik niet, maar. Het voordeel van deze is dat alles op 1 bordje zit.BladeSlayer1000 schreef op zaterdag 28 november 2015 @ 21:06:
Weet iemand trouwens er iets kleiners is dan de Arduino Due, Zero of dergelijke is dat ook kan worden gebruikt als native keyboard. Het probleem is dat ik het moet verwerken in een klein project, en de 32u4 microcontrollers zijn er net te prijzig voor zijn, het is namelijk een experiment.
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Die heb ik ook liggen, alleen helaas hebben die geen optie om te dienen als toetsenbord bijvoorbeeld.peterpv schreef op zaterdag 28 november 2015 @ 21:15:
[...]
Ik gebruik deze omdat ze zo goedkoop zijn
Heb je wel een aparte USB naar serial bordje voor nodig zoals deze.
Dat is namelijk de hoofdreden waarom de 32u4 chips van Atmel ideaal zijn, alleen duur..
Verwijderd
Na in de loop der tijd al af en toe gespiekt te hebben naar Arduino's en wat gespeeld te hebben het laten branden van een LED en dergelijke ongein wil ik nu graag wat meer toewerken naar een nuttig doel. Met name het aansturen van motoren heeft mij altijd erg geïnteresseerd. Alle hardware moet nieuw aangeschaft worden, buiten gereedschap is niet veel aanwezig. Met het oog op het budget denk ik dan aan kloons. Mocht er meer nodig zijn ben in te zijner tijd te investeren in beter spul.
Ik zat te denken aan een goedkope, maar prima kloon van de full size Uno R3 of wellicht Mega, gezien ik aan die tweede later meer ga hebben. Het nieuwe stackable motorshield van Adafruit lijkt me erg mooi, maar is ook erg duur, dus ik neem voorlopig genoegen met een goedkope kloon van de eerste versie. Daarnaast is een setje lichte steppermotoren, full rotation servo's en DC-motoren handig om mee te experimenteren, samen met wellicht wat ultrasone sensoren, LED-displays en ander grut.
Zijn er bepaalde zaken waar ik rekening mee moet houden qua compatibiliteit, kwaliteit of iets anders dat ik over het hoofd gezien heb?
Ik zat te denken aan een goedkope, maar prima kloon van de full size Uno R3 of wellicht Mega, gezien ik aan die tweede later meer ga hebben. Het nieuwe stackable motorshield van Adafruit lijkt me erg mooi, maar is ook erg duur, dus ik neem voorlopig genoegen met een goedkope kloon van de eerste versie. Daarnaast is een setje lichte steppermotoren, full rotation servo's en DC-motoren handig om mee te experimenteren, samen met wellicht wat ultrasone sensoren, LED-displays en ander grut.
Zijn er bepaalde zaken waar ik rekening mee moet houden qua compatibiliteit, kwaliteit of iets anders dat ik over het hoofd gezien heb?
Kan nog goedkoper: http://www.aliexpress.com...-Quality/32284746884.htmlRobV schreef op zaterdag 28 november 2015 @ 21:21:
[...]
Ik heb deze gebruikt voor mijn joystick project. AtMega32u4, ongeveer dezelfde footprint als een Pro Mini, €4/stuk. Met de juiste firmware doen ze zich voor als USB HID device. Of je dat ook nodig hebt voor de basic keyboard weet ik niet, maar. Het voordeel van deze is dat alles op 1 bordje zit.
Je zoekterm is Pro Micro voor de 32u4, Pro Mini voor de 328
Goedkoper? Tja "Het spijt ons, dit artikel is niet meer beschikbaar!" - dan kan ik het ook goedkoper aanbieden!

| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
http://www.aliexpress.com...Leonardo/32540390109.htmlRobV schreef op zondag 29 november 2015 @ 20:16:
[...]
Goedkoper? Tja "Het spijt ons, dit artikel is niet meer beschikbaar!" - dan kan ik het ook goedkoper aanbieden!
Beter?
Altijd spannend als ze de pinout van een ROOD bordje tonen en een foto van een BLAUW bordje!Kek schreef op zondag 29 november 2015 @ 20:39:
[...]
ga dan voor Deze dat is een goede seller die ook daadwerkelijk dinen opstuurt...
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Genoeg goedkope alternatieve zie ik langskomen, sommige negatief andere positief. Dit zou een mooi begin zijn om te experimenteren om te kijken of het lukt wat ik zou willen.
Bedankt voor de links.
Bedankt voor de links.
pinouts zijn gewoon hetzelfde hoor.. alleen is de rode van sparkfun/teensy oid en de chinese clones inderdaad blauwRobV schreef op zondag 29 november 2015 @ 21:33:
[...]
Altijd spannend als ze de pinout van een ROOD bordje tonen en een foto van een BLAUW bordje!
Kan ik bevestigen. Heb die dingen, niet via die aanbieder, maar toch.
Even een "noob" vraagje.
Ik wil een klein arduino projectje maken, waarbij mijn computer op een of andere manier een trigger kan geven aan de arduino en vervolgens een lamp aan gaat (of gaat knipperen).
Dit kan vanuit de computer door een programmaatje op te starten of een txt file aan te passen (ik moet nog even nakijken wat de beste manier is).
Mijn vraag is meer met welke arduino ik het beste kan beginnen en hoe sluit ik een lamp hierop aan? (denoods begin ik met een simpele led lampje).
Ik denk dat een arduino uno genoeg is? Aansluiting naar PC dan gewoon via usb.
Ik heb ook zo'n LED strip van ikea die ik ook wel zou willen hacken, maar ik weet niet of dit nog mogelijk/actueel is: https://github.com/cdinu/ikea-led-bar-hacking
Software/programmeren is geen probleem, alleen de hardware even uitzoeken
Of is een raspberry beter geschikt hiervoor?
Avb!
[EDIT] Uiteindelijk wil ook gaan kijken om meer met de Arduino te gaan doen, beetje domotica enzo
Ik wil een klein arduino projectje maken, waarbij mijn computer op een of andere manier een trigger kan geven aan de arduino en vervolgens een lamp aan gaat (of gaat knipperen).
Dit kan vanuit de computer door een programmaatje op te starten of een txt file aan te passen (ik moet nog even nakijken wat de beste manier is).
Mijn vraag is meer met welke arduino ik het beste kan beginnen en hoe sluit ik een lamp hierop aan? (denoods begin ik met een simpele led lampje).
Ik denk dat een arduino uno genoeg is? Aansluiting naar PC dan gewoon via usb.
Ik heb ook zo'n LED strip van ikea die ik ook wel zou willen hacken, maar ik weet niet of dit nog mogelijk/actueel is: https://github.com/cdinu/ikea-led-bar-hacking
Software/programmeren is geen probleem, alleen de hardware even uitzoeken
Of is een raspberry beter geschikt hiervoor?
Avb!
[EDIT] Uiteindelijk wil ook gaan kijken om meer met de Arduino te gaan doen, beetje domotica enzo
[ Voor 5% gewijzigd door Bld- op 04-12-2015 15:43 ]
Een gewone lamp (230v) aansturen kan met een relais, die door een Arduino (of RPi) op commando in/uitgeschakeld wordt. Zie bijv. http://www.instructables....with-relay-modu/?ALLSTEPS
[ Voor 4% gewijzigd door Raven op 04-12-2015 15:47 ]
After the first glass you see things as you wish they were. After the second you see things as they are not. Finally you see things as they really are, and that is the most horrible thing in the world...
Oscar Wilde
Verwijderd
Het lijkt me een interessante oefening met iets als een ATtiny een schakelend circuit te bouwen om een voltage om te vormen. Het probleem is echter dat je de chip dan in eerste instantie moet voeden met ongereguleerde stroom. Hoe tolerant zijn Atmel-chips voor zoiets? Of moet je de boel dan eerst kickstarten met iets als een voltage regulator totdat de chip meet dat het stroomniveau in orde is?
Zoals gezegd moet je het zoeken in de hoek van de relais, al dan niet met wat grut ervoor om de boel met een juist vermogen aan en uit te kunnen zetten.
Die LEDs zouden weleens makkelijker kunnen zijn dan de gloeilamp, vooral vanwege de hogere vermogens die daarbij komen kijkenBld- schreef op vrijdag 04 december 2015 @ 15:24:
Mijn vraag is meer met welke arduino ik het beste kan beginnen en hoe sluit ik een lamp hierop aan? (denoods begin ik met een simpele led lampje).
Ik denk dat een arduino uno genoeg is? Aansluiting naar PC dan gewoon via usb.
Ik heb ook zo'n LED strip van ikea die ik ook wel zou willen hacken, maar ik weet niet of dit nog mogelijk/actueel is: https://github.com/cdinu/ikea-led-bar-hacking
enzo
[ Voor 50% gewijzigd door Verwijderd op 04-12-2015 19:35 ]
Of een (photo)triac met een gewone triac erachter. Kan je hem ook meteen dimmen en kost je maar ~60 centRaven schreef op vrijdag 04 december 2015 @ 15:46:
Een gewone lamp (230v) aansturen kan met een relais, die door een Arduino (of RPi) op commando in/uitgeschakeld wordt. Zie bijv. http://www.instructables....with-relay-modu/?ALLSTEPS
[ Voor 44% gewijzigd door CrashOverDrive op 04-12-2015 20:04 ]
Hallo, is er toevallig iemand genegen om een stukje code van mij na te kijken?ik heb met bits and pieces een sketch geschreven om mijn analoge kwh meter in de meterkast uit te lezen en slim te maken (hoe origineel).
Ik vind het leuk stoeien met de arduino en heb de code nu ook werkend maar er zijn nog wat afwerkpuntjes waar ik niet helemaal uit kom.
Wat wil ik nog veranderen:
* Ik heb af en toe last van spook pulsen, dus wil ik gaan controleren hoeveel tijd er tussen de pulsen zit en als deze te kort Is dan de interrupt afkeuren. Dit wil nog niet helemaal werken, dus enige hulp Is welkom.
* ook heb ik het idee dat er af en toe een upload niet goed gaat, ik denk dat dit gebeurt als er een puls binnenkomt op het moment dat hij aan het uploaden Is. Moet dus op 1 of andere manier tijdens de upload de interrupt tijdelijk uitschakelen, maar dan ga ik weer pulsen missen. Ook hier kan ik wel wat hulp bij gebruiken.
* later wil ik nog mijn tft display erbij aansluiten, maar eerst een stabiele sketch zien te krijgen.
Hopelijk heeft 1 van jullie tijd en zin om even te kijken.
Ik vind het leuk stoeien met de arduino en heb de code nu ook werkend maar er zijn nog wat afwerkpuntjes waar ik niet helemaal uit kom.
Wat wil ik nog veranderen:
* Ik heb af en toe last van spook pulsen, dus wil ik gaan controleren hoeveel tijd er tussen de pulsen zit en als deze te kort Is dan de interrupt afkeuren. Dit wil nog niet helemaal werken, dus enige hulp Is welkom.
* ook heb ik het idee dat er af en toe een upload niet goed gaat, ik denk dat dit gebeurt als er een puls binnenkomt op het moment dat hij aan het uploaden Is. Moet dus op 1 of andere manier tijdens de upload de interrupt tijdelijk uitschakelen, maar dan ga ik weer pulsen missen. Ook hier kan ik wel wat hulp bij gebruiken.
* later wil ik nog mijn tft display erbij aansluiten, maar eerst een stabiele sketch zien te krijgen.
Hopelijk heeft 1 van jullie tijd en zin om even te kijken.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
| lude <SPI.h> #define SSID "jaja" #define PASS "zegikniet" #define IP "m2.exosite.com" #define CIK "ookdezeniet" //================================Benodigdheden voor Kwh meter================================ const float Stroom_C = 187.5; unsigned long pulseCountTotalStroom = 0; // pulsenteller totalen stroom unsigned long pulseCountStroom = 0; // pulsencounter Stroom unsigned long prevMillisStroom = 0; // starttime Stroom unsigned long pulseTimeStroom = 0; // time for 1 pulse int curWatts = 0; // current watts int curLiter = 0; float totalLiter = 0; unsigned long pulseCountTotalGas = 0; // pulsenteller totalen Gas unsigned long pulseCountGas = 0; // pulsencounter Gas unsigned long prevMillisGas = 0; // starttime Gas unsigned long pulseTimeGas = 0; float totalWh = 0; // total Wh float totalKwh = 0; // total Kwh int ledPinStroom = 8; // knipperen bij puls int ledPinGas = 9; //================================Wifi updatek=============================================== unsigned long prevMillisWifi = 0; // tijd voor de wifi update //================================Declarations for Thingspeak================================ String myDataString = ""; //allocate for actual data sent //================================What to do on Pulse================================ void onPulseStroom() { pulseCountStroom++; //pulsenteller +1 pulseCountTotalStroom++; //totale pulsenteller +1 pulseTimeStroom = (millis() - prevMillisStroom); //bereken pulstijd prevMillisStroom = millis(); //reset de tijd curWatts = (( 3600000 / Stroom_C ) * 1000 ) / pulseTimeStroom; //bereken huidige verbruik totalKwh = (1 / Stroom_C) * pulseCountTotalStroom; // Totale KWh. digitalWrite(ledPinStroom, HIGH); //Laat de led knipperen bij Puls delay(10); //10 millis aan digitalWrite(ledPinStroom, LOW); //dan weer uit //Print de waardes in de Serial Monitor. Serial.print("pulsecounts = "); Serial.print(pulseCountStroom); Serial.print("\t"); Serial.print("pulsecounttotal = "); Serial.print(pulseCountTotalStroom); Serial.print("\t"); Serial.print("currwatts = "); Serial.print(curWatts); Serial.print("\t"); Serial.print("totalKwh = "); Serial.print(totalKwh,4); Serial.println(); } //========================================================gas================================= void onPulseGas() { pulseCountGas++; //pulsenteller +1 pulseCountTotalGas++; //totale pulsenteller +1 pulseTimeGas = (millis() - prevMillisGas); //bereken pulstijd prevMillisGas = millis(); //reset de tijd curLiter = (( 3600000 / 1 ) * 1000 ) / pulseTimeGas; //bereken huidige verbruik totalLiter = (1 / 1) * pulseCountTotalGas; // Totale KWh. digitalWrite(ledPinGas, HIGH); //Laat de led knipperen bij Puls delay(10); //10 millis aan digitalWrite(ledPinGas, LOW); //dan weer uit //Print de waardes in de Serial Monitor. Serial.print("Gaspuls = "); Serial.print(pulseCountGas); Serial.print("\t"); Serial.print("Gas totaal = "); Serial.print(pulseCountTotalGas); Serial.print("\t"); Serial.print("Liter = "); Serial.print(curLiter); Serial.print("\t"); Serial.print("totalLiter = "); Serial.print(totalLiter); Serial.println(); } //====================================================================================================== //================================Function to update Thingspeak================================ void updateFunction(){ String cmd = "AT+CIPSTART=\"TCP\",\""; cmd += IP; cmd += "\",80"; sendDebug(cmd); delay(5); if(Serial2.find("Error")) { Serial.print("Recieved: Error"); return; } myDataString = "test"; myDataString += "="; //put into resource myDataString += (pulseCountTotalStroom); //just send the value cmd = "POST /onep:v1/stack/alias HTTP/1.1"; cmd += "\r\n"; cmd += "Host: m2.exosite.com"; cmd += "\r\n"; cmd += "X-Exosite-CIK: "; cmd += CIK; cmd += "\r\n"; cmd += "Content-Type: application/x-www-form-urlencoded; charset=utf-8"; cmd += "\r\n"; cmd += "Accept: application/xhtml+xml"; cmd += "\r\n"; cmd += "Content-Length: "; cmd += (myDataString.length()); cmd += "\r\n"; cmd += "\r\n"; cmd += (myDataString); Serial.print(cmd); Serial2.print("AT+CIPSEND="); Serial2.println(cmd.length()); if (Serial2.find(">")) { Serial.print(">"); Serial.println(cmd); Serial2.println(cmd); } else { sendDebug("AT+CIPCLOSE"); } if(Serial2.find("OK")) { Serial.println("Received: OK"); } else { Serial.println("Recieved: Error"); return; } } //================================Function to connect to WiFi================================ boolean connectWiFi() { Serial2.println("AT+CWMODE=3"); delay(200); String cmd = "AT+CWJAP=\""; cmd += SSID; cmd += "\",\""; cmd += PASS; cmd += "\""; Serial2.println(cmd); Serial.println(cmd); delay(3000); if(Serial2.find("OK")) { Serial.println("OK, connected to WiFi."); return true; } else { Serial.println("Cannnot connect to WiFi."); return false; } } //================================Send Debug================================ void sendDebug(String cmd) { Serial.print("SEND: "); Serial.println(cmd); Serial2.println(cmd); } //================================SETUP================================ void setup() { attachInterrupt(0, onPulseStroom, RISING); //Pin D2 voor kwh TCRT5000 //attachInterrupt(1, onPulseGas, CHANGE); //Pin D3 voor gas reed pinMode(8, OUTPUT); //led kwh pinMode(9, OUTPUT); //led gas //Setting up for ESP8266 Serial2.begin(115200); Serial2.setTimeout(2000); Serial.begin(115200); while(!Serial); while(!Serial2); Serial.println("ESP8266 Reciever Module"); while(Serial2.available()>0) Serial2.read(); delay(1000); Serial2.println("AT"); delay(2000); Serial.println("Resetting module"); Serial2.flush(); if(Serial2.find("OK")) { Serial.println("Module is Ready"); } else { Serial.println("Module have no response."); while(1); } delay(1000); //Access to wifi Function boolean connected = false; for(int i=0; i<5; i++) { if(connectWiFi()) { connected = true; break; } } if(!connected){while(1);} delay(5000); //Set Singale Connection Serial2.println("AT+CIPMUX=0"); } void loop() { { // elke 20sec de standen loggen via ethernet if ((millis() - prevMillisWifi) >= 30000) { prevMillisWifi = millis(); updateFunction(); pulseCountStroom = 0; pulseCountGas = 0; } } } |
[ Voor 77% gewijzigd door Delchrys op 06-12-2015 15:54 ]
ff een rerun van een oudere post. Ik heb er toen zo mee zitten kloten dat ik even opgegeven heb, maar nu met vernieuwde energie eraan begonnen.
Ik zit te stoeien met een tutorial van een paar jaar oud om een IR Duino laser tag te maken. Gaat mijn om het onder de knie krijgen en dan zelf verder werken eraan zodat ik een aantal guns kan maken om bij Scouting te gebruiken.
Het verzenden van de info gaat naar mijn idee goed, maar ik vermoed dat ik ergens een denkfout maak in de ontvangst van het IR signaal.
Een 'schot' werkt met één startbit van 2000 µs, een 'payload' van 8 bits ( een 1 is 1000 µs en een 0 is 400 µs) en een endbit van 3000 µs.
Omdat een gun niet alleen maar kan wachten op inkomende schoten maar ook wel eens zelf wilt schieten starts 'SenseIR' met een if.
Nu is in die tutorial de PulseIn een timeout van 50 µs gegeven.
Ik krijg nu helemaal geen schot binnen op de andere gun behalve als ik die timeout drastisch ga verhogen naar 10000 µs of meer. Dit heeft als effect dat soms schoten niet worden verzonden omdat hij staat te wachten op een inkomend schot.
^^ is deel van de code. De volledige staat op Pastebin: http://pastebin.com/9ZSAB7TR
Ik snap niet hoe dit in het origineel heeft kunnen werken. De originele 50 µs timeout bij het wachten op de startbit is nooit lang genoeg geweest om de startBit uberhaupt te kunnen ontvangen.
Ik zit te stoeien met een tutorial van een paar jaar oud om een IR Duino laser tag te maken. Gaat mijn om het onder de knie krijgen en dan zelf verder werken eraan zodat ik een aantal guns kan maken om bij Scouting te gebruiken.
Het verzenden van de info gaat naar mijn idee goed, maar ik vermoed dat ik ergens een denkfout maak in de ontvangst van het IR signaal.
Een 'schot' werkt met één startbit van 2000 µs, een 'payload' van 8 bits ( een 1 is 1000 µs en een 0 is 400 µs) en een endbit van 3000 µs.
Omdat een gun niet alleen maar kan wachten op inkomende schoten maar ook wel eens zelf wilt schieten starts 'SenseIR' met een if.
Nu is in die tutorial de PulseIn een timeout van 50 µs gegeven.
Ik krijg nu helemaal geen schot binnen op de andere gun behalve als ik die timeout drastisch ga verhogen naar 10000 µs of meer. Dit heeft als effect dat soms schoten niet worden verzonden omdat hij staat te wachten op een inkomend schot.
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| int startBit = 2000; // This pulse sets the threshold for a transmission start bit int endBit = 3000; // This pulse sets the threshold for a transmission end bit int one = 1000; // This pulse sets the threshold for a transmission that represents a 1 int zero = 400; // This pulse sets the threshold for a transmission that represents a 0 void senseIR() { int who[4]; int what[4]; int end; if (pulseIn(sensorPin, LOW, 50) < startBit) { digitalWrite(blinkPin, LOW); ret[0] = -1; return; } Serial.println("Found shot"); digitalWrite(blinkPin, HIGH); who[0] = pulseIn(sensorPin, LOW); who[1] = pulseIn(sensorPin, LOW); who[2] = pulseIn(sensorPin, LOW); who[3] = pulseIn(sensorPin, LOW); what[0] = pulseIn(sensorPin, LOW); what[1] = pulseIn(sensorPin, LOW); what[2] = pulseIn(sensorPin, LOW); what[3] = pulseIn(sensorPin, LOW); end = pulseIn(sensorPin, LOW); if (end <= endBit) { Serial.print(end); Serial.println(" : bad end bit"); ret[0] = -1; return; } |
^^ is deel van de code. De volledige staat op Pastebin: http://pastebin.com/9ZSAB7TR
Ik snap niet hoe dit in het origineel heeft kunnen werken. De originele 50 µs timeout bij het wachten op de startbit is nooit lang genoeg geweest om de startBit uberhaupt te kunnen ontvangen.
Verwijderd
Ik ben ook nog ooit begonnen aan een arduino laser tag, maar eigenlijk afgehaakt omdat ik de afstand niet groot genoeg kon krijgen.
Ik had volgens mij het schieten en de herkening van door wie je geschoten was wel werkend.
Zal vanavond eens kijken
Ik had volgens mij het schieten en de herkening van door wie je geschoten was wel werkend.
Zal vanavond eens kijken
Even een vraagje tussendoor.
Kernvraag:
Hoe is jullie ervaring met Strings en een Arduino?
Achtergrondverhaal::
Ik ben bezig met code voor mijn Arduino based weerstation en het moet zo stabiel als een huis worden aangezien ik hem op het dak wil gaan plaatsen. Het weerstation stuurt de data naar Domoticz.
Ik heb al even wat research gedaan en kom dan bijvoorbeeld op dit artikel uit waar de memory problems met Strings worden blootgelegd.
Hoe is dit in de praktijk en hoe kan je Strings vermijden? Ik ben nu een poging aan het doen de code om te schrijven naar char* en char arrays maar dan loop ik tegen het probleem aan dat je een array niet kan returnen en het combineren(concatenation) van chars een stuk lastiger is dan Strings.
Ik heb de code even naar Github gepust:
De master branch heeft het probleem dat de json url "GET /json.htm?type=command¶m=udevice&idx=&nvalue=0&svalue=20.20;52.00;0;1031.48;1" te lang is. Hij maakt er dan "ram=udevice&idx=&nvalue=0&svalue=20.20;52.00;0;1031.48;1" wat een 400 Bad Request oplevert. Daardoor kwam ik dus achter het probleem met Arduino's en Strings.
De branch No-Strings is mijn poging tot het ontlopen van Strings alleen gaat het wel flink boven mijn pet. Ik programmeer normaal Java dus dit is wel even andere koek. Ik heb een poging gedaan alleen flipt de code op de strcat functions om de String concatenation (+) na te bootsen.
Ik denk zelf dat het iets te maken heeft met pointers.
Ik hoop dat de code duidelijk is, ik heb mijn best gedaan alles zo netjes mogelijk te houden, tips altijd welkom en als iemand wat pointers(ba dum tss
) kan geven wat betreft dit probleem, heel graag!
Uiteindelijk aardig lang verhaal, heb maar even kopjes gemaakt voor de tl;dr figuren
Kernvraag:
Hoe is jullie ervaring met Strings en een Arduino?
Achtergrondverhaal::
Ik ben bezig met code voor mijn Arduino based weerstation en het moet zo stabiel als een huis worden aangezien ik hem op het dak wil gaan plaatsen. Het weerstation stuurt de data naar Domoticz.
Ik heb al even wat research gedaan en kom dan bijvoorbeeld op dit artikel uit waar de memory problems met Strings worden blootgelegd.
Hoe is dit in de praktijk en hoe kan je Strings vermijden? Ik ben nu een poging aan het doen de code om te schrijven naar char* en char arrays maar dan loop ik tegen het probleem aan dat je een array niet kan returnen en het combineren(concatenation) van chars een stuk lastiger is dan Strings.
Ik heb de code even naar Github gepust:
De master branch heeft het probleem dat de json url "GET /json.htm?type=command¶m=udevice&idx=&nvalue=0&svalue=20.20;52.00;0;1031.48;1" te lang is. Hij maakt er dan "ram=udevice&idx=&nvalue=0&svalue=20.20;52.00;0;1031.48;1" wat een 400 Bad Request oplevert. Daardoor kwam ik dus achter het probleem met Arduino's en Strings.
De branch No-Strings is mijn poging tot het ontlopen van Strings alleen gaat het wel flink boven mijn pet. Ik programmeer normaal Java dus dit is wel even andere koek. Ik heb een poging gedaan alleen flipt de code op de strcat functions om de String concatenation (+) na te bootsen.
Ik denk zelf dat het iets te maken heeft met pointers.
Ik hoop dat de code duidelijk is, ik heb mijn best gedaan alles zo netjes mogelijk te houden, tips altijd welkom en als iemand wat pointers(ba dum tss
Uiteindelijk aardig lang verhaal, heb maar even kopjes gemaakt voor de tl;dr figuren
Je danger pit bit is heap fragmentatie. Door de malloc/free cycles loop je hoe dan ook tegen problemen aan als je arduino langere tijd draait. Arduino kent geen luxe dingen als garbage collect of memory reallocation. Daarom is het handig dingen op de stack te doen. Reserveer een buffer in de aanroepende functie en vul deze in de functie zelf met bijvoorbeeld sprintf() / strncat(). Keep it simple.
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Ik had gelezen dat het niet verstandig wat om teveel code in de interrupt te zetten. Is het noodzakelijk dat de berekening perse in de loop komen ipv in mijn sketch hierboven in de interrupt? Of Is het zo weinig code dat het niet veel uitmaakt?
delays en serieel printen in een interrupt zijn not done. Dit zou ik dus op een andere manier oplossen.Delchrys schreef op donderdag 10 december 2015 @ 12:43:
Ik had gelezen dat het niet verstandig wat om teveel code in de interrupt te zetten. Is het noodzakelijk dat de berekening perse in de loop komen ipv in mijn sketch hierboven in de interrupt? Of Is het zo weinig code dat het niet veel uitmaakt?
Voor strings gebruik ik de PString lib, lekker makkelijk:wilmardo schreef op donderdag 10 december 2015 @ 00:20:
Hoe is jullie ervaring met Strings en een Arduino?
http://arduiniana.org/libraries/pstring/
En strings zoals dit uit je code:
code:
1
2
| Serial.println("Error reading BMP180"); sendLog("Error reading BMP180"); |
Moet je zo schrijven, dan gaat het je flashgeheugen in in plaats van je schaarse RAM:
code:
1
2
| Serial.println(F("Error reading BMP180")); sendLog(F("Error reading BMP180")); |
Dus een extra F( ) om de string heen.
(Al weet ik zo 1-2-3 niet of sendLog(F("string")) ook geaccepteerd word, maar dat merk je vanzelf.
[ Voor 79% gewijzigd door AllesKan op 10-12-2015 16:32 ]
Kan ik dan beter de interrupt iets High laten gaan en dan in de loop een IF HGH statement maken?
Dat is inderdaad een veelgebruikte constructie ja.
Bedankt voor de reacties! 
Of moet je de pointer naar het eerste element van de array meegeven aan de functie?
Het schrijven naar het flashgeheugen heb ik geprobeerd alleen klaagt de compiler dan over een "
error: __c causes a section type conflict" en dat komt waarschijnlijk door de PROGMEM variables. Ik moet nog even uitproberen wat de meeste winst oplevert, de PROGMEM variables of alle println's naar het flashgeheugen. Alle println's zal ik er bij de release sowieso uithalen, het is nu voor het debuggen alleen wel makkelijk.
Even de sendLog(F("string")); geprobeerd maar dat vind ie niet leuk: "cannot convert 'const __FlashStringHelper*' to 'char*' for argument '1' to 'void sendLog(char*)'"
Dat zou dan zoiets worden? (even uit losse pols)RobV schreef op donderdag 10 december 2015 @ 05:53:
Je danger pit bit is heap fragmentatie. Door de malloc/free cycles loop je hoe dan ook tegen problemen aan als je arduino langere tijd draait. Arduino kent geen luxe dingen als garbage collect of memory reallocation. Daarom is het handig dingen op de stack te doen. Reserveer een buffer in de aanroepende functie en vul deze in de functie zelf met bijvoorbeeld sprintf() / strncat(). Keep it simple.
code:
1
2
3
4
5
6
7
8
9
| void function1() { char[] buffer; function(buffer); Serial.println(buffer); //prints test? } void function2(char[] buffer) { strcat(buffer, "test"); } |
Of moet je de pointer naar het eerste element van de array meegeven aan de functie?
code:
1
2
3
| void function2(char *buffer) { strcat(buffer, "test"); } |
Bedankt voor de library ziet er interessant uit, hoe zijn je ervaringen met de library en langdraaiende code?AllesKan schreef op donderdag 10 december 2015 @ 15:17:
[...]
Voor strings gebruik ik de PString lib, lekker makkelijk:
http://arduiniana.org/libraries/pstring/
En strings zoals dit uit je code:
code:
1 2 Serial.println("Error reading BMP180"); sendLog("Error reading BMP180");
Moet je zo schrijven, dan gaat het je flashgeheugen in in plaats van je schaarse RAM:
code:
1 2 Serial.println(F("Error reading BMP180")); sendLog(F("Error reading BMP180"));
Dus een extra F( ) om de string heen.
(Al weet ik zo 1-2-3 niet of sendLog(F("string")) ook geaccepteerd word, maar dat merk je vanzelf.)
Het schrijven naar het flashgeheugen heb ik geprobeerd alleen klaagt de compiler dan over een "
error: __c causes a section type conflict" en dat komt waarschijnlijk door de PROGMEM variables. Ik moet nog even uitproberen wat de meeste winst oplevert, de PROGMEM variables of alle println's naar het flashgeheugen. Alle println's zal ik er bij de release sowieso uithalen, het is nu voor het debuggen alleen wel makkelijk.
Even de sendLog(F("string")); geprobeerd maar dat vind ie niet leuk: "cannot convert 'const __FlashStringHelper*' to 'char*' for argument '1' to 'void sendLog(char*)'"
De library is feitelijk alleen maar een tooltje om char arrays wat handelbaarder te maken, dus daar is niks mis mee.wilmardo schreef op donderdag 10 december 2015 @ 19:19:
hoe zijn je ervaringen met de library en langdraaiende code?
Overigens al aan een watchdogtimer gedacht? http://www.nongnu.org/avr...group__avr__watchdog.html
Die start je aan het begin van het programma met een bepaalde tijdsmaximum, en dan zorg je in je software dat die timer met wdt.reset(); altijd binnen die tijd gereset wordt. Hangt je arduino dan ergens door dan gebeurt dat resetten niet, en reboot de meuk vanzelf.
Prima.code:
1 2 3 4 5 6 7 8 9 void function1() { char[] buffer; function(buffer); Serial.println(buffer); //prints test? } void function2(char[] buffer) { strcat(buffer, "test"); }
Of moet je de pointer naar het eerste element van de array meegeven aan de functie?
code:
1 2 3 void function2(char *buffer) { strcat(buffer, "test"); }
Pointer of array is niet zo belangrijk, (onderliggend toch hetzelfde) maar je moet wél je buffer een grootte meegeven:
code:
1
2
3
4
| void function1() { char buffer[256]; //allocate buffer function(buffer); } |
[ Voor 19% gewijzigd door RobV op 10-12-2015 20:08 ]
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Vandaag mijn Nextion 2.4 aangekregen, nu nog eens bedenken wat ik ermee gaan doen.
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Nog iemand tips bij de benoemingen van de diverse integers en floats? En Btw de serial.Print gebruik ik nu alleen voor de debugging. Straks gaat dat er allemaal uit
Verwijderd
De 1.6.6 IDE stopt bij het laden en de text 'Loading configuration...' op het splashscreen. Dat gebeurt bij de installer-versie en de zip waarvoor geen admin-rechten nodig zijn. Wat Google-fu levert niet echt een bekend probleem op.
Heeft iemand een idee?
Heeft iemand een idee?
1.6.5 gebruiken?
Geen grap. Ik hoor heel veel klachten over 1.6.6.
Geen grap. Ik hoor heel veel klachten over 1.6.6.
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Iemand ervaring met het instellen van een startupscreen (icm met Arduino + 0,96" Oled LCD) met de Digole serial libray?
ehhhh..HOI
Ik probeerde mijn tiny te laten werken maar bij upload stopt ie hier ook op - op zowel OSX als Windows.
Codeblender op de chromium herkent helemaal niet
Codeblender op de chromium herkent helemaal niet
franssie.bsky.social | 🎸 Niets is zo permanent als een tijdelijke oplossing | Een goed probleem komt nooit alleen | Gibson guitar Fender Guitar God Damn Guitar
Ik heb de code nog een stukje aangepast. Zo worden pulsen met een interval van 2sec. afgekeurd en alle code verschoven uit de interrupt naar de main loop. De code loopt wel goed, alleen zie ik af en toe nog hele hoge onverklaarbare pieken. Ik denk valse pulsen. Hoe kan ik hier het beste achter komen, of oplossen? Nu werkt mijn tcrt5000 goed op de plek waar hij nu zit, zou ik door middel van afstelling ik hem nog beter kunnen krijgen of zou ik een andere weerstandswaarde kunnen nemen om een beter onderscheid te kunnen maken in de pulsen? Iemand nog ideeën?
Heb nu de tcrt5000 aangesloten op 5v en met een 10k potmeter zodat ik wat kan afstellen.
Heb nu de tcrt5000 aangesloten op 5v en met een 10k potmeter zodat ik wat kan afstellen.
Tijdens mijn eerste simpele experimenten met de Arduino Nano loop ik tegen een probleempje met onderstaande code aan. Ik wil een RGB led aansturen met PWM, afhankelijk van de weerstand van een pot.
Simpel voor 1 led, maar voor de 3 kleuren van de RGB heb ik dat blauw prima kan dimmen, maar dat groen en blauw alleen een aan/uit hebben via de pot.
Ben al van alles wezen proberen in de code,maar ik zie ff niet wat er verkeerd gaat. Iemand een suggestie?
Simpel voor 1 led, maar voor de 3 kleuren van de RGB heb ik dat blauw prima kan dimmen, maar dat groen en blauw alleen een aan/uit hebben via de pot.
Ben al van alles wezen proberen in de code,maar ik zie ff niet wat er verkeerd gaat. Iemand een suggestie?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| const int analogInPinR = A2; const int analogInPinG = A4; const int analogInPinB = A6; int Rout = 6; int Gout = 4; int Bout = 2; int sensorValueR = 0; int sensorValueG = 0; int sensorValueB = 0; int outputValueR = 0; int outputValueG = 0; int outputValueB = 0; void setup() { Serial.begin(9600); } void loop() { sensorValueR = analogRead(analogInPinR); outputValueR = map(sensorValueR, 0, 1023, 0, 255); analogWrite(Rout, outputValueR); delay(3); sensorValueG = analogRead(analogInPinG); outputValueG = map(sensorValueG, 0, 1023, 0, 255); analogWrite(Gout, outputValueG); delay(3); sensorValueB = analogRead(analogInPinB); outputValueB = map(sensorValueB, 0, 1023, 0, 255); analogWrite(Bout, outputValueB); delay(3); } |
Wat zijn de weerstandwaardes van je pot, en van je spanningsdeler? Zijn deze sowieso gelijk voor je 3 circuitjes?
Pin 2 en 4 hebben geen PWM op de Nano.Eagle19 schreef op maandag 14 december 2015 @ 22:27:
Ben al van alles wezen proberen in de code,maar ik zie ff niet wat er verkeerd gaat. Iemand een suggestie?
code:
1 2 3 int Rout = 6; int Gout = 4; int Bout = 2;
[ Voor 12% gewijzigd door AllesKan op 14-12-2015 22:51 ]
Top, zo simpel kan het dus zijn!
Ik was in de veronderstelling dat alle digitale pinnen PWM hadden.. Thnx!
Ik was in de veronderstelling dat alle digitale pinnen PWM hadden.. Thnx!
Als je dan toch bezig bent:Eagle19 schreef op maandag 14 december 2015 @ 22:59:
Top, zo simpel kan het dus zijn!![]()
Ik was in de veronderstelling dat alle digitale pinnen PWM hadden.. Thnx!
code:
1
| outputValueR = map(sensorValueR, 0, 1023, 0, 255); |
is hetzelfde als (sneller en neemt minder geheugen in beslag):
code:
1
| outputValueR = sensorValueR / 4; |
Waarmee dit geheel:
code:
1
2
3
| sensorValueR = analogRead(analogInPinR); outputValueR = map(sensorValueR, 0, 1023, 0, 255); analogWrite(Rout, outputValueR); |
dus versimpeld kan worden naar dit:
code:
1
| analogWrite(Rout, analogRead(analogInPinR) / 4); |
Niet helemaal correctAllesKan schreef op maandag 14 december 2015 @ 23:08:
[...]
Als je dan toch bezig bent:
code:
1 outputValueR = map(sensorValueR, 0, 1023, 0, 255);
is hetzelfde als (sneller en neemt minder geheugen in beslag):
code:
1 outputValueR = sensorValueR / 4;
[...]
1023 / 4 ≠ 255
Jawel.
Je gaat van 0 - 1023 (1024 mogelijkheden) naar 0 - 255 (256 mogelijkheden)
1024 / 256 = 4
En je werkt met integers, dus cijfers achter de komma ben je kwijt.
Probeer maar:
code:
1
2
3
4
5
6
7
8
9
10
| void setup() { Serial.begin(115200); } void loop() { int i = 1023; i /= 4; Serial.println(i); delay(1000); } |
[ Voor 19% gewijzigd door AllesKan op 15-12-2015 14:59 ]
Vandaag mij 3d geprinte Arduino nano mount/case voor een project binnen gekregen van Shapeways. Afwerking is super en de mount/case is echt perfect. Alle aansluitingen blijven gewoon bereikbaar door diverse openingen.
ehhhh..HOI
Heb je een fotootje?
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Nu op kantoor, zal kijken of ik dat vanavond kan fixen....RobV schreef op donderdag 17 december 2015 @ 12:15:
Heb je een fotootje?
ehhhh..HOI
Het printen van een functie die floats returnt lukt niet al te goed, googlen levert niets op voor dit probleem. Weet iemand wat ik verkeerd doe? De functie die direct floats teruggeeft doet het, maar de functie die capaciteit meet lijkt altijd meer te returnen als je 'm direct print dan als je de waarde eerst meet en dan print. Misschien dat serieel printen de meting stoort, bedenk ik me nu?
Update: het komt doordat de eerste keer dat je meet de meting hoog is, de vele keren daarna in dezelfde loop leveren een lage waarde op. Heb het probleem opgelost door 500x te meten, deze metingen in een array te stoppen, deze te sorteren, en de middelste te nemen.
Update: het komt doordat de eerste keer dat je meet de meting hoog is, de vele keren daarna in dezelfde loop leveren een lage waarde op. Heb het probleem opgelost door 500x te meten, deze metingen in een array te stoppen, deze te sorteren, en de middelste te nemen.
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
| void setup() { // put your setup code here, to run once: Serial.begin(115200); } const int OUT_PIN = A0; const int IN_PIN = A1; const float R_PULLUP = 30.0; //in k ohms, its officially 30k but not in practice const int MAX_ADC_VALUE = 1023; //if the ADC is more accurate we can get more precise results, not really needed though const float IN_STRAY_CAP_TO_GND = 24.48; const float IN_CAP_TO_GND = IN_STRAY_CAP_TO_GND; int intvalue; float floatvalue; void loop() { Serial.print("print the floatfunction:"); Serial.println( measureCapLow() ); floatvalue = measureCapLow(); Serial.print("print the float:"); Serial.println( floatvalue ); Serial.print("print the const floatfunction:"); Serial.println( returnsfloat() ); floatvalue = returnsfloat(); Serial.println( floatvalue ); delay(1000); } float returnsfloat() { if (millis() % 3 == 0) return (float)1000 / 3; else if (millis() % 3 == 1) { float res = 1000 / 3; return res; } else if (millis() % 3 == 2) return 333.33; } float measureCapLow() { // this code is from http://wordpress.codewrite.co.uk/pic/2014/01/21/cap-meter-with-arduino-uno/ //Capacitor under test between OUT_PIN and IN_PIN //Rising high edge on OUT_PIN //what is happening: input to ground has a stray capacitance, about 30pF //when you apply a voltage to the Ctest, (outpin=high) //these two capacitors create a voltage divider //we then read this voltage with analogread pinMode(IN_PIN, INPUT); digitalWrite(OUT_PIN, HIGH); int val = analogRead(IN_PIN); digitalWrite(OUT_PIN, LOW); if (val < 1000) //Low value capacitor { pinMode(IN_PIN, OUTPUT); //Clear everything for next measurement float capacitance = ( (float)val * IN_CAP_TO_GND / (float)(MAX_ADC_VALUE - val) //Calculate capacitance ); return capacitance; } else { return 0; } } |
[ Voor 5% gewijzigd door Pruimenvlaai op 18-12-2015 16:24 ]
Verwijderd
Wat zijn leuke elektrische onderdelen om te bestellen voor een Arduino? Ik heb al een berg IC's (555 en shift registers), segmented LED's, losse componenten, een motor shield en diverse motoren en meer. Nog tips?
Is gewoon middelen niet sneller? Of is er een goede reden dat je dat niet doet?Pruimenvlaai schreef op vrijdag 18 december 2015 @ 15:13:
Update: het komt doordat de eerste keer dat je meet de meting hoog is, de vele keren daarna in dezelfde loop leveren een lage waarde op. Heb het probleem opgelost door 500x te meten, deze metingen in een array te stoppen, deze te sorteren, en de middelste te nemen.
[ Voor 52% gewijzigd door Verwijderd op 20-12-2015 14:59 ]
Vergeet ook servo's niet, i2c lcd's, vochtigheidsmeters, CO2-sensors niet!Verwijderd schreef op zondag 20 december 2015 @ 14:58:
Wat zijn leuke elektrische onderdelen om te bestellen voor een Arduino? Ik heb al een berg IC's (555 en shift registers), segmented LED's, losse componenten, een motor shield en diverse motoren en meer. Nog tips?
[...]
Is gewoon middelen niet sneller? Of is er een goede reden dat je dat niet doet?
Ik middel niet omdat de data best wel eens skewed kan zijn naar een kant, wat in de median geen probleem is, en toch vooral de hoogste piek in het datalandschap interessant is. Dan kan nog steeds een lowpass eroverheen met iets als globalMeasurement = 0.01*measureCapLow(); maar zo is het al smooth genoeg.
Ik gebruik deze code overigens met 2 messen parallel aan elkaar met 1 cm ertussen (messen zijn geisoleerd met krimpkous) in potgrond om de vochtigheid van aarde te meten, wat zou moeten werken doordat de dieelektrische constante van aarde vele malen lager is dan die van water. Het werkt helaas voor geen meter
Oops, ik was bijna het nut van arrays vergeten.
Veel parallele variabelen die hetzelfde soort data opslaan met 1 functie kunnen bewerken, door alleen de positie in de array te veranderen.
Ben bezig met een test-apparaat om gerecyclede 18650 cellen te testen op Ri en capaciteit.
Programmacode wordt geheel modulair en met een zooitje #defines bovenaan instelbaar, dan hebben andere mensen dr misschien ook iets aan. Kan in principe tot 16 batterijen tegelijk testen (Mega) of 8 voor de Uno..
Nou alleen nog ff wat componentjes verzamelen om het circuit af te bouwen, ik twijfel vooral aan m'n batterijhouders, denk dat ik daar ff wat beters voor moet verzinnen..
En voldoende reverse polarity protection, heb al een aantal van die oplaad-chips doorgebrand door de cellen achterstevoren in de houder te drukken, dat wil ik bij m'n Arduino voorkomen..
Ben bezig met een test-apparaat om gerecyclede 18650 cellen te testen op Ri en capaciteit.
Programmacode wordt geheel modulair en met een zooitje #defines bovenaan instelbaar, dan hebben andere mensen dr misschien ook iets aan. Kan in principe tot 16 batterijen tegelijk testen (Mega) of 8 voor de Uno..
Nou alleen nog ff wat componentjes verzamelen om het circuit af te bouwen, ik twijfel vooral aan m'n batterijhouders, denk dat ik daar ff wat beters voor moet verzinnen..
En voldoende reverse polarity protection, heb al een aantal van die oplaad-chips doorgebrand door de cellen achterstevoren in de houder te drukken, dat wil ik bij m'n Arduino voorkomen..
What the heck. Lekker fool proof zeg die Arduino pro micro's 
Ik dacht even lui te zijn en er een met USB te halen zodat ik geen ISP flash hoef te doen. Eén dingetje in de code verkeerd en hij kapt er mee
. Nu moet ik alsnog met een ISP flash aan de gang
.
[edit]
Ahh, resetten tijdens flashen werkt ook. Schrijft arduino software zelf wat firmware erbij om te reageren op de reset-on-flash ofzo?

Ik dacht even lui te zijn en er een met USB te halen zodat ik geen ISP flash hoef te doen. Eén dingetje in de code verkeerd en hij kapt er mee

[edit]
Ahh, resetten tijdens flashen werkt ook. Schrijft arduino software zelf wat firmware erbij om te reageren op de reset-on-flash ofzo?
[ Voor 21% gewijzigd door LED-Maniak op 24-12-2015 18:26 ]
Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.
Verwijderd
Als dat ene dingetje het verkeerd zetten/locken van je fuses is dan houdt het inderdaad snel opLED-Maniak schreef op donderdag 24 december 2015 @ 18:25:
Ik dacht even lui te zijn en er een met USB te halen zodat ik geen ISP flash hoef te doen. Eén dingetje in de code verkeerd en hij kapt er mee. Nu moet ik alsnog met een ISP flash aan de gang
.
Told you so...LED-Maniak schreef op donderdag 24 december 2015 @ 18:25:
What the heck. Lekker fool proof zeg die Arduino pro micro's
Pizza_Boom in "[Discussie] Arduino-topic"
haha inderdaad. Toppertje. Ik ben benieuwd wat er achter de schermen gebeurt en waarom hij dan zo reageert..
* LED-Maniak gaat verder met zijn autoradio moderniseren
* LED-Maniak gaat verder met zijn autoradio moderniseren
Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.
Het punt is, gok ik, dat je direct in de uitvoerende laag zit, terwijl je bij een uno oid in een tussenlaag aan het wroeten bent. Dat levert meer efficiëntie en snelheid in de uitvoering op, maar ook kwetsbaarheid. As de ch chip op de uno het niet snapt, doet ie niets richting ATmega, als de 32u4 t niet snapt, staat ie vast.LED-Maniak schreef op donderdag 24 december 2015 @ 18:30:
haha inderdaad. Toppertje. Ik ben benieuwd wat er achter de schermen gebeurt en waarom hij dan zo reageert..
* LED-Maniak gaat verder met zijn autoradio moderniseren
Pro Micro? 32u4? Ja, dan klopt het. uSB port is virtual, dus je moet hem resetten om de bootloader te activeren
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Met kerst de Arduino starter kit gekregen (banggood, dus zonder manual blijkbaar), echter zoek ik een paar leuke projecten om te bouwen.
Jullie wat tips om bouwende te leren hoe eea werkt?
..
Heb deze werkend gekregen. Aantal op die site zijn nogal uitgebreid om mee te beginnen...
Jullie wat tips om bouwende te leren hoe eea werkt?
Heb deze werkend gekregen. Aantal op die site zijn nogal uitgebreid om mee te beginnen...
[ Voor 33% gewijzigd door Tortelli op 30-12-2015 19:50 ]
Verwijderd
Een bepaalde digitale input pin op mijn Arduino krijgt pulsen van 5V. Nu wil ik met mijn Arduino meten hoeveel pulsen (rising edges) dat per seconde zijn. Hoe krijg ik dat voor elkaar? Je kan natuurlijk een rising edge laten detecteren en dan een tellertje laten optellen, maar hoe snel sampled de Arduino die digitale pin dan? Want de loop() gaat in feite zo snel als ie kan, maar dat is natuurlijk afhankelijk van de hoeveelheid CPU-time je nodig hebt.
Waarom maak je geen gebruik van interrupts? Telkens als er een puls komt teller laten verhogen in interrupt routine. Als er een minuut verstreken is dat aantal laten weergeven en de pulsteller resetten.
After the first glass you see things as you wish they were. After the second you see things as they are not. Finally you see things as they really are, and that is the most horrible thing in the world...
Oscar Wilde