13 Replies Latest reply on Aug 4, 2016 8:04 AM by userc_41477

    Mac address

       Hello All;


      Hope you all doing good!


      I'm planning to buy Mac address for my PSoC 4 BLE IC, because in my application 50 units connected to 1 dongle. At dongle side I want to identify the data,meaning want to know which unit is sending that data!


      Where can i buy this Mac address? Is it from IEEE or is it a good idea to buy MAXIM EPROM contains Mac adress?




      Please advice, thank you!







        • 1. Re: Mac address

          There could be a chance you do not need that at all. There is an unique ID scheme when you check the "Silicon generated part of device address". Datasheet states


          Silicon generated “Company assigned” part of device address
          When checked, the “Company assigned” part of the device address is generated using the wafer ID and X-Y die location on the wafer.


          Probably needs some more information, I'll try to get some.





          • 2. Re: Mac address

             Hi Bob;


            Thnak you for your reply!


            When i check with cypress FAE, he said PSoC 4 BLE is not having inbuilt MID( Manufacture ID)







            • 3. Re: Mac address

              I just sent an email to one of my Cypress contacts asking to reply to your thread, might take some time since at their location is late afternoon.





              • 4. Re: Mac address

                 The MID was not a unique die/device ID -




                Following registers would provide a unique ID for every PSoC 3 device (Refer to PSoC 3 Registers TRM):     



                FLSHID_CUST_TABLES_Y_LOC (0xC0100) - Y coordinate in Wafer     



                FLSHID_CUST_TABLES_X_LOC  (0xC0101) - X coordinate in Wafer     



                FLSHID_CUST_TABLES_WAFER_NUM (0xC0102) - Wafer No     



                FLSHID_CUST_TABLES_LOT_LSB: 0xC0103 - LOT number (LSB)     



                FLSHID_CUST_TABLES_LOT_MSB: 0xC0104 - LOT number (MSB)     



                FLSHID_CUST_TABLES_WRK_WK: 0xC0105 - Work Week of Manufacturing     



                FLSHID_CUST_TABLES_FAB_YR: 0xC0106 - Fab ID & Year of Manufacturing.     








                But the only drawback of this is that "Year of Manufacturing" parameter is only from 0 to 9. So a chip manufactured on 2013 and 2023 will have the same year number.







                Also in PSOC 5LP, but not in PSOC 4 Register TRM, so appears not to be implemented in NVL latches PSOC 4.




                Regards, Dana.

                • 5. Re: Mac address

                  These two threads may provide additional help -








                  http://www.cypress.com/?app=forum&id=2492&rID=74915     Device ID stuff


                  http://www.cypress.com/?app=forum&id=2492&rID=74916     Device ID stuff






                  Regards, Dana.

                  • 6. Re: Mac address

                     Hi Bob;


                    Thank you! waiting for your updates!

                        Hi Dabaknight;   
                        Thanks for the info shared!   
                    • 7. Re: Mac address

                       Sorry danaaknight* typo error

                      • 8. Re: Mac address

                        Glad to assist.




                        Regards, Dana.

                        • 9. Re: Mac address

                           Hi All!


                          Good Day!


                          In BLE component data sheet(page 30) i found the following


                          Public device address (Company ID – Company assigned)


                          This is a unique 48-bit Bluetooth public address that is used to identify the device. It is divided into the following two parts:


                           “Company ID” part is contained in the 24 most significant bits. It is a 24-bit Organization Unique Identifier (OUI) address assigned by IEEE.


                           “Company assigned” part is contained in the 24 least significant bits.


                          The address configured here is static and is designed to be used for development purposes only. This address is programmed into the device via the SWD interface. Normally this address must be programmed only once during mass production, and then never changed in-field. However, user flash can be reprogrammed in-field many times. During prototyping (FW design), this address can be programmed using MiniProg3. For that you can use the application installed in the “./Example/Misc/PSoC4-BLE-SFLASH-Update” folder of PSoC Programmer. This application is provided in source code, and can be used as a reference example for implementation in production programmers.


                          Silicon generated “Company assigned” part of device address


                          When checked, the “Company assigned” part of the device address is generated using the wafer ID and X-Y die location on the wafer.




                          Any body use this before?





                          • 10. Re: Mac address

                             If the option for Silicon generated "Company assigned" part of device address is checked, you can change the company ID in the BLE component, but the company assigned is automatically picked up from the device (depending on the silicon). You cannot change it from GUI but can change it in firmware.







                            When you uncheck the option for Silicon generated "Company assigned" part of device address, you can change the company ID and company assigned but the hex file needs to be different for mass production. If the same hex file with same company assigned value are flashed to different devices, they will advertise with the same silicon ID and the client may be unable to identify them.   

                            Also, have a look at: Project #029: Supervisory Flash on PSoC 4 BLE



                            • 11. Re: Mac address

                              Cypress answered separately to my question:




                              Each BLE device has a public device address, which is stored in SFlash and can be read and wrote in firmware or software tool.

                              Checking 'Silicon generated part of device address' will generate a random address. For a small amount of devices, such as in development stage, this can make a unique address for each device.
                              But for a large amount of devices, this method can't ensure uniqueness. The reason is Wafer ID and X/Y coordinate are not designed for unique.

                              Please read page 30(public device address) of BLE component datasheet. It mentions a tool called 'PSoC4-BLE-SFLASH-Update', it can change the device address with your own algorithm to ensure address is unique.







                              Hope that helps to clarify the situation



                              1 of 1 people found this helpful
                              • 12. Re: Mac address

                                 Hi Bob,BMAH,danaaknight,




                                Thank you for your support, i got enough to move forward!







                                • 13. Re: Mac address

                                  Hi All,


                                  I want to build a Beacon with Raspbarry Pi and usb Bluetooth , do you know how can I have my own Mac address? because it uses the usb Mac address as the new Beacon mac address.