Is het mogelijk om bijvoorbeeld een Arduino UNO en een Arduino Mega met elkaar te verbinden via de bestaande USB poort van de Arduino-print.
Ik wil een uitleeskastje maken want ik moet nu steeds de laptop erbij nemen.

Met Google ben ik nog niet veel wijzer geworden. Hier alleen veel te vinden tussen I2C en RS232. Heeft iemand er ervaring mee?
Alvast bedankt.
Dirk.

Als één van de twee USB-on-the-go heeft (dus ook host kan zijn), dan kan het. Maar het is onnodig moeilijk doen. Er zijn vast simpelere methodes.

arduino heeft dat standaard niet.

de arduino uno en mega (de oude varianten) worden herkend als seriele poort.

dus het heeft geen zin om een usb te gebruiken, beide kunnen direct via de seriele poort praten.

wat moet je uitlezen? een simpel 2x16 karakter LCD kan via I2C met 2 draadjes.

Ipv. een extra arduino kan je de uitlezing toch ook direkt op de arduino zelf doen?

Op 2 oktober 2016 20:17:14 schreef Progger:
arduino heeft dat standaard niet.

de arduino uno en mega (de oude varianten) worden herkend als seriele poort.

dus het heeft geen zin om een usb te gebruiken, beide kunnen direct via de seriele poort praten.

wat moet je uitlezen? een simpel 2x16 karakter LCD kan via I2C met 2 draadjes.

Ik heb nu mbv een Arduino Mega wat douches die op tijd gestuurd kunnen worden (camping). Nu wil ik het aantal inschakelingen kunnen uitlezen en evt ook met dat aparte kastje de tijden kunnen veranderen. Het leek mij handig om de 2 bestaande USB aansluitingen dan te gebruiken.
Kan natuurlijk op elke besturing een display etc zetten maar dan moet dat 5 keer.

Kan toch ook via gewoon serieel? (Via een buffertje of bus driver, als je het netjes wilt doen of grotere afstanden wilt halen, en met iets van ESD protectie als je er ter plekke wat in wilt prikken.)

Op 2 oktober 2016 20:38:20 schreef Lucky Luke:
Kan toch ook via gewoon serieel? (Via een buffertje of bus driver, als je het netjes wilt doen of grotere afstanden wilt halen, en met iets van ESD protectie als je er ter plekke wat in wilt prikken.)

Klopt helemaal maar die USB aansluitingen zitten al op de Arduino's. Dus waarom wat bijbouwen.

De Uno en de Mega hebben geen mogelijkheid om als host te fungeren (ook geen usb on the go dus). Dat kan de usb chip niet. In theorie is dat een programmeerbare chip, dus wie weet kun je het er nog inbouwen, maar ik zou er niet aan beginnen.

Voor een seriële verbinding heb je geen hardware nodig. Kijk bijvoorbeeld hier of hier eens tussen.

Ik denk dat je doelt op de arduino waar een USB-atmel als seriele chip op zit. Die is welliswaar programmeerbaar, maar ook daar zit hardwarematig geen "on the go" op. Men doet daar moeilijk over, als in sommige chips worden aangeprezen als dat ze het wel hebben en anderen hebben wel USB maar geen onthego. Kortom, ik heb de indruk dat daar hardware-support voor nodig is.

En als ik in mijn nog te maken uitleeskastje een aparte USB aansluiting maak? Bijvoorbeeld met
http://www.banggood.com/ATTINY85-Mini-Usb-MCU-Development-Board-For-Ar…

Op 2 oktober 2016 20:40:18 schreef DKH:
[...]
Klopt helemaal maar die USB aansluitingen zitten al op de Arduino's. Dus waarom wat bijbouwen.

USB is (van oudsher) een host - device(*) protocol. Alleen hosts en devices kunnen met elkaar praten. Hosts kunnen niet onderling praten, en devices ook niet.

USB "on the go" spullen kunnen omschakelen tussen host en device mode. Dat is iets "van de laatste tijd" :) Veel smartphone's kunnen dat , bijvoorbeeld.

(*)Vroeguh werdt dit een "client-server" rolverdeling genoemd.

Er zijn ook Usb host shields waarmee het in principe zou moeten kunnen. Hiermee zou je 2 arduino's aan elkaar kunnen koppelen. Maar met alleen de hardware ben je er nog lang niet.
Maar wat wil je uitlezen en hoe vaak? Data of parameters.

[Bericht gewijzigd door 2N3055 op (23%)]

Jammer dat het niet zomaar gaat. Bedankt allemaal voor de antwoorden verklaart nu dus ook waarom ik met Google niets vond.

hoe handig ben je met programmeren?

dit zou een mooi klusje zijn voor een android smartphone (android 4.0+)
die hebben usb host en kunnen met FDTI omzetters overweg.

anders knal je er een serieel->485 converter op en lees je ze allemaal in 1x uit.

of een uart->bluetooth module erop prikken om hem uit te lezen.

ISP? Je draagbare kastje als host en de vaste als client?

met esp8266 moet dat toch te doen zijn

Moet dit perse via de USB-poort ?, deze zit namelijk ook gewoon aan de USART van je chip. Met andere woorden als je twee draadjes tussen je beide arduino's legt en gebruikt maakt van de Serial class kun je gewoon communiceren tussen beiden arduino's.

Ik heb zo'n vermoede dat je de USB connectie wilt gebruiken omdat je dan met behulp van Serial kan communiceren, maar dit kan dus ook zonder gebruik te maken van de USB poort. Leg een kabeltje van RX->TX en van TX->RX.

Ik heb nu mbv een Arduino Mega wat douches die op tijd gestuurd kunnen worden (camping). Nu wil ik het aantal inschakelingen kunnen uitlezen en evt ook met dat aparte kastje de tijden kunnen veranderen. Het leek mij handig om de 2 bestaande USB aansluitingen dan te gebruiken. Dan hoeven de kastjes niet meer open.
Ik ga nu idd de seriële poort naar buiten brengen.

Het lastig maar wel mogelijk, om via een usb poort te Comuniseren.
Alleen dat gaat alleen tussen een master en een slave poort. Een Arduino is altijd een slave, en een pc een master.
Er zijn usb bordtjes te koop die zo op bv een of een mega passen.
Dan wordt het een master. Dan zouw communicatie mogelik zijn.
Je kan ook gebruik maken van de seriële bus op tll nivo.
Of de i2c bus mits de afstand niet te groot wordt.
Of via wifi, maak zelf van een app op Android blink kan ook data terug koppelen.

Renske

Als je dat uitlees-kastje nou eens met een Raspberry Pi maakt, dan wordt het al een stuk makkelijker. Zal wel een redelijke batterij voeding vergen, maar dat zou mooi met een powerpack kunnen. TFT display eraan en klaar ben je... bijna dan want de software komt nog :-) Of wacht, dat zou gewoon via een seriële terminal kunnen.

Met USB zul je 1 chip slave en 1 chip master moeten maken. USB is niet echt een voor de hand liggende keuze voor inter-ic communicatie.
Beter serieel of netwerk nemen, stuk simpeler.

Op 24 juli 2019 22:59:29 schreef flipflop:
Als je dat uitlees-kastje nou eens met een Raspberry Pi maakt, dan wordt het al een stuk makkelijker. Zal wel een redelijke batterij voeding vergen, maar dat zou mooi met een powerpack kunnen. TFT display eraan en klaar ben je... bijna dan want de software komt nog :-) Of wacht, dat zou gewoon via een seriële terminal kunnen.

Dat heet dan een (onhandige )laptop, en dat heeft hij al ;)

Het is wel weer een oude koe, maar je kunt het makkelijk doen via de PC met een usb-serieel adapter. Ik gebruik alleen pic controllers in plaats van een Arduino, maar ik kan gewoon heen en weer babelen en variabelen aanpassen in de pic. Dat moet met een Arduino ook gaan.

Op 25 juli 2019 00:39:37 schreef Shiptronic:
Dat heet dan een (onhandige )laptop, en dat heeft hij al ;)

Oh shit, een oud topic. Renske foei.

ship, het hoeft geen onhandige laptop te zijn. Hangt er vanaf hoe ie het opbouwt. Alles netjes in een klein kastje, 2 drukknoppen erop voor programmeren en uitlezen. Klein TFT schermpje. Accu.
Maar wel eens, hoe vaak moet dit? Voor die paar keer is een laptop ook zo gek niet.