Paul_KD7HB:
Start with the first thing you wrote about and get it working. That is: "scan the magazine and count the rounds". Please expand your design for this. Then the other may be a bit easier to do.Paul
That part I'm not so concerned about. Essentially what the main box will look like is a small housing holding the arduino and any other components inside of it. From the outside you will see a small screen, a single indication/status led, and a momentary switch to control functions. Like I said it will mount to the right side of the handguard on a picatinny rail. The enclosure will be 3d printed. I will route some wires through the handguard down to another small box on the bottom side of the handguard holding an RFID transmitter. Each magazine will have an RFID chip placed inside it on the floorplate (Magpul PMAGS).
Also the way the registration will work is simple. Initially I will have to register the RFID chip with the system, and can use the button to select which size of magazine it is (10, 30, or 40 rounds). Then once its registered I can load the magazine, tell the system to go into "reload mode", scan it, and enter the amount of rounds in it currently. It will start at the maximum amount, and I can press the button to subtract rounds to get the proper initial amount. After I've done that, I exit reload mode, and its good to go. I scan the magazine on the bottom before inserting it so it knows a magazine is being inserted, and the screen shows how many rounds are available. Then everytime it senses a round being fired it subtracts one from the previous amount.
That is the part I'm not sure how to do. Would a 3 axis accelerometers be able to be used, where the Arduino would be able to go into, like a said, a learning mode where it records a specific impulse it feels from the firing of the gun and then looks for a similar force to know to register a shot as being fired? Or would a Shock sensor work better? I just don't have any experience working with these components so I'm not sure if what I'm looking to do is to far out in left field or not.