MunteanLab / mouseduino

Files for Rotarod
1 stars 3 forks source link

Questions about electronics design #2

Open amchagas opened 4 months ago

amchagas commented 4 months ago

Hi there!

Thanks for putting together this whole device and for writing up the publication in eNeuro! I work at the University of Sussex in the UK and we are starting to replicate the design for Catherine Hall's lab.

One of the things we thought about implementing was a printed circuit board for the system, so that it is easier to replicate it, and also because it takes care of potential wiring coming loose off breadboards, etc...

For that, I created a fork of your repository to work on designing and testing the PCB before making a contribution back to this repo... Our initial idea is to copy what you have in the paper one to one, as in have a PCB for the Arduino Mega and a PCB for the Uno. In the process I came up with the following questions, I hope you don't mind:

1- The digital lines for the RGB LEDs seem to have "jumps" between the channels, for example in RGB LED1 the lines are 34,36 and 37. Is there any particular reason you did not use 34,35 and 36? I could not find pin 35 being used for anything else... This is not critical, but I was just curious about why things were implemented this way? 2- Any particular reason you are using an arduino Uno for the infrared detectors? I mean why not simply use the arduino Mega with it?

Thanks in advance for your time!

MunteanLab commented 4 months ago

Good morning Mr. Chagas,

Thank you for your interest in our publication and sorry for the delayed response, it has been hectic! I'm excited that you and your lab may find this development helpful! We thought about implementing a PCB board for our design in the later phases of our project, so it would be wonderful if you happened to implement this for yours. Please do send over if you happen to make it! For your questions:

1- Like you said, I don't believe there is a reason we jumped to pin 35, we just happened to do that. 2- So the reason we used the Arduino Uno for the infrared detector for a few reasons. 1) I believe we were running low on pins. 2) Wiring was a little cleaner because there were already so many wires coming out of the Arduino Mega. 3) I think it was easier to code and bypassed issues of trying to do multiple things like reading/processing voltage through digital lowpass filters with our Arduino Mega code (this was the main reason). Based on the the structure of our code for the Arduino Mega, it would have just been harder to integrate. 3- Yes! So our original models used capacitors and resistors, but they did not seem to be effective, so our solution was to just use the Arduino UNO and a digital lowpass filter. I've attached old copies of my lab book where you can see us using pulldown resistors and capacitors.

One thing I'll note, is the biggest flaw in our prototype is the tube used to rotate the rotarod. We ended up just glueing/taping the two ends of a tube, but this can sometimes come undone. We are still trying to find a way to get a custom continuous tube for our design. Please let me know if you have any additional questions or concerns, I'd be happy to help. And let me know how the fabrication of our prototype goes!

Thanks,

Josephine Widjaja

On Thu, Feb 8, 2024 at 4:12 AM Andre Maia Chagas @.***> wrote:

Hi there!

Thanks for putting together this whole device and for writing up the publication in eNeuro! I work at the University of Sussex in the UK and we are starting to replicate the design for Catherine Hall's lab.

One of the things we thought about implementing was a printed circuit board for the system, so that it is easier to replicate it, and also because it takes care of potential wiring coming loose off breadboards, etc...

For that, I created a fork of your repository to work on designing and testing the PCB before making a contribution back to this repo... Our initial idea is to copy what you have in the paper one to one, as in have a PCB for the Arduino Mega and a PCB for the Uno. In the process I came up with the following questions, I hope you don't mind:

1- The digital lines for the RGB LEDs seem to have "jumps" between the channels, for example in RGB LED1 the lines are 34,36 and 37. Is there any particular reason you did not use 34,35 and 36? I could not find pin 35 being used for anything else... This is not critical, but I was just curious about why things were implemented this way? 2- Any particular reason you are using an arduino Uno for the infrared detectors? I mean why not simply use the arduino Mega with it? 3 - Still on the sensors, I did not see any pull down resistors being used for the sensors, is there any particular reason for this? The reason I ask is that there is mention on the manuscript text that you need to implement a software filter to avoid noisy voltage signals... I wonder if this is related to the lack of said pull down resistors?

Thanks in advance for your time!

— Reply to this email directly, view it on GitHub https://github.com/MunteanLab/mouseduino/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/A5LGEMXNWICIFNFGV4MFVP3YSSJHFAVCNFSM6AAAAABC7LR2MKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEZDINRXG4YTONI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

MunteanLab commented 4 months ago

Oh I forgot to add the attachments...

On Wed, Feb 14, 2024 at 10:07 AM Josephine Widjaja @.***> wrote:

Good morning Mr. Chagas,

Thank you for your interest in our publication and sorry for the delayed response, it has been hectic! I'm excited that you and your lab may find this development helpful! We thought about implementing a PCB board for our design in the later phases of our project, so it would be wonderful if you happened to implement this for yours. Please do send over if you happen to make it! For your questions:

1- Like you said, I don't believe there is a reason we jumped to pin 35, we just happened to do that. 2- So the reason we used the Arduino Uno for the infrared detector for a few reasons. 1) I believe we were running low on pins. 2) Wiring was a little cleaner because there were already so many wires coming out of the Arduino Mega. 3) I think it was easier to code and bypassed issues of trying to do multiple things like reading/processing voltage through digital lowpass filters with our Arduino Mega code (this was the main reason). Based on the the structure of our code for the Arduino Mega, it would have just been harder to integrate. 3- Yes! So our original models used capacitors and resistors, but they did not seem to be effective, so our solution was to just use the Arduino UNO and a digital lowpass filter. I've attached old copies of my lab book where you can see us using pulldown resistors and capacitors.

One thing I'll note, is the biggest flaw in our prototype is the tube used to rotate the rotarod. We ended up just glueing/taping the two ends of a tube, but this can sometimes come undone. We are still trying to find a way to get a custom continuous tube for our design. Please let me know if you have any additional questions or concerns, I'd be happy to help. And let me know how the fabrication of our prototype goes!

Thanks,

Josephine Widjaja

On Thu, Feb 8, 2024 at 4:12 AM Andre Maia Chagas @.***> wrote:

Hi there!

Thanks for putting together this whole device and for writing up the publication in eNeuro! I work at the University of Sussex in the UK and we are starting to replicate the design for Catherine Hall's lab.

One of the things we thought about implementing was a printed circuit board for the system, so that it is easier to replicate it, and also because it takes care of potential wiring coming loose off breadboards, etc...

For that, I created a fork of your repository to work on designing and testing the PCB before making a contribution back to this repo... Our initial idea is to copy what you have in the paper one to one, as in have a PCB for the Arduino Mega and a PCB for the Uno. In the process I came up with the following questions, I hope you don't mind:

1- The digital lines for the RGB LEDs seem to have "jumps" between the channels, for example in RGB LED1 the lines are 34,36 and 37. Is there any particular reason you did not use 34,35 and 36? I could not find pin 35 being used for anything else... This is not critical, but I was just curious about why things were implemented this way? 2- Any particular reason you are using an arduino Uno for the infrared detectors? I mean why not simply use the arduino Mega with it? 3 - Still on the sensors, I did not see any pull down resistors being used for the sensors, is there any particular reason for this? The reason I ask is that there is mention on the manuscript text that you need to implement a software filter to avoid noisy voltage signals... I wonder if this is related to the lack of said pull down resistors?

Thanks in advance for your time!

— Reply to this email directly, view it on GitHub https://github.com/MunteanLab/mouseduino/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/A5LGEMXNWICIFNFGV4MFVP3YSSJHFAVCNFSM6AAAAABC7LR2MKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEZDINRXG4YTONI . You are receiving this because you are subscribed to this thread.Message ID: @.***>